Files
libconfig/build-config/yaml-cpp/meson.build

43 lines
1.1 KiB
Meson

cmake = import('cmake')
yaml_cpp_cmake_options = cmake.subproject_options()
yaml_cpp_cmake_options.add_cmake_defines({
'BUILD_SHARED_LIBS': 'OFF',
'BUILD_STATIC_LIBS': 'ON',
'YAML_CPP_BUILD_TESTS': 'OFF',
'CMAKE_CXX_FLAGS': '-Wno-shadow',
'CMAKE_C_FLAGS': '-Wno-shadow',
'CMAKE_INSTALL_LIBDIR': get_option('libdir'),
'CMAKE_INSTALL_INCLUDEDIR': get_option('includedir'),
'CMAKE_POLICY_VERSION_MINIMUM': '3.5',
'CMAKE_POSITION_INDEPENDENT_CODE': 'ON'
})
yaml_cpp_sp = cmake.subproject(
'yaml-cpp',
options: yaml_cpp_cmake_options,
)
yaml_cpp_tgt = yaml_cpp_sp.target('yaml-cpp')
yaml_cpp_inc = yaml_cpp_sp.include_directories('yaml-cpp')
empty_yaml_cpp_file = configure_file(
output: 'yaml_cpp_dummy_ar.cpp',
command: ['echo'],
capture: true
)
libyaml_static = static_library(
'yaml_cpp-static',
empty_yaml_cpp_file,
objects: [yaml_cpp_tgt.extract_all_objects(recursive: true)],
include_directories: yaml_cpp_inc,
pic: true,
install: false
)
yaml_cpp_dep = declare_dependency(
link_with: libyaml_static,
include_directories: yaml_cpp_inc,
)