task_plan/CMakeLists.txt

39 lines
849 B
CMake
Raw Normal View History

2026-05-20 08:00:11 +00:00
cmake_minimum_required(VERSION 3.14)
2026-05-21 07:09:58 +00:00
project(etms_cpp VERSION 1.0.0 LANGUAGES CXX)
2026-05-20 08:00:11 +00:00
2026-05-21 07:09:58 +00:00
# 启用 C++17 标准
2026-05-20 08:00:11 +00:00
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
2026-05-21 07:09:58 +00:00
# MSVC UTF-8 编译选项
2026-05-20 08:00:11 +00:00
if (MSVC)
add_compile_options(/utf-8)
endif()
2026-05-21 07:09:58 +00:00
# 头文件目录
include_directories(${CMAKE_SOURCE_DIR}/include)
# ============================
# 主程序
# ============================
add_executable(etms_app
2026-05-20 09:17:29 +00:00
src/main.cpp
src/app.cpp
2026-05-21 07:09:58 +00:00
src/event_manager.cpp
src/task_template_manager.cpp
2026-05-20 08:00:11 +00:00
)
2026-05-21 07:09:58 +00:00
# ============================
# 单元测试(使用标准 assert无需外部依赖
# ============================
2026-05-20 09:17:29 +00:00
add_executable(etms_test
tests/basic_test.cpp
src/app.cpp
2026-05-21 07:09:58 +00:00
src/event_manager.cpp
src/task_template_manager.cpp
2026-05-20 08:00:11 +00:00
)
2026-05-21 07:09:58 +00:00
# 测试通过 CTest 驱动
enable_testing()
add_test(NAME BasicTest COMMAND etms_test)