38 lines
1.1 KiB
CMake
38 lines
1.1 KiB
CMake
cmake_minimum_required(VERSION 3.16...3.27)
|
|
|
|
# Catch2:
|
|
Include(FetchContent)
|
|
FetchContent_Declare(
|
|
Catch2
|
|
GIT_REPOSITORY https://github.com/catchorg/Catch2.git
|
|
GIT_TAG v3.4.0
|
|
)
|
|
|
|
# To avoid that tests to not pass on Windows with BUILD_SHARED_LIBS=ON
|
|
# because the loader can't find Catch2.dll, we always compile Catch2 as static
|
|
if(WIN32 AND BUILD_SHARED_LIBS)
|
|
set(BUILD_SHARED_LIBS_RERUN_SDK ${BUILD_SHARED_LIBS})
|
|
set(BUILD_SHARED_LIBS OFF)
|
|
endif()
|
|
|
|
FetchContent_MakeAvailable(Catch2)
|
|
|
|
if(WIN32 AND BUILD_SHARED_LIBS_RERUN_SDK)
|
|
set(BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS_RERUN_SDK})
|
|
endif()
|
|
|
|
file(GLOB_RECURSE rerun_sdk_tests_SRC CONFIGURE_DEPENDS
|
|
"*.hpp"
|
|
"*.cpp"
|
|
)
|
|
|
|
# Add readme snippets to the tests to make sure they keep compiling.
|
|
list(APPEND rerun_sdk_tests_SRC "../docs/readme_snippets.cpp")
|
|
|
|
add_executable(rerun_sdk_tests ${rerun_sdk_tests_SRC})
|
|
|
|
rerun_strict_warning_settings(rerun_sdk_tests)
|
|
|
|
# Include arrow explicitly again, otherwise the arrow headers won't be found.
|
|
target_link_libraries(rerun_sdk_tests PRIVATE loguru::loguru Catch2::Catch2 rerun_sdk rerun_arrow_target)
|