rotgen/test/CMakeLists.txt

35 lines
2.2 KiB
CMake

##======================================================================================================================
## ROTGEN - Runtime Overlay for Eigen
## Copyright : CODE RECKONS
## SPDX-License-Identifier: BSL-1.0
##======================================================================================================================
include(${ROTGEN_SOURCE_DIR}/cmake/unit.cmake)
rotgen_setup_test_targets()
##======================================================================================================================
## Compiler options for Unit Tests in dynamci and static mode
##======================================================================================================================
add_library(rotgen_test INTERFACE)
target_compile_options(rotgen_test INTERFACE -std=c++20 -Werror -Wall -Wextra -Wshadow -Wunused-variable)
target_include_directories( rotgen_test INTERFACE ${PROJECT_SOURCE_DIR}/test)
target_link_libraries(rotgen_test INTERFACE rotgen Eigen3::Eigen)
target_compile_definitions(rotgen_test INTERFACE
TTS_MAIN
TTS_CUSTOM_DRIVER_FUNCTION=rotgen_main
)
##======================================================================================================================
## Unit Tests registration
##======================================================================================================================
rotgen_glob_unit(QUIET PATTERN "unit/*.cpp" INTERFACE rotgen_test)
rotgen_glob_unit(QUIET PATTERN "unit/matrix/*.cpp" INTERFACE rotgen_test)
rotgen_glob_unit(QUIET PATTERN "unit/block/*.cpp" INTERFACE rotgen_test)
rotgen_glob_unit(QUIET PATTERN "unit/map/*.cpp" INTERFACE rotgen_test)
rotgen_glob_unit(QUIET PATTERN "unit/meta/*.cpp" INTERFACE rotgen_test)
rotgen_glob_unit(QUIET PATTERN "unit/functions/*.cpp" INTERFACE rotgen_test)
##======================================================================================================================
## Integrations Tests registration
##======================================================================================================================
rotgen_glob_unit(QUIET PATTERN "integration/*.cpp" INTERFACE rotgen_test)