@@ -24,10 +24,12 @@ libcamera_base_internal_sources = files([
'thread.cpp',
'timer.cpp',
'utils.cpp',
+ 'yaml_parser.cpp',
])
libdw = dependency('libdw', required : false)
libunwind = dependency('libunwind', required : false)
+libyaml = dependency('yaml-0.1', required : false)
if cc.has_header_symbol('execinfo.h', 'backtrace')
config_h.set('HAVE_BACKTRACE', 1)
@@ -41,11 +43,23 @@ if libunwind.found()
config_h.set('HAVE_UNWIND', 1)
endif
+# Fallback to a subproject if libyaml isn't found, as it's not packaged in AOSP.
+if not libyaml.found()
+ cmake = import('cmake')
+
+ libyaml_vars = cmake.subproject_options()
+ libyaml_vars.add_cmake_defines({'CMAKE_POSITION_INDEPENDENT_CODE': 'ON'})
+ libyaml_vars.append_compile_args('c', '-Wno-unused-value')
+ libyaml_wrap = cmake.subproject('libyaml', options : libyaml_vars)
+ libyaml = libyaml_wrap.dependency('yaml')
+endif
+
libcamera_base_deps = [
libatomic,
libdw,
libthreads,
libunwind,
+ libyaml,
]
# Internal components must use the libcamera_base_private dependency to enable
similarity index 100%
rename from src/libcamera/yaml_parser.cpp
rename to src/libcamera/base/yaml_parser.cpp
@@ -51,7 +51,6 @@ libcamera_internal_sources = files([
'v4l2_pixelformat.cpp',
'v4l2_subdevice.cpp',
'v4l2_videodevice.cpp',
- 'yaml_parser.cpp',
])
includes = [
@@ -79,7 +78,6 @@ if not cc.has_function('dlopen')
libdl = cc.find_library('dl')
endif
libudev = dependency('libudev', required : get_option('udev'))
-libyaml = dependency('yaml-0.1', required : false)
# Use one of gnutls or libcrypto (provided by OpenSSL), trying gnutls first.
libcrypto = dependency('gnutls', required : false)
@@ -115,17 +113,6 @@ if libudev.found()
])
endif
-# Fallback to a subproject if libyaml isn't found, as it's not packaged in AOSP.
-if not libyaml.found()
- cmake = import('cmake')
-
- libyaml_vars = cmake.subproject_options()
- libyaml_vars.add_cmake_defines({'CMAKE_POSITION_INDEPENDENT_CODE': 'ON'})
- libyaml_vars.append_compile_args('c', '-Wno-unused-value')
- libyaml_wrap = cmake.subproject('libyaml', options : libyaml_vars)
- libyaml = libyaml_wrap.dependency('yaml')
-endif
-
control_sources = []
controls_mode_files = {
@@ -185,7 +172,6 @@ libcamera_deps += [
libdl,
liblttng,
libudev,
- libyaml,
]
# We add '/' to the build_rpath as a 'safe' path to act as a boolean flag.
Global configuration, which uses the YAML parser, will be in base. Thus YAML parser must be moved to base too. Signed-off-by: Milan Zamazal <mzamazal@redhat.com> --- src/libcamera/base/meson.build | 14 ++++++++++++++ src/libcamera/{ => base}/yaml_parser.cpp | 0 src/libcamera/meson.build | 14 -------------- 3 files changed, 14 insertions(+), 14 deletions(-) rename src/libcamera/{ => base}/yaml_parser.cpp (100%)