cmake_minimum_required(VERSION 3.20) get_filename_component(TARGET_NAME ${CMAKE_CURRENT_SOURCE_DIR} NAME) string(REPLACE " " "_" TARGET_NAME ${TARGET_NAME}) project(${TARGET_NAME}) set(CMAKE_C_STANDARD 99) set(CMAKE_CXX_STANDARD 20) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) file(GLOB sources CONFIGURE_DEPENDS "src/*.cpp") file(GLOB sources CONFIGURE_DEPENDS "src/*.c") add_executable(${TARGET_NAME} ${sources}) target_include_directories( ${TARGET_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/include )