cmake_minimum_required(VERSION 3.20) project(cex_cmake_demo LANGUAGES CXX) set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF) set(DEMO_INCREMENT 1) configure_file(config.hpp.in generated/config.hpp @ONLY) add_library(numbers src/numbers.cpp) target_include_directories(numbers PUBLIC src PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/generated") add_executable(cmake-demo main.cpp) target_link_libraries(cmake-demo PRIVATE numbers)