nutri/CMakeLists.txt

35 lines
734 B
CMake
Raw Normal View History

2024-10-15 17:48:16 +00:00
cmake_minimum_required(VERSION 3.30)
2024-10-15 17:48:16 +00:00
project(nutri)
set(CMAKE_CXX_STANDARD 26)
2024-10-16 12:02:16 +00:00
set(CMAKE_EXPORT_COMPILE_COMMANDS 1)
set(CMAKE_COLOR_DIAGNOSTICS 1)
2024-11-10 20:39:27 +00:00
2025-01-15 12:40:39 +00:00
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
2024-11-10 20:58:51 +00:00
find_program(MOLD_LINKER mold)
if(MOLD_LINKER)
2024-11-10 20:58:51 +00:00
add_link_options(-fuse-ld=mold)
endif()
2024-11-10 20:39:27 +00:00
if(CMAKE_BUILD_TYPE STREQUAL "Release")
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE)
add_compile_options(-O3 -march=native)
2024-11-10 20:58:51 +00:00
add_link_options(-s)
2024-11-10 20:39:27 +00:00
endif()
2024-10-15 17:48:16 +00:00
2024-10-16 12:02:16 +00:00
include(FetchContent)
2025-01-15 12:40:39 +00:00
include(FindCTRE)
include(FindCPR)
include(FindGlaze)
2024-10-15 17:48:16 +00:00
file(GLOB_RECURSE SOURCES
${CMAKE_SOURCE_DIR}/src/*.cpp
${CMAKE_SOURCE_DIR}/src/*.hpp
2024-11-10 17:26:07 +00:00
)
add_executable(nutri ${SOURCES})
2024-11-10 17:26:07 +00:00
target_link_libraries(nutri PRIVATE cpr::cpr ctre::ctre glaze::glaze)