diff --git a/CMakeLists.txt b/CMakeLists.txt index a61fcdcf..85b9da06 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,94 +1,93 @@ cmake_minimum_required(VERSION 3.5) set(PIM_VERSION "5.13.40") project(KIdentityManagement VERSION ${PIM_VERSION}) # ECM setup set(KF5_MIN_VERSION "5.64.0") find_package(ECM ${KF5_MIN_VERSION} CONFIG REQUIRED) set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) include(KDEInstallDirs) include(KDECMakeSettings) include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE) include(GenerateExportHeader) include(ECMGenerateHeaders) include(ECMGeneratePriFile) include(ECMSetupVersion) include(FeatureSummary) include(ECMQtDeclareLoggingCategory) set(KIDENTITYMANAGEMENT_LIB_VERSION ${PIM_VERSION}) set(PIMTEXTEDIT_LIB_VERSION "5.13.40") ecm_setup_version(PROJECT VARIABLE_PREFIX KIDENTITYMANAGEMENT VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kidentitymanagement_version.h" PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5IdentityManagementConfigVersion.cmake" SOVERSION 5 ) ########### Find packages ########### find_package(Qt5Network NO_MODULE REQUIRED) find_package(KF5CoreAddons ${KF5_MIN_VERSION} CONFIG REQUIRED) -find_package(KF5Completion ${KF5_MIN_VERSION} CONFIG REQUIRED) find_package(KF5TextWidgets ${KF5_MIN_VERSION} CONFIG REQUIRED) find_package(KF5XmlGui ${KF5_MIN_VERSION} CONFIG REQUIRED) find_package(KF5KIO ${KF5_MIN_VERSION} CONFIG REQUIRED) find_package(KF5Config ${KF5_MIN_VERSION} CONFIG REQUIRED) find_package(KF5Codecs ${KF5_MIN_VERSION} CONFIG REQUIRED) find_package(KF5IconThemes ${KF5_MIN_VERSION} CONFIG REQUIRED) find_package(KF5PimTextEdit ${PIMTEXTEDIT_LIB_VERSION} CONFIG REQUIRED) add_definitions(-DTRANSLATION_DOMAIN=\"libkpimidentities5\") if (EXISTS "${CMAKE_SOURCE_DIR}/.git") add_definitions(-DQT_DISABLE_DEPRECATED_BEFORE=0x060000) add_definitions(-DKF_DISABLE_DEPRECATED_BEFORE_AND_AT=0x060000) endif() add_definitions(-DQT_NO_FOREACH) ########### Targets ########### add_subdirectory(src) if(BUILD_TESTING) add_subdirectory(autotests) endif() ########### CMake Config Files ########### set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KF5IdentityManagement") configure_package_config_file( "${CMAKE_CURRENT_SOURCE_DIR}/KF5IdentityManagementConfig.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/KF5IdentityManagementConfig.cmake" INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR} ) install(FILES "${CMAKE_CURRENT_BINARY_DIR}/KF5IdentityManagementConfig.cmake" "${CMAKE_CURRENT_BINARY_DIR}/KF5IdentityManagementConfigVersion.cmake" DESTINATION "${CMAKECONFIG_INSTALL_DIR}" COMPONENT Devel ) install(EXPORT KF5IdentityManagementTargets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" FILE KF5IdentityManagementTargets.cmake NAMESPACE KF5:: ) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/kidentitymanagement_version.h DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF5} COMPONENT Devel ) install(FILES kidentitymanagement.categories kidentitymanagement.renamecategories DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}) feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 200dac73..351bf053 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,76 +1,75 @@ set(kidentitymanagement_SRCS identity.cpp identitycombo.cpp identitymanager.cpp signature.cpp signatureconfigurator.cpp utils.cpp ) ecm_qt_declare_logging_category(kidentitymanagement_SRCS HEADER kidentitymanagement_debug.h IDENTIFIER KIDENTITYMANAGEMENT_LOG CATEGORY_NAME org.kde.pim.kidentitymanagement) qt5_add_dbus_adaptor(kidentitymanagement_SRCS org.kde.pim.IdentityManager.xml identitymanager.h KIdentityManagement::IdentityManager ) add_library(KF5IdentityManagement ${kidentitymanagement_SRCS}) generate_export_header(KF5IdentityManagement BASE_NAME kidentitymanagement) add_library(KF5::IdentityManagement ALIAS KF5IdentityManagement) target_include_directories(KF5IdentityManagement INTERFACE "$") target_include_directories(KF5IdentityManagement PUBLIC "$") target_link_libraries(KF5IdentityManagement PUBLIC KF5::CoreAddons KF5::PimTextEdit PRIVATE KF5::Codecs Qt5::Network - KF5::Completion KF5::I18n KF5::WidgetsAddons KF5::XmlGui KF5::KIOWidgets KF5::ConfigCore ) set_target_properties(KF5IdentityManagement PROPERTIES VERSION ${KIDENTITYMANAGEMENT_VERSION_STRING} SOVERSION ${KIDENTITYMANAGEMENT_SOVERSION} EXPORT_NAME IdentityManagement ) install(TARGETS KF5IdentityManagement EXPORT KF5IdentityManagementTargets ${KF5_INSTALL_TARGETS_DEFAULT_ARGS}) ########### Generate Headers ############### ecm_generate_headers(KIdentityManagement_CamelCase_HEADERS HEADER_NAMES Identity IdentityCombo IdentityManager Signature SignatureConfigurator Utils PREFIX KIdentityManagement REQUIRED_HEADERS KIdentityManagement_HEADERS ) ########### install files ############### install(FILES ${CMAKE_CURRENT_BINARY_DIR}/kidentitymanagement_export.h ${KIdentityManagement_HEADERS} DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF5}/KIdentityManagement/kidentitymanagement COMPONENT Devel ) install(FILES ${KIdentityManagement_CamelCase_HEADERS} DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF5}/KIdentityManagement/KIdentityManagement/ COMPONENT Devel ) install(FILES org.kde.pim.IdentityManager.xml DESTINATION ${KDE_INSTALL_DBUSINTERFACEDIR} RENAME kf5_org.kde.pim.IdentityManager.xml) ecm_generate_pri_file(BASE_NAME KIdentityManagement LIB_NAME KF5IdentityManagement DEPS "CoreAddons PimTextEdit" FILENAME_VAR PRI_FILENAME INCLUDE_INSTALL_DIR ${KDE_INSTALL_INCLUDEDIR_KF5}/KIdentityManagement) install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR})