cmake_minimum_required(VERSION 3.14)
project(tps VERSION 1.0.0 LANGUAGES CXX)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)

if (MSVC)
    add_compile_options(/utf-8)
endif()

# ============================================================
# 主程序：任务规划软件（TPS）核心处理单元
# ============================================================
add_executable(tps
    src/main.cpp
    src/event_handler.cpp
    src/template_manager.cpp
    src/plan_manager.cpp
    src/distribution_monitor.cpp
)

target_include_directories(tps PRIVATE include)

# ============================================================
# 单元测试程序（使用标准库 assert，无外部依赖）
# ============================================================
add_executable(tps_test
    tests/basic_test.cpp
    src/event_handler.cpp
    src/template_manager.cpp
    src/plan_manager.cpp
    src/distribution_monitor.cpp
)

target_include_directories(tps_test PRIVATE include)
