cmake_minimum_required(VERSION 3.14) project(SortAlgorithms VERSION 1.0.0 LANGUAGES CXX) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF) # ── MSVC 编码兼容 ────────────────────────────────────────────── if (MSVC) add_compile_options(/utf-8) endif() # ── 头文件路径 ──────────────────────────────────────────────── set(PROJECT_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include") target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_INCLUDE_DIR}) # ── 主程序 ──────────────────────────────────────────────────── add_executable(${PROJECT_NAME} src/main.cpp src/app.cpp ) target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_INCLUDE_DIR}) # ── 测试可执行文件 ──────────────────────────────────────────── add_executable(${PROJECT_NAME}_test tests/basic_test.cpp src/app.cpp ) target_include_directories(${PROJECT_NAME}_test PRIVATE ${PROJECT_INCLUDE_DIR})