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) find_package(magic_enum) add_library(s2ga STATIC s2ga.hpp) target_link_libraries(s2ga PUBLIC magic_enum::magic_enum) 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()