cmake_minimum_required(VERSION 3.24) project(chess) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) set(CMAKE_C_STANDARD 23) set(CMAKE_C_STANDARD_REQUIRED ON) set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) file(GLOB_RECURSE SOURCE_FILES src/*.c src/*.cpp src/*.h src/*.hpp) add_executable(${PROJECT_NAME} ${SOURCE_FILES}) target_include_directories(${PROJECT_NAME} PRIVATE src) include(CTest) if(BUILD_TESTING) add_executable(pawn_moves_test tests/pawn_moves_test.cpp src/board.cpp src/moves.cpp) target_include_directories(pawn_moves_test PRIVATE src) add_test(NAME pawn_moves COMMAND pawn_moves_test) endif()