cmake_minimum_required(VERSION 3.16)
project(kcm-onboard)

set(QT_MIN_VERSION "6.6.0")
set(KF6_MIN_VERSION "6.0.0")

find_package(ECM ${KF6_MIN_VERSION} REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})

include(KDEInstallDirs)
include(KDECMakeSettings)
include(KDECompilerSettings NO_POLICY_SCOPE)
include(FeatureSummary)

find_package(Qt6 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
    Core
    Quick
    DBus
)

find_package(KF6 ${KF6_MIN_VERSION} REQUIRED COMPONENTS
    CoreAddons
    I18n
    KCMUtils
)

find_package(X11 REQUIRED)

add_definitions(-DTRANSLATION_DOMAIN=\"kcm_onboard\")

kcmutils_add_qml_kcm(kcm_onboard)

target_sources(kcm_onboard PRIVATE
    src/onboardkcm.cpp
    src/onboardkcm.h
    src/onboardconfig.cpp
    src/onboardconfig.h
)

# Add image resources
qt_add_resources(kcm_onboard "images"
    PREFIX "/kcm/kcm_onboard"
    FILES
        img/onboard.png
)

target_link_libraries(kcm_onboard PRIVATE
    KF6::I18n
    KF6::KCMUtils
    KF6::CoreAddons
)

ki18n_install(po)

# Create onboard-autostart executable
add_executable(onboard-autostart
    src/onboardautostart.cpp
    src/onboardconfig.cpp
    src/onboardconfig.h
)

target_link_libraries(onboard-autostart
    Qt6::Core
    Qt6::Gui
    Qt6::DBus
    X11::X11
)

install(TARGETS onboard-autostart DESTINATION ${CMAKE_INSTALL_BINDIR})
