cmake_minimum_required(VERSION 3.10)
project(FireWatchTower_2axis)

set(CMAKE_CXX_STANDARD 17)

# Source files
add_executable(FireWatchTower_2axis
    FWT_host.cpp
    Camera.cpp
    MQTT.cpp
)

# Include directories
target_include_directories(FireWatchTower_2axis PRIVATE
    /usr/local/include/mqtt
    /usr/local/include
    /usr/local/include/opencv4
    /usr/include/jxl/
    /opt/VimbaX/api/include/
    /usr/local/include/boost/
)

# Library search paths
target_link_directories(FireWatchTower_2axis PRIVATE
    /usr/lib/x86_64-linux-gnu
    /usr/local/lib
    /opt/VimbaX/api/lib
)

# Libraries
target_link_libraries(FireWatchTower_2axis PRIVATE
    paho-mqttpp3
    paho-mqtt3a
    opencv_core
    opencv_imgproc
    opencv_highgui
    opencv_imgcodecs
    jxl
    jxl_threads
    VmbC
    VmbCPP
    VmbImageTransform
    boost_filesystem
    boost_thread
    boost_log
    boost_log_setup
    boost_system
    boost_chrono
    boost_regex
    boost_program_options
    boost_serialization
    boost_iostreams
    boost_date_time
    boost_json
    boost_locale
    boost_coroutine
    boost_context
    boost_fiber
    boost_random
    boost_atomic
    boost_url
    boost_charconv
    boost_container
    boost_graph
    boost_wave
    boost_type_erasure
    boost_contract
    boost_timer
    boost_nowide
    boost_wserialization
    boost_math_tr1
    boost_math_tr1f
    boost_math_tr1l
    boost_math_c99
    boost_math_c99f
    boost_math_c99l
    boost_stacktrace_basic
    boost_stacktrace_noop
    boost_stacktrace_addr2line
    boost_stacktrace_backtrace
    boost_stacktrace_from_exception
    boost_prg_exec_monitor
    boost_unit_test_framework
)
