1c5f01b2fSopenharmony_ci# test linking library built with different JSON_DIAGNOSTICS setting
2c5f01b2fSopenharmony_ci# into the same executable
3c5f01b2fSopenharmony_ci
4c5f01b2fSopenharmony_ci# compile code using JSON_DIAGNOSTICS=1
5c5f01b2fSopenharmony_ciadd_library(abi_compat_diag_on STATIC diag_on.cpp)
6c5f01b2fSopenharmony_citarget_link_libraries(abi_compat_diag_on PUBLIC abi_compat_common)
7c5f01b2fSopenharmony_ci
8c5f01b2fSopenharmony_ci# compile code using JSON_DIAGNOSTICS=0
9c5f01b2fSopenharmony_ciadd_library(abi_compat_diag_off STATIC diag_off.cpp)
10c5f01b2fSopenharmony_citarget_link_libraries(abi_compat_diag_off PUBLIC abi_compat_common)
11c5f01b2fSopenharmony_ci
12c5f01b2fSopenharmony_ci# build test executable and add test
13c5f01b2fSopenharmony_ciadd_executable(abi_compat_diag diag.cpp)
14c5f01b2fSopenharmony_citarget_link_libraries(abi_compat_diag PRIVATE
15c5f01b2fSopenharmony_ci    abi_compat_main abi_compat_diag_on abi_compat_diag_off)
16c5f01b2fSopenharmony_ci
17c5f01b2fSopenharmony_ciadd_test(
18c5f01b2fSopenharmony_ci    NAME test-abi_compat_diag
19c5f01b2fSopenharmony_ci    COMMAND abi_compat_diag ${DOCTEST_TEST_FILTER})
20