cmake_minimum_required(VERSION 3.16)

project(mdns VERSION 0.1 LANGUAGES CXX)

set(CMAKE_CXX_STANDARD_REQUIRED ON)

set(CMAKE_EXPORT_COMPILATION_DATABASE ON)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

# https://doc.qt.io/qt-6/qt-cmake-policy-qtp0003.html
option(BUILD_SHARED_LIBS "Build shared instead of static library" ON)

find_package(Qt6 6.5 REQUIRED COMPONENTS Core)
qt_standard_project_setup(REQUIRES 6.5)
qt_policy(SET QTP0003 NEW)

set(SOURCES
    src/broadcaster.h
    src/broadcaster.cpp
    src/scanner.h
    src/scanner.cpp
)
qt_add_library(mdns ${SOURCES})

target_include_directories(mdns PUBLIC src/)

target_link_libraries(mdns PRIVATE Qt6::Core)

include(GNUInstallDirs)
install(TARGETS mdns
    BUNDLE DESTINATION .
    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)

