Files
OpenVulkano/tests/CMakeLists.txt

34 lines
1.2 KiB
CMake

cmake_minimum_required(VERSION 3.28 FATAL_ERROR)
include(SetupVulkan)
include(Utils)
include(Filter)
cmake_path(GET CMAKE_CURRENT_SOURCE_DIR PARENT_PATH ROOT_FOLDER)
file(GLOB_RECURSE SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/*.h" "${CMAKE_CURRENT_SOURCE_DIR}/*.hpp"
"${ROOT_FOLDER}/resources/*.rc" "${ROOT_FOLDER}/resources/*.h")
FilterPlatformPaths(SOURCES)
if (NOT ENABLE_CURL)
list(FILTER SOURCES EXCLUDE REGEX "WebResourceLoader")
endif()
add_executable(OpenVulkano_Tests ${SOURCES})
target_include_directories(OpenVulkano_Tests PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories(OpenVulkano_Tests PRIVATE openVulkanoCpp)
target_link_libraries(OpenVulkano_Tests PRIVATE "$<LINK_LIBRARY:WHOLE_ARCHIVE,openVulkanoCpp>")
# add catch2
target_link_libraries(OpenVulkano_Tests PRIVATE Catch2::Catch2WithMain)
SetupVulkan(OpenVulkano_Tests)
SetGlmDefines(OpenVulkano_Tests)
SetWarningSettings(OpenVulkano_Tests)
list(APPEND CMAKE_MODULE_PATH ${Catch2_SOURCE_DIR}/extras)
list(APPEND CMAKE_MODULE_PATH ${Catch2_SOURCE_DIR}/contrib)
include(CTest)
include(Catch)
catch_discover_tests(OpenVulkano_Tests)