41 lines
986 B
Meson
41 lines
986 B
Meson
project('nlohmann_json',
|
|
'cpp',
|
|
version : '3.11.3',
|
|
license : 'MIT',
|
|
meson_version : '>= 0.64',
|
|
default_options: ['cpp_std=c++11'],
|
|
)
|
|
|
|
if get_option('MultipleHeaders')
|
|
incdir = 'include'
|
|
else
|
|
incdir = 'single_include'
|
|
endif
|
|
|
|
cpp_args = [
|
|
'-DJSON_USE_GLOBAL_UDLS=@0@'.format(
|
|
(not get_option('GlobalUDLs')).to_int()),
|
|
'-DJSON_USE_IMPLICIT_CONVERSIONS=@0@'.format(
|
|
(not get_option('ImplicitConversions')).to_int()),
|
|
]
|
|
|
|
nlohmann_json_dep = declare_dependency(
|
|
compile_args: cpp_args,
|
|
include_directories: include_directories(incdir)
|
|
)
|
|
meson.override_dependency('nlohmann_json', nlohmann_json_dep)
|
|
|
|
if not meson.is_subproject()
|
|
install_subdir(
|
|
incdir / 'nlohmann',
|
|
install_dir: get_option('includedir'),
|
|
install_tag: 'devel',
|
|
)
|
|
|
|
pkgc = import('pkgconfig')
|
|
pkgc.generate(name: 'nlohmann_json',
|
|
version: meson.project_version(),
|
|
description: 'JSON for Modern C++'
|
|
)
|
|
endif
|