diff options
author | Aina Niemetz <aina.niemetz@gmail.com> | 2018-08-22 08:46:50 -0700 |
---|---|---|
committer | Mathias Preiner <mathias.preiner@gmail.com> | 2018-09-22 16:30:59 -0700 |
commit | 38c24575b3415f375b14ebfb7685a1621c7587e2 (patch) | |
tree | 9198192884d1f5062e38ae3f90efc8d771dd1e05 /test/unit/CMakeLists.txt | |
parent | 6f219294f25cb675caeb5c846f201c22255b50c7 (diff) |
cmake: Add dependencies for test targets and support for make coverage.
Diffstat (limited to 'test/unit/CMakeLists.txt')
-rw-r--r-- | test/unit/CMakeLists.txt | 76 |
1 files changed, 39 insertions, 37 deletions
diff --git a/test/unit/CMakeLists.txt b/test/unit/CMakeLists.txt index 088dc7cc7..f91c5b35e 100644 --- a/test/unit/CMakeLists.txt +++ b/test/unit/CMakeLists.txt @@ -1,42 +1,44 @@ -if(ENABLE_UNIT_TESTING) - include_directories(.) - include_directories(${PROJECT_SOURCE_DIR}/src) - include_directories(${PROJECT_SOURCE_DIR}/src/include) - include_directories(${CMAKE_BINARY_DIR}/src) +include_directories(.) +include_directories(${PROJECT_SOURCE_DIR}/src) +include_directories(${PROJECT_SOURCE_DIR}/src/include) +include_directories(${CMAKE_BINARY_DIR}/src) - set(CVC4_CXXTEST_FLAGS_BLACK - -D__BUILDING_CVC4LIB_UNIT_TEST -D__BUILDING_CVC4PARSERLIB_UNIT_TEST - -D__STDC_LIMIT_MACROS -D__STDC_FORMAT_MACROS) - set(CVC4_CXXTEST_FLAGS_WHITE -fno-access-control ${CVC4_CXXTEST_FLAGS_BLACK}) +add_custom_target(units COMMAND ctest -L "unit" $(ARGS)) - macro(cvc4_add_unit_test is_white name) - cxxtest_add_test(${name} ${name}.cpp ${CMAKE_CURRENT_LIST_DIR}/${name}.h) - set_tests_properties(${name} PROPERTIES LABELS "unit") - target_link_libraries(${name} main) - target_compile_definitions(${name} PRIVATE ${CVC4_CXXTEST_FLAGS_BLACK}) - if(${is_white}) - target_compile_options(${name} PRIVATE -fno-access-control) - endif() - # Disable the Wsuggest-override warnings for the unit tests. CxxTest generates - # code that does not properly add the override keyword to runTest(). - target_compile_options(${name} PRIVATE -Wno-suggest-override) - endmacro() +set(CVC4_CXXTEST_FLAGS_BLACK + -D__BUILDING_CVC4LIB_UNIT_TEST -D__BUILDING_CVC4PARSERLIB_UNIT_TEST + -D__STDC_LIMIT_MACROS -D__STDC_FORMAT_MACROS) +set(CVC4_CXXTEST_FLAGS_WHITE -fno-access-control ${CVC4_CXXTEST_FLAGS_BLACK}) - macro(cvc4_add_unit_test_black name) - cvc4_add_unit_test(FALSE ${name}) - endmacro() - macro(cvc4_add_unit_test_white name) - cvc4_add_unit_test(TRUE ${name}) - endmacro() +macro(cvc4_add_unit_test is_white name) + cxxtest_add_test(${name} ${name}.cpp ${CMAKE_CURRENT_LIST_DIR}/${name}.h) + set_tests_properties(${name} PROPERTIES LABELS "unit") + target_link_libraries(${name} main) + target_compile_definitions(${name} PRIVATE ${CVC4_CXXTEST_FLAGS_BLACK}) + if(${is_white}) + target_compile_options(${name} PRIVATE -fno-access-control) + endif() + # Disable the Wsuggest-override warnings for the unit tests. CxxTest generates + # code that does not properly add the override keyword to runTest(). + target_compile_options(${name} PRIVATE -Wno-suggest-override) + add_dependencies(units ${name}) + if(ENABLE_COVERAGE) + add_dependencies(coverage ${name}) + endif() +endmacro() - add_subdirectory(base) - add_subdirectory(context) - add_subdirectory(expr) - add_subdirectory(main) - add_subdirectory(parser) - add_subdirectory(prop) - add_subdirectory(theory) - add_subdirectory(util) +macro(cvc4_add_unit_test_black name) + cvc4_add_unit_test(FALSE ${name}) +endmacro() +macro(cvc4_add_unit_test_white name) + cvc4_add_unit_test(TRUE ${name}) +endmacro() - add_custom_target(units COMMAND ctest -L "unit" $(ARGS)) -endif() +add_subdirectory(base) +add_subdirectory(context) +add_subdirectory(expr) +add_subdirectory(main) +add_subdirectory(parser) +add_subdirectory(prop) +add_subdirectory(theory) +add_subdirectory(util) |