draconisplusplus/subprojects/fmt-11.1.1/meson.build

51 lines
1.1 KiB
Meson

project('fmt', 'cpp', version: '11.1.1', license: 'MIT WITH fmt-exception', default_options: ['cpp_std=c++14'])
fmt_private_cpp_args = []
fmt_interface_cpp_args = []
if get_option('default_library') == 'shared'
fmt_private_cpp_args += ['-DFMT_LIB_EXPORT']
fmt_interface_cpp_args += ['-DFMT_SHARED']
endif
header_only = get_option('header-only')
fmt_lib = library(
'fmt',
'src/format.cc',
'src/os.cc',
cpp_args: fmt_private_cpp_args,
include_directories: 'include',
build_by_default: not header_only,
install: not header_only,
)
if not header_only
install_subdir('include',
strip_directory: true,
install_dir: get_option('includedir'),
)
endif
fmt_dep = declare_dependency(
include_directories: 'include',
compile_args: fmt_interface_cpp_args,
link_with: fmt_lib,
)
if meson.version().version_compare('>=0.54.0')
meson.override_dependency('fmt', fmt_dep)
endif
fmt_header_only_dep = declare_dependency(
include_directories: 'include',
compile_args: '-DFMT_HEADER_ONLY',
)
if not header_only
pkg_mod = import('pkgconfig')
pkg_mod.generate(fmt_lib,
name: 'fmt',
filebase: 'fmt',
)
endif