cmake_minimum_required(VERSION 3.28) project(build_script) set(CMAKE_CXX_STANDARD 26) set(CMAKE_POLICY_VERSION_MINIMUM 3.5) file(GLOB REQUIRED_CMAKE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/cmake/*.required.cmake") foreach (cmake_file ${REQUIRED_CMAKE_FILES}) include(${cmake_file}) endforeach () file(GLOB CMAKE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/cmake/*.cmake") foreach (cmake_file ${CMAKE_FILES}) include(${cmake_file}) endforeach () include_directories(src/) file(GLOB_RECURSE SRC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") file(GLOB_RECURSE HEADER_FILES "${CMAKE_CURRENT_SOURCE_DIR}/src/*.h") add_executable(${PROJECT_NAME} ${SRC_FILES} ${HEADER_FILES}) target_include_directories(${PROJECT_NAME} PUBLIC "${structops_SOURCE_DIR}/include" "${spdlog_SOURCE_DIR}/include" ) target_link_libraries(${PROJECT_NAME} PUBLIC structopt spdlog )