Warning, /pim/pim-sieve-editor/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # SPDX-FileCopyrightText: 2013-2024 Laurent Montel <montel@kde.org> 0002 # SPDX-License-Identifier: BSD-3-Clause 0003 0004 cmake_minimum_required(VERSION 3.16 FATAL_ERROR) 0005 set(PIM_VERSION "6.0.0") 0006 project( sieveeditor VERSION ${PIM_VERSION}) 0007 set(RELEASE_SERVICE_VERSION "24.02.0") 0008 0009 0010 set(KF_MIN_VERSION "5.246.0") 0011 set(QT_REQUIRED_VERSION "6.6.0") 0012 0013 find_package(ECM ${KF_MIN_VERSION} REQUIRED NO_MODULE) 0014 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) 0015 include(ECMInstallIcons) 0016 0017 0018 include(ECMSetupVersion) 0019 include(ECMAddTests) 0020 0021 include(GenerateExportHeader) 0022 include(ECMGenerateHeaders) 0023 0024 include(FeatureSummary) 0025 include(KDEGitCommitHooks) 0026 include(KDEClangFormat) 0027 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h *.c) 0028 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) 0029 include(CheckFunctionExists) 0030 0031 include(KDEInstallDirs) 0032 include(KDECMakeSettings) 0033 include(KDECompilerSettings NO_POLICY_SCOPE) 0034 include(ECMAddAppIcon) 0035 include(ECMQtDeclareLoggingCategory) 0036 include(ECMDeprecationSettings) 0037 0038 # Do NOT add quote 0039 set(KDEPIM_DEV_VERSION) 0040 0041 # add an extra space 0042 if(DEFINED KDEPIM_DEV_VERSION) 0043 set(KDEPIM_DEV_VERSION " ${KDEPIM_DEV_VERSION}") 0044 endif() 0045 0046 set(KDEPIM_VERSION "${PIM_VERSION}${KDEPIM_DEV_VERSION} (${RELEASE_SERVICE_VERSION})") 0047 0048 set(KMAILTRANSPORT_LIB_VERSION "5.240.85") 0049 0050 set(KDEPIM_LIB_VERSION "${PIM_VERSION}") 0051 set(KDEPIM_LIB_SOVERSION "6") 0052 0053 set(LIBKSIEVE_LIB_VERSION "5.240.85") 0054 set(PIMCOMMON_LIB_VERSION "5.240.86") 0055 set(KIMAP_LIB_VERSION "5.240.85") 0056 0057 0058 find_package(Qt6 ${QT_REQUIRED_VERSION} CONFIG REQUIRED Widgets Network) 0059 0060 # Find KF6 package 0061 find_package(KF6DBusAddons ${KF_MIN_VERSION} CONFIG REQUIRED) 0062 find_package(KF6CoreAddons ${KF_MIN_VERSION} REQUIRED) 0063 find_package(KF6Crash ${KF_MIN_VERSION} REQUIRED) 0064 find_package(KF6Bookmarks ${KF_MIN_VERSION} REQUIRED) 0065 find_package(KF6KIO ${KF_MIN_VERSION} REQUIRED) 0066 find_package(KF6XmlGui ${KF_MIN_VERSION} REQUIRED) 0067 find_package(KF6DocTools ${KF_MIN_VERSION}) 0068 find_package(KF6I18n ${KF_MIN_VERSION}) 0069 set_package_properties(KF6DocTools PROPERTIES DESCRIPTION 0070 "Tools to generate documentation" 0071 TYPE OPTIONAL 0072 ) 0073 find_package(KF6UserFeedback ${KF_MIN_VERSION} CONFIG) 0074 set_package_properties(KF6::UserFeedback PROPERTIES DESCRIPTION "User Feedback lib" TYPE OPTIONAL PURPOSE "Allow to send Telemetry Information (optional).") 0075 0076 0077 # Find KdepimLibs Package 0078 find_package(KPim6MailTransport ${KMAILTRANSPORT_LIB_VERSION} CONFIG REQUIRED) 0079 0080 find_package(KPim6PimCommon ${PIMCOMMON_LIB_VERSION} CONFIG REQUIRED) 0081 find_package(KPim6KSieveUi ${LIBKSIEVE_LIB_VERSION} CONFIG REQUIRED) 0082 find_package(KPim6IMAP ${KIMAP_LIB_VERSION} CONFIG REQUIRED) 0083 0084 find_package(Qt6Keychain CONFIG) 0085 set_package_properties(Qt6Keychain PROPERTIES 0086 DESCRIPTION "Provides support for secure credentials storage" 0087 URL "https://github.com/frankosterfeld/qtkeychain" 0088 TYPE REQUIRED) 0089 0090 if (Qt6Keychain_VERSION VERSION_LESS 0.14.2) 0091 MESSAGE(STATUS "Qt6KeyChain version is less 0.14.2. It will not support KWallet 6... It will not able to load password. Please update it.") 0092 endif() 0093 0094 0095 include_directories(${sieveeditor_SOURCE_DIR} ${sieveeditor_BINARY_DIR}) 0096 0097 add_definitions(-DQT_NO_CONTEXTLESS_CONNECT) 0098 ecm_set_disabled_deprecation_versions(QT 6.6 KF 5.248.0) 0099 0100 0101 option(USE_UNITY_CMAKE_SUPPORT "Use UNITY cmake support (speedup compile time)" OFF) 0102 0103 set(COMPILE_WITH_UNITY_CMAKE_SUPPORT OFF) 0104 if (USE_UNITY_CMAKE_SUPPORT) 0105 set(COMPILE_WITH_UNITY_CMAKE_SUPPORT ON) 0106 endif() 0107 0108 if(BUILD_TESTING) 0109 add_definitions(-DBUILD_TESTING) 0110 find_package(Qt6 ${QT_REQUIRED_VERSION} CONFIG REQUIRED Test) 0111 endif() 0112 add_subdirectory(src) 0113 if (BUILD_TESTING) 0114 add_subdirectory(autotests) 0115 endif() 0116 0117 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT) 0118 ki18n_install(po) 0119 0120 if(KF6DocTools_FOUND) 0121 kdoctools_install(po) 0122 add_subdirectory(doc) 0123 endif() 0124 0125 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) 0126