# common build settings add_library(abi_compat_common INTERFACE) target_compile_definitions(abi_compat_common INTERFACE DOCTEST_CONFIG_SUPER_FAST_ASSERTS JSON_TEST_KEEP_MACROS) target_compile_features(abi_compat_common INTERFACE cxx_std_11) target_compile_options(abi_compat_common INTERFACE $<$:/EHsc;$<$:/Od>> # MSVC: Force to always compile with W4 $<$:/W4> # https://github.com/nlohmann/json/pull/3229 $<$:-diag-disable=2196> $<$>:-Wno-deprecated;-Wno-float-equal> $<$:-Wno-deprecated-declarations> $<$:-diag-disable=1786>) target_include_directories(abi_compat_common SYSTEM INTERFACE ../thirdparty/doctest include) target_link_libraries(abi_compat_common INTERFACE ${NLOHMANN_JSON_TARGET_NAME}) # shared main() add_library(abi_compat_main STATIC main.cpp) target_link_libraries(abi_compat_main PUBLIC abi_compat_common) # add individual tests add_subdirectory(config) add_subdirectory(diag) add_subdirectory(inline_ns)