universe@510: # Transitional support for CTest written tests universe@391: message(CHECK_START "Searching for CUnit test framework") universe@390: universe@391: find_path(CUNIT_INCLUDE_DIR NAMES CUnit/CUnit.h) universe@391: find_library(CUNIT_LIBRARY NAMES cunit libcunit cunitlib) universe@391: include(FindPackageHandleStandardArgs) universe@391: find_package_handle_standard_args(CUnit DEFAULT_MSG CUNIT_LIBRARY CUNIT_INCLUDE_DIR) universe@391: universe@510: if (CUNIT_FOUND) universe@391: message(CHECK_PASS "found: compiling tests.") universe@391: set(TESTS universe@413: test_list olaf@425: test_tree universe@391: ) universe@391: universe@510: foreach (test ${TESTS}) universe@510: add_executable(${test} ${test}.c) universe@391: target_link_libraries(${test} PRIVATE ucx_static ${CUNIT_LIBRARY}) universe@395: target_include_directories(${test} PRIVATE ${CUNIT_INCLUDE_DIR}) universe@391: add_test(NAME ${test} COMMAND ${test} WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}") universe@510: endforeach () universe@510: else () universe@510: message(CHECK_FAIL "not found: CUnit tests will not be available.") universe@510: endif () universe@510: universe@510: # Load Google Test Framework universe@510: set(CMAKE_CXX_STANDARD 11) universe@510: universe@510: include(FetchContent) universe@510: FetchContent_Declare( universe@510: googletest universe@510: GIT_REPOSITORY https://github.com/google/googletest.git universe@510: GIT_TAG e2239ee6043f73722e7aa812a459f54a28552929 # release 1.11.0 universe@510: ) universe@510: # For Windows: Prevent overriding the parent project's compiler/linker settings universe@510: set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) universe@510: FetchContent_MakeAvailable(googletest) universe@510: include(GoogleTest) universe@510: message(STATUS "Google Test made available") universe@510: universe@510: set(TESTS universe@510: selftest universe@511: test_allocator universe@510: ) universe@510: foreach (test ${TESTS}) universe@510: add_executable(${test} ${test}.cpp) universe@510: target_link_libraries(${test} PRIVATE ucx_static gtest_main) universe@511: gtest_discover_tests(${test}) universe@510: endforeach ()