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.40")
0006 project( sieveeditor VERSION ${PIM_VERSION})
0007 set(RELEASE_SERVICE_VERSION "24.04.40")
0008 
0009 
0010 set(KF_MIN_VERSION "5.248.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 include(ECMFeatureSummary)
0038 
0039 # Do NOT add quote
0040 set(KDEPIM_DEV_VERSION alpha)
0041 
0042 # add an extra space
0043 if(DEFINED KDEPIM_DEV_VERSION)
0044     set(KDEPIM_DEV_VERSION " ${KDEPIM_DEV_VERSION}")
0045 endif()
0046 
0047 set(KDEPIM_VERSION "${PIM_VERSION}${KDEPIM_DEV_VERSION} (${RELEASE_SERVICE_VERSION})")
0048 
0049 set(KMAILTRANSPORT_LIB_VERSION "5.240.85")
0050 
0051 set(KDEPIM_LIB_VERSION "${PIM_VERSION}")
0052 set(KDEPIM_LIB_SOVERSION "6")
0053 
0054 set(LIBKSIEVE_LIB_VERSION "5.240.85")
0055 set(PIMCOMMON_LIB_VERSION "5.240.86")
0056 set(KIMAP_LIB_VERSION "5.240.85")
0057 
0058 
0059 find_package(Qt6 ${QT_REQUIRED_VERSION} CONFIG REQUIRED Widgets Network)
0060 
0061 # Find KF6 package
0062 find_package(KF6DBusAddons ${KF_MIN_VERSION} CONFIG REQUIRED)
0063 find_package(KF6CoreAddons ${KF_MIN_VERSION} REQUIRED)
0064 find_package(KF6Crash ${KF_MIN_VERSION} REQUIRED)
0065 find_package(KF6Bookmarks ${KF_MIN_VERSION} REQUIRED)
0066 find_package(KF6KIO ${KF_MIN_VERSION} REQUIRED)
0067 find_package(KF6XmlGui ${KF_MIN_VERSION} REQUIRED)
0068 find_package(KF6DocTools ${KF_MIN_VERSION})
0069 find_package(KF6I18n ${KF_MIN_VERSION})
0070 set_package_properties(KF6DocTools PROPERTIES DESCRIPTION
0071     "Tools to generate documentation"
0072     TYPE OPTIONAL
0073 )
0074 find_package(KF6UserFeedback ${KF_MIN_VERSION} CONFIG)
0075 set_package_properties(KF6::UserFeedback PROPERTIES DESCRIPTION "User Feedback lib" TYPE OPTIONAL PURPOSE "Allow to send Telemetry Information (optional).")
0076 
0077 
0078 # Find KdepimLibs Package
0079 find_package(KPim6MailTransport ${KMAILTRANSPORT_LIB_VERSION} CONFIG REQUIRED)
0080 
0081 find_package(KPim6PimCommon ${PIMCOMMON_LIB_VERSION} CONFIG REQUIRED)
0082 find_package(KPim6KSieveUi ${LIBKSIEVE_LIB_VERSION} CONFIG REQUIRED)
0083 find_package(KPim6IMAP ${KIMAP_LIB_VERSION} CONFIG REQUIRED)
0084 
0085 find_package(Qt6Keychain CONFIG)
0086 set_package_properties(Qt6Keychain PROPERTIES
0087                                    DESCRIPTION "Provides support for secure credentials storage"
0088                                    URL "https://github.com/frankosterfeld/qtkeychain"
0089                                    TYPE REQUIRED)
0090 
0091 if (Qt6Keychain_VERSION VERSION_LESS 0.14.2)
0092      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.")
0093 endif()
0094 
0095 
0096 include_directories(${sieveeditor_SOURCE_DIR} ${sieveeditor_BINARY_DIR})
0097 
0098 add_definitions(-DQT_NO_CONTEXTLESS_CONNECT)
0099 ecm_set_disabled_deprecation_versions(QT 6.6  KF 5.249.0)
0100 
0101 
0102 option(USE_UNITY_CMAKE_SUPPORT "Use UNITY cmake support (speedup compile time)" OFF)
0103 
0104 set(COMPILE_WITH_UNITY_CMAKE_SUPPORT OFF)
0105 if (USE_UNITY_CMAKE_SUPPORT)
0106     set(COMPILE_WITH_UNITY_CMAKE_SUPPORT ON)
0107 endif()
0108 
0109 if(BUILD_TESTING)
0110    add_definitions(-DBUILD_TESTING)
0111    find_package(Qt6 ${QT_REQUIRED_VERSION} CONFIG REQUIRED Test)
0112 endif()
0113 add_subdirectory(src)
0114 if (BUILD_TESTING)
0115     add_subdirectory(autotests)
0116 endif()
0117 
0118 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)
0119 ki18n_install(po)
0120 
0121 if(KF6DocTools_FOUND)
0122     kdoctools_install(po)
0123     add_subdirectory(doc)
0124 endif()
0125 
0126 ecm_feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
0127