include(googletest) enable_testing() include(GoogleTest) add_custom_target(fin_check COMMAND ${CMAKE_CTEST_COMMAND} --output-on-failure -C ${CMAKE_CFG_INTDIR}) add_custom_target(fin_tests) function(add_gtest TEST_NAME) message("Adding Test: " ${TEST_NAME}) add_executable(test_${TEST_NAME} ${TEST_NAME}.cpp ${CMAKE_SOURCE_DIR}/src/fin.cpp ${CMAKE_SOURCE_DIR}/src/base64.cpp) add_dependencies(fin_tests test_${TEST_NAME}) add_dependencies(fin_check test_${TEST_NAME}) target_compile_options(test_${TEST_NAME} PRIVATE -Wno-global-constructors -Wno-undef) target_include_directories(test_${TEST_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/src/include $) target_compile_definitions(test_${TEST_NAME} PUBLIC TEST_RESOURCE_DIR="${CMAKE_CURRENT_SOURCE_DIR}/") target_link_libraries(test_${TEST_NAME} gtest_main MIOpen hip::host $) gtest_discover_tests(test_${TEST_NAME}) if(HAS_LIB_STD_FILESYSTEM) target_link_libraries(test_${TEST_NAME} stdc++fs) endif() endfunction() file(GLOB TESTS *.cpp) foreach(TEST ${TESTS}) get_filename_component(BASE_NAME ${TEST} NAME_WE) add_gtest(${BASE_NAME}) endforeach()