12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- project('cJSON', 'c', default_options: ['c_std=c89'])
- version = '1.6.0'
- soversion = '0'
- compiler = meson.get_compiler('c')
- compiler_flags = []
- if (compiler.get_id() == 'clang') or (compiler.get_id() == 'gcc')
- compiler_flags += [
- '-pedantic',
- '-Wall',
- '-Wextra',
- '-Werror',
- '-Wstrict-prototypes',
- '-Wwrite-strings',
- '-Wshadow',
- '-Winit-self',
- '-Wcast-align',
- '-Wformat=2',
- '-Wmissing-prototypes',
- '-Wstrict-overflow=2',
- '-Wcast-qual',
- '-Wundef',
- '-Wswitch-default',
- '-Wconversion',
- '-Wc++-compat',
- '-fstack-protector-strong',
- '-Wcomma',
- '-Wdouble-promotion',
- '-Wparentheses',
- '-Wformat-overflow',
- '-Wunused-macros',
- '-Wmissing-variable-declarations',
- '-Wused-but-marked-unused',
- '-Wswitch-enum'
- ]
- endif
- foreach flag : compiler_flags
- if compiler.has_argument(flag)
- add_project_arguments(flag, language: 'c')
- endif
- endforeach
- math = compiler.find_library('m', required: false)
- cjson = shared_library('cjson', 'cJSON.c', dependencies: math, version: version, soversion: soversion, install: true)
- if get_option('enable_cjson_utils')
- cjson_utils = shared_library('cjson_utils', 'cJSON_Utils.c', link_with: cjson, version: version, soversion: soversion, install: true)
- endif
- if get_option('enable_cjson_tests')
- cjson_test = executable('cjson_test', 'test.c', link_with: cjson)
- test('cjson_test', cjson_test)
- endif
- subdir('tests')
|