identiconpp/tests.CMakeLists.txt

20 lines
637 B
Plaintext

if(WITH_TESTS)
find_package(Catch2)
if(Catch2_FOUND)
set(MYCATCH, Catch2::Catch2)
else()
message(WARNING "Catch2 not found. Assuming Catch 1.x is installed.")
set(MYCATCH, "")
endif()
include(CTest)
file(GLOB sources_tests src/tests/test_*.cpp)
foreach(src ${sources_tests})
get_filename_component(bin ${src} NAME_WE)
add_executable(${bin} src/tests/main.cpp ${src})
target_link_libraries(${bin} ${CMAKE_PROJECT_NAME} ${MYCATCH})
target_include_directories(${bin} PRIVATE "/usr/include/catch2")
add_test(${bin} ${bin})
endforeach()
endif()