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.0")
0005 
0006 project(Akonadi-Contact VERSION ${PIM_VERSION})
0007 
0008 # ECM setup
0009 
0010 set(KF_MIN_VERSION "5.246.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(ECMAddQch)
0033 
0034 
0035 option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF)
0036 add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)")
0037 
0038 
0039 set(AKONADI_CONTACTS_VERSION ${PIM_VERSION})
0040 set(KMIMELIB_VERSION "6.0.0")
0041 set(AKONADI_VERSION "6.0.0")
0042 set(GRANTLEETHEME_LIB_VERSION "6.0.0")
0043 set(KTEXTADDONS_MIN_VERSION "1.5.2")
0044 
0045 set(QT_REQUIRED_VERSION "6.6.0")
0046 find_package(Qt6 ${QT_REQUIRED_VERSION} CONFIG REQUIRED Widgets Test)
0047 ########### Find packages ###########
0048 find_package(KF6KIO ${KF_MIN_VERSION} CONFIG REQUIRED)
0049 find_package(KF6I18n ${KF_MIN_VERSION} CONFIG REQUIRED)
0050 find_package(KF6CoreAddons ${KF_MIN_VERSION} CONFIG REQUIRED)
0051 find_package(KF6Completion ${KF_MIN_VERSION} CONFIG REQUIRED)
0052 find_package(KF6Config ${KF_MIN_VERSION} CONFIG REQUIRED)
0053 find_package(KF6IconThemes ${KF_MIN_VERSION} CONFIG REQUIRED)
0054 find_package(KF6Service ${KF_MIN_VERSION} CONFIG REQUIRED)
0055 find_package(KF6TextWidgets ${KF_MIN_VERSION} CONFIG REQUIRED)
0056 find_package(KF6WidgetsAddons ${KF_MIN_VERSION} CONFIG REQUIRED)
0057 find_package(KF6XmlGui ${KF_MIN_VERSION} CONFIG REQUIRED)
0058 find_package(KF6Prison ${KF_MIN_VERSION} CONFIG REQUIRED)
0059 find_package(KF6Codecs ${KF_MIN_VERSION} CONFIG REQUIRED)
0060 
0061 find_package(KF6Contacts ${KF_MIN_VERSION} CONFIG REQUIRED)
0062 
0063 find_package(KPim6Mime ${KMIMELIB_VERSION} CONFIG REQUIRED)
0064 find_package(KPim6Akonadi ${AKONADI_VERSION} CONFIG REQUIRED)
0065 
0066 find_package(KPim6GrantleeTheme ${GRANTLEETHEME_LIB_VERSION} CONFIG REQUIRED)
0067 
0068 find_package(KF6TextTemplate CONFIG REQUIRED)
0069 
0070 find_package(KF6TextUtils ${KTEXTADDONS_MIN_VERSION} CONFIG REQUIRED)
0071 
0072 ############### Compilers flags ###############
0073 
0074 if (MSVC)
0075     # This sets the __cplusplus macro to a real value based on the version of C++ specified by
0076     # the /std switch. Without it MSVC keeps reporting C++98, so feature detection doesn't work.
0077     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:__cplusplus")
0078 endif()
0079 
0080 ########### Targets ###########
0081 
0082 
0083 add_definitions(-DQT_NO_CONTEXTLESS_CONNECT)
0084 ecm_set_disabled_deprecation_versions(QT 6.6.0 KF 5.248.0)
0085 
0086 
0087 if(BUILD_TESTING)
0088    add_definitions(-DBUILD_TESTING)
0089 endif()
0090 option(USE_UNITY_CMAKE_SUPPORT "Use UNITY cmake support (speedup compile time)" OFF)
0091 
0092 set(COMPILE_WITH_UNITY_CMAKE_SUPPORT OFF)
0093 if (USE_UNITY_CMAKE_SUPPORT)
0094     set(COMPILE_WITH_UNITY_CMAKE_SUPPORT ON)
0095 endif()
0096 
0097 add_subdirectory(src)
0098 add_subdirectory(serializers)
0099 
0100 ecm_qt_install_logging_categories(
0101         EXPORT AKONADICONTACTS
0102         FILE akonadi-contacts.categories
0103         DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}
0104         )
0105 
0106 
0107 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)
0108 ki18n_install(po)
0109 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)