s2ga/CMakeLists.txt

35 lines
888 B
CMake
Raw Permalink Normal View History

2025-03-08 20:37:26 +03:00
cmake_minimum_required(VERSION 3.22.0)
set(PROJECT_NAME s2ga)
if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE Release)
endif()
set(CMAKE_CXX_FLAGS "-Wall -Wextra")
set(CMAKE_CXX_FLAGS_DEBUG "-g")
set(CMAKE_CXX_FLAGS_RELEASE "-O3")
project(${PROJECT_NAME})
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
option(BUILD_ZECSY_TESTS "Build tests?" ON)
2025-03-12 18:49:28 +03:00
find_package(magic_enum)
2025-03-08 20:37:26 +03:00
add_library(s2ga STATIC s2ga.hpp)
2025-03-12 18:49:28 +03:00
target_link_libraries(s2ga PUBLIC magic_enum::magic_enum)
2025-03-08 20:37:26 +03:00
set_target_properties(s2ga PROPERTIES LINKER_LANGUAGE CXX)
#######################################################
if(${BUILD_ZECSY_TESTS})
find_package(Catch2 REQUIRED)
file(GLOB TEST_SRC ./tests/*.cpp ./tests/*.hpp ./tests/*.h)
add_executable(tests ${TEST_SRC})
target_link_libraries(tests PRIVATE Catch2::Catch2WithMain s2ga)
include(CTest)
include(Catch)
catch_discover_tests(tests)
endif()