Warning, /pim/akonadi-calendar/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 # SPDX-FileCopyrightText: none
0002 # SPDX-License-Identifier: BSD-3-Clause
0003 
0004 cmake_minimum_required(VERSION 3.16 FATAL_ERROR)
0005 
0006 set(PIM_VERSION "6.0.40")
0007 project(Akonadi-Calendar  VERSION ${PIM_VERSION})
0008 
0009 # ECM setup
0010 set(KF_MIN_VERSION "5.248.0")
0011 find_package(ECM ${KF_MIN_VERSION} CONFIG REQUIRED)
0012 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
0013 set(QT_REQUIRED_VERSION "6.6.0")
0014 
0015 include(KDEInstallDirs)
0016 include(KDECMakeSettings)
0017 include(KDECompilerSettings NO_POLICY_SCOPE)
0018 
0019 include(ECMGenerateExportHeader)
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(ECMQtDeclareLoggingCategory)
0030 include(ECMDeprecationSettings)
0031 include(ECMFeatureSummary)
0032 include(ECMAddQch)
0033 
0034 set(KPIM_MIME_VERSION "6.0.40")
0035 find_package(KPim6Mime ${KPIM_MIME_VERSION} CONFIG REQUIRED)
0036 set(AKONADICALENDAR_LIB_VERSION ${PIM_VERSION})
0037 set(AKONADICONTACT_LIB_VERSION "6.0.40")
0038 set(AKONADIMIME_LIB_VERSION "6.0.40")
0039 set(AKONADI_LIB_VERSION "6.0.40")
0040 set(MAILTRANSPORT_LIB_VERSION "6.0.40")
0041 set(CALENDARUTILS_LIB_VERSION "6.0.40")
0042 set(IDENTITYMANAGEMENT_LIB_VERSION "6.0.40")
0043 set(MESSAGECORE_LIB_VERSION "6.0.40")
0044 set(MESSAGECOMPOSER_LIB_VERSION "5.240.45")
0045 set(LIBKLEO_LIB_VERSION "6.0.40")
0046 
0047 ecm_setup_version(PROJECT VARIABLE_PREFIX AKONADICALENDAR
0048                         VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/akonadi-calendar_version.h"
0049                         PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KPim6AkonadiCalendarConfigVersion.cmake"
0050                         SOVERSION 6
0051 )
0052 
0053 configure_file(akonadi-calendar-version.h.in ${CMAKE_CURRENT_BINARY_DIR}/src/akonadi-calendar-version.h @ONLY)
0054 
0055 option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF)
0056 add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)")
0057 
0058 if(BUILD_TESTING)
0059    add_definitions(-DBUILD_TESTING)
0060 endif()
0061 
0062 ########### Find packages ###########
0063 find_package(KF6I18n ${KF_MIN_VERSION} CONFIG REQUIRED)
0064 find_package(KF6WidgetsAddons ${KF_MIN_VERSION} CONFIG REQUIRED)
0065 find_package(KF6XmlGui ${KF_MIN_VERSION} CONFIG REQUIRED)
0066 find_package(KF6KIO ${KF_MIN_VERSION} CONFIG REQUIRED)
0067 find_package(KF6Codecs ${KF_MIN_VERSION} CONFIG REQUIRED)
0068 find_package(KF6DBusAddons ${KF_MIN_VERSION} CONFIG REQUIRED)
0069 find_package(KF6Notifications ${KF_MIN_VERSION} CONFIG REQUIRED)
0070 find_package(KF6CalendarCore ${KF_MIN_VERSION} CONFIG REQUIRED)
0071 
0072 find_package(KPim6MailTransport ${MAILTRANSPORT_LIB_VERSION} CONFIG REQUIRED)
0073 find_package(KPim6IdentityManagementCore ${IDENTITYMANAGEMENT_LIB_VERSION} CONFIG REQUIRED)
0074 find_package(KPim6CalendarUtils ${CALENDARUTILS_LIB_VERSION} CONFIG REQUIRED)
0075 find_package(KPim6MessageCore ${MESSAGECORE_LIB_VERSION} CONFIG REQUIRED)
0076 find_package(KPim6MessageComposer ${MESSAGECOMPOSER_LIB_VERSION} CONFIG REQUIRED)
0077 find_package(KPim6Libkleo ${LIBKLEO_LIB_VERSION} CONFIG REQUIRED)
0078 
0079 find_package(KPim6Akonadi ${AKONADI_LIB_VERSION} CONFIG REQUIRED)
0080 find_package(KPim6AkonadiContactCore ${AKONADICONTACT_LIB_VERSION} CONFIG REQUIRED)
0081 find_package(KPim6AkonadiMime ${AKONADI_MIME_VERSION} CONFIG REQUIRED)
0082 
0083 ########### Targets ###########
0084 
0085 
0086 add_definitions(-DQT_NO_CONTEXTLESS_CONNECT)
0087 ecm_set_disabled_deprecation_versions(QT 6.6.0 KF 5.249.0)
0088 
0089 
0090 
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     add_definitions(-DCOMPILE_WITH_UNITY_CMAKE_SUPPORT)
0097 endif()
0098 
0099 add_subdirectory(src)
0100 add_subdirectory(serializers)
0101 add_subdirectory(reminder-daemon)
0102 add_subdirectory(calendar-plugin)
0103 if (BUILD_TESTING)
0104     add_subdirectory(autotests)
0105 endif ()
0106 
0107 ########### CMake Config Files ###########
0108 set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KPim6AkonadiCalendar")
0109 
0110 if (BUILD_QCH)
0111     ecm_install_qch_export(
0112         TARGETS KPim6AkonadiCalendar_QCH
0113         FILE KPim6AkonadiCalendarQchTargets.cmake
0114         DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
0115         COMPONENT Devel
0116     )
0117     set(PACKAGE_INCLUDE_QCHTARGETS "include(\"\${CMAKE_CURRENT_LIST_DIR}/KPim6AkonadiCalendarQchTargets.cmake\")")
0118 endif()
0119 
0120 configure_package_config_file(
0121   "${CMAKE_CURRENT_SOURCE_DIR}/KPimAkonadiCalendarConfig.cmake.in"
0122   "${CMAKE_CURRENT_BINARY_DIR}/KPim6AkonadiCalendarConfig.cmake"
0123   INSTALL_DESTINATION  ${CMAKECONFIG_INSTALL_DIR}
0124 )
0125 
0126 install(FILES
0127   "${CMAKE_CURRENT_BINARY_DIR}/KPim6AkonadiCalendarConfig.cmake"
0128   "${CMAKE_CURRENT_BINARY_DIR}/KPim6AkonadiCalendarConfigVersion.cmake"
0129   DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
0130   COMPONENT Devel
0131 )
0132 
0133 install(EXPORT KPim6AkonadiCalendarTargets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" FILE KPim6AkonadiCalendarTargets.cmake NAMESPACE KPim6::)
0134 
0135 install(FILES
0136    ${CMAKE_CURRENT_BINARY_DIR}/akonadi-calendar_version.h
0137   DESTINATION ${KDE_INSTALL_INCLUDEDIR}/KPim6/AkonadiCalendar COMPONENT Devel
0138 )
0139 ecm_qt_install_logging_categories(
0140         EXPORT AKONADI-CALENDAR
0141         FILE akonadi-calendar.categories
0142         DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}
0143         )
0144 
0145 
0146 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)
0147 ki18n_install(po)
0148 ecm_feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
0149