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