set(PROJECT_NAME dcc-passkey-plugin)

project(${PROJECT_NAME})

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -Wall")

# Find the library
find_package(PkgConfig REQUIRED)
find_package(DdeControlCenter REQUIRED)
find_package(Qt6 COMPONENTS Core Gui DBus LinguistTools REQUIRED)
find_package(Dtk6 COMPONENTS Core Gui REQUIRED)
find_package(PolkitQt6-1 REQUIRED)

message(STATUS "dde-control-center version:" ${DdeControlCenter_VERSION})

set(Passkey_Name passkey)

file(GLOB_RECURSE passkey_SRCS
        "operation/*.cpp"
        "operation/*.h"
        "operation/*.qrc"
        "../common/*.h"
        "../common/*.c"
        "../decode/*.h"
        "../decode/*.c"
)

add_library(${Passkey_Name} MODULE
        ${passkey_SRCS}
)

target_include_directories(${Passkey_Name} PUBLIC
        Dde::Control-Center
)

set(Passkey_Libraries
        Qt6::Core
        Qt6::Gui
        Qt6::DBus
        Dtk6::Core
        Dtk6::Gui
        Dde::Control-Center
        PolkitQt6-1::Agent
)

target_link_libraries(${Passkey_Name} PRIVATE
        ${Passkey_Libraries}
)

target_include_directories(${Passkey_Name} PUBLIC
        ${CMAKE_SOURCE_DIR}/src
)

install(FILES "misc/org.deepin.dde.control-center.passkey.json" DESTINATION share/dsg/configs/org.deepin.dde.control-center)
dcc_install_plugin(NAME ${Passkey_Name} TARGET ${Passkey_Name})
dcc_handle_plugin_translation(NAME ${Passkey_Name} )
