cmake_minimum_required(VERSION 3.16)

project(Plains)

add_library(Asio INTERFACE IMPORTED GLOBAL)
target_compile_options(Asio INTERFACE -D ASIO_STANDALONE)
target_include_directories(Asio INTERFACE lib/asio/include)

add_library(HTTPLib INTERFACE IMPORTED GLOBAL)
target_include_directories(HTTPLib INTERFACE lib/cpp-httplib/include)

add_library(Catch2 INTERFACE IMPORTED GLOBAL)
target_include_directories(Catch2 INTERFACE lib/catch2)

find_package (Threads REQUIRED)
target_link_libraries(Asio INTERFACE Threads::Threads)

add_library(MiniYAML INTERFACE IMPORTED GLOBAL)
target_include_directories(MiniYAML INTERFACE lib/mini-yaml)

add_subdirectory(src)

# Build Executable:
add_executable(Plains src/main.cpp)
#add_executable(Plains)
target_link_libraries(Plains PRIVATE Core DNS Storage Resolver DHCP API Cluster UI)

