cmake_minimum_required(VERSION 3.20) project(cigus VERSION 0.0.1 LANGUAGES CXX) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF) include(cmake/CPM.cmake) include(cmake/utils.cmake) CPMAddPackage( NAME spdlog GITHUB_REPOSITORY gabime/spdlog VERSION 1.15.2 GIT_SHALLOW ON EXCLUDE_FROM_ALL ) CPMAddPackage( NAME sfml GITHUB_REPOSITORY SFML/SFML GIT_TAG 3.0.0 GIT_SHALLOW ON EXCLUDE_FROM_ALL SYSTEM ) CPMAddPackage( NAME nlohmann_json GITHUB_REPOSITORY nlohmann/json VERSION 3.11.2 GIT_SHALLOW ON EXCLUDE_FROM_ALL ) set(PROJECT_SOURCE_NAME "${PROJECT_NAME}_SOURCES") find_files(ExampleSources src cpp hpp c h cxx hxx) add_executable(${PROJECT_NAME} ${ExampleSources} cigus.hpp) target_include_directories(${PROJECT_NAME} PUBLIC include ./) target_link_libraries(${PROJECT_NAME} PUBLIC spdlog::spdlog SFML::Graphics SFML::Window SFML::System SFML::Audio SFML::Network nlohmann_json::nlohmann_json)