cmake_minimum_required(VERSION 3.16)
project(thermal_detector LANGUAGES CXX)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

find_package(OpenCV REQUIRED COMPONENTS core imgproc imgcodecs highgui videoio)

add_executable(thermal_detector
    src/main.cpp
    src/thermal_preprocessor.cpp
    src/thermal_detector.cpp
)

target_include_directories(thermal_detector PRIVATE
    ${CMAKE_SOURCE_DIR}/include
    ${OpenCV_INCLUDE_DIRS}
)

target_link_libraries(thermal_detector PRIVATE
    ${OpenCV_LIBS}
)

target_compile_options(thermal_detector PRIVATE /utf-8 /EHsc)

# Windows: 输出到项目根目录方便测试
set_target_properties(thermal_detector PROPERTIES
    RUNTIME_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}"
    RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_SOURCE_DIR}"
    RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_SOURCE_DIR}"
)
