# SPDX-FileCopyrightText: none
# SPDX-License-Identifier: BSD-3-Clause

add_definitions(-DTRANSLATION_DOMAIN=\"akonadi_mailfilter_agent\")

add_library(mailfilteragentprivate)


target_sources(mailfilteragentprivate PRIVATE
    filterlogdialog.cpp
    filterlogdialog.h
    mailfilterpurposemenuwidget.cpp
    mailfilterpurposemenuwidget.h

    mailfilteragent_private_export.h
)

if (COMPILE_WITH_UNITY_CMAKE_SUPPORT)
    set_target_properties(mailfilteragentprivate PROPERTIES UNITY_BUILD ON)
endif()

generate_export_header(mailfilteragentprivate BASE_NAME mailfilteragentprivate)
target_link_libraries(mailfilteragentprivate
    KF6::I18n
    Qt::Widgets
    KF6::TextCustomEditor
    KPim6::PimCommon
    KPim6::MailCommon
)

set_target_properties(mailfilteragentprivate
    PROPERTIES OUTPUT_NAME mailfilteragentprivate VERSION ${KDEPIM_LIB_VERSION} SOVERSION ${KDEPIM_LIB_SOVERSION}
)
install(TARGETS mailfilteragentprivate ${KDE_INSTALL_TARGETS_DEFAULT_ARGS} LIBRARY NAMELINK_SKIP)


add_executable(akonadi_mailfilter_agent)

qt_add_dbus_adaptor(akonadi_mailfilter_agent_SRCS org.freedesktop.Akonadi.MailFilterAgent.xml mailfilteragent.h MailFilterAgent)
target_sources(akonadi_mailfilter_agent PRIVATE
    dummykernel.cpp
    filtermanager.cpp
    mailfilteragent.cpp
    dummykernel.h
    filtermanager.h
    mailfilteragent.h
    ${akonadi_mailfilter_agent_SRCS}
    )



ecm_qt_declare_logging_category(akonadi_mailfilter_agent HEADER mailfilteragent_debug.h IDENTIFIER MAILFILTERAGENT_LOG CATEGORY_NAME org.kde.pim.mailfilteragent
        DESCRIPTION "kmail (mailfilter agent)"
        OLD_CATEGORY_NAMES log_mailfilteragent
        EXPORT KMAIL
    )


if (COMPILE_WITH_UNITY_CMAKE_SUPPORT)
    set_target_properties(akonadi_mailfilter_agent PROPERTIES UNITY_BUILD ON)
endif()

if( APPLE )
    set_target_properties(akonadi_mailfilter_agent PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${kmail_SOURCE_DIR}/agents/Info.plist.template)
    set_target_properties(akonadi_mailfilter_agent PROPERTIES MACOSX_BUNDLE_GUI_IDENTIFIER "org.kde.Akonadi.mailfilter")
    set_target_properties(akonadi_mailfilter_agent PROPERTIES MACOSX_BUNDLE_BUNDLE_NAME "KDE Akonadi Email Filter")
endif ()


target_link_libraries(akonadi_mailfilter_agent
    KPim6::MailCommon
    KPim6::MessageComposer
    KPim6::PimCommon
    KPim6::AkonadiCore
    KPim6::AkonadiMime
    KPim6::AkonadiAgentBase
    KPim6::Mime
    KPim6::IdentityManagementCore
    KF6::DBusAddons
    KF6::Notifications
    KF6::WindowSystem
    KF6::I18n
    mailfilteragentprivate
    )

install(TARGETS akonadi_mailfilter_agent ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
install(FILES mailfilteragent.desktop DESTINATION "${KDE_INSTALL_DATAROOTDIR}/akonadi/agents")
install(FILES akonadi_mailfilter_agent.notifyrc DESTINATION ${KDE_INSTALL_KNOTIFYRCDIR} )

add_subdirectory(tests)
