summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2022-10-20 01:11:57 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2022-10-20 13:36:26 +0300
commitcd5439fb97518d8bce0eb2af3f9562d6fd593acf (patch)
treec161f8f4c1f65d89c5a30f5613941e993aeb56b9
parent84ad104499d9efc0253dae1a60ee070ed375ad95 (diff)
apps: Move libevent dependency to src/apps/meson.build
libevent is a shared dependency between cam and lc-compliance, move it to src/apps/. The shared dependency will be used to condition compilation of source files in an upcoming application static library. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
-rw-r--r--src/apps/cam/meson.build4
-rw-r--r--src/apps/lc-compliance/meson.build3
-rw-r--r--src/apps/meson.build10
3 files changed, 12 insertions, 5 deletions
diff --git a/src/apps/cam/meson.build b/src/apps/cam/meson.build
index 06dbea06..4b6099dd 100644
--- a/src/apps/cam/meson.build
+++ b/src/apps/cam/meson.build
@@ -1,8 +1,6 @@
# SPDX-License-Identifier: CC0-1.0
-libevent = dependency('libevent_pthreads', required : get_option('cam'))
-
-if not libevent.found()
+if opt_cam.disabled() or not libevent.found()
cam_enabled = false
subdir_done()
endif
diff --git a/src/apps/lc-compliance/meson.build b/src/apps/lc-compliance/meson.build
index 8b57474b..05d622be 100644
--- a/src/apps/lc-compliance/meson.build
+++ b/src/apps/lc-compliance/meson.build
@@ -1,10 +1,9 @@
# SPDX-License-Identifier: CC0-1.0
-libevent = dependency('libevent_pthreads', required : get_option('lc-compliance'))
libgtest = dependency('gtest', required : get_option('lc-compliance'),
fallback : ['gtest', 'gtest_dep'])
-if not (libevent.found() and libgtest.found())
+if opt_lc_compliance.disabled() or not libevent.found() or not libgtest.found()
lc_compliance_enabled = false
subdir_done()
endif
diff --git a/src/apps/meson.build b/src/apps/meson.build
index 9e4388bd..62cff67e 100644
--- a/src/apps/meson.build
+++ b/src/apps/meson.build
@@ -1,5 +1,15 @@
# SPDX-License-Identifier: CC0-1.0
+opt_cam = get_option('cam')
+opt_lc_compliance = get_option('lc-compliance')
+
+# libevent is needed by cam and lc-compliance. As they are both feature options,
+# they can't be combined with simple boolean logic.
+libevent = dependency('libevent_pthreads', required : opt_cam)
+if not libevent.found()
+ libevent = dependency('libevent_pthreads', required : opt_lc_compliance)
+endif
+
subdir('lc-compliance')
subdir('cam')