Warning, /pim/akonadi-contacts/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # SPDX-FileCopyrightText: none 0002 # SPDX-License-Identifier: BSD-3-Clause 0003 cmake_minimum_required(VERSION 3.16 FATAL_ERROR) 0004 set(PIM_VERSION "6.0.40") 0005 0006 project(Akonadi-Contact VERSION ${PIM_VERSION}) 0007 0008 # ECM setup 0009 0010 set(KF_MIN_VERSION "5.248.0") 0011 0012 find_package(ECM ${KF_MIN_VERSION} CONFIG REQUIRED) 0013 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) 0014 0015 include(KDEInstallDirs) 0016 include(KDECMakeSettings) 0017 include(KDECompilerSettings NO_POLICY_SCOPE) 0018 0019 include(GenerateExportHeader) 0020 include(ECMGenerateHeaders) 0021 0022 include(ECMSetupVersion) 0023 include(FeatureSummary) 0024 include(KDEGitCommitHooks) 0025 include(KDEClangFormat) 0026 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h *.c) 0027 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) 0028 0029 include(ECMInstallIcons) 0030 include(ECMQtDeclareLoggingCategory) 0031 include(ECMDeprecationSettings) 0032 include(ECMFeatureSummary) 0033 include(ECMAddQch) 0034 0035 0036 option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF) 0037 add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)") 0038 0039 0040 set(AKONADI_CONTACTS_VERSION ${PIM_VERSION}) 0041 set(KMIMELIB_VERSION "6.0.40") 0042 set(AKONADI_VERSION "6.0.40") 0043 set(GRANTLEETHEME_LIB_VERSION "6.0.40") 0044 set(KTEXTADDONS_MIN_VERSION "1.5.3") 0045 0046 set(QT_REQUIRED_VERSION "6.6.0") 0047 find_package(Qt6 ${QT_REQUIRED_VERSION} CONFIG REQUIRED Widgets Test) 0048 ########### Find packages ########### 0049 find_package(KF6KIO ${KF_MIN_VERSION} CONFIG REQUIRED) 0050 find_package(KF6I18n ${KF_MIN_VERSION} CONFIG REQUIRED) 0051 find_package(KF6CoreAddons ${KF_MIN_VERSION} CONFIG REQUIRED) 0052 find_package(KF6Completion ${KF_MIN_VERSION} CONFIG REQUIRED) 0053 find_package(KF6Config ${KF_MIN_VERSION} CONFIG REQUIRED) 0054 find_package(KF6IconThemes ${KF_MIN_VERSION} CONFIG REQUIRED) 0055 find_package(KF6Service ${KF_MIN_VERSION} CONFIG REQUIRED) 0056 find_package(KF6TextWidgets ${KF_MIN_VERSION} CONFIG REQUIRED) 0057 find_package(KF6WidgetsAddons ${KF_MIN_VERSION} CONFIG REQUIRED) 0058 find_package(KF6XmlGui ${KF_MIN_VERSION} CONFIG REQUIRED) 0059 find_package(KF6Prison ${KF_MIN_VERSION} CONFIG REQUIRED) 0060 find_package(KF6Codecs ${KF_MIN_VERSION} CONFIG REQUIRED) 0061 0062 find_package(KF6Contacts ${KF_MIN_VERSION} CONFIG REQUIRED) 0063 0064 find_package(KPim6Mime ${KMIMELIB_VERSION} CONFIG REQUIRED) 0065 find_package(KPim6Akonadi ${AKONADI_VERSION} CONFIG REQUIRED) 0066 0067 find_package(KPim6GrantleeTheme ${GRANTLEETHEME_LIB_VERSION} CONFIG REQUIRED) 0068 0069 find_package(KF6TextTemplate CONFIG REQUIRED) 0070 0071 find_package(KF6TextUtils ${KTEXTADDONS_MIN_VERSION} CONFIG REQUIRED) 0072 0073 ############### Compilers flags ############### 0074 0075 if (MSVC) 0076 # This sets the __cplusplus macro to a real value based on the version of C++ specified by 0077 # the /std switch. Without it MSVC keeps reporting C++98, so feature detection doesn't work. 0078 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:__cplusplus") 0079 endif() 0080 0081 ########### Targets ########### 0082 0083 0084 add_definitions(-DQT_NO_CONTEXTLESS_CONNECT) 0085 ecm_set_disabled_deprecation_versions(QT 6.6.0 KF 5.249.0) 0086 0087 0088 if(BUILD_TESTING) 0089 add_definitions(-DBUILD_TESTING) 0090 endif() 0091 option(USE_UNITY_CMAKE_SUPPORT "Use UNITY cmake support (speedup compile time)" OFF) 0092 0093 set(COMPILE_WITH_UNITY_CMAKE_SUPPORT OFF) 0094 if (USE_UNITY_CMAKE_SUPPORT) 0095 set(COMPILE_WITH_UNITY_CMAKE_SUPPORT ON) 0096 endif() 0097 0098 add_subdirectory(src) 0099 add_subdirectory(serializers) 0100 0101 ecm_qt_install_logging_categories( 0102 EXPORT AKONADICONTACTS 0103 FILE akonadi-contacts.categories 0104 DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR} 0105 ) 0106 0107 0108 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT) 0109 ki18n_install(po) 0110 ecm_feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)