Warning, /pim/kontactinterface/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(KontactInterface VERSION ${PIM_VERSION}) 0007 0008 # ECM setup 0009 set(KF_MIN_VERSION "5.248.0") 0010 set(QT_REQUIRED_VERSION "6.6.0") 0011 find_package(ECM ${KF_MIN_VERSION} CONFIG REQUIRED) 0012 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) 0013 0014 include(KDEInstallDirs) 0015 include(KDECMakeSettings) 0016 include(KDECompilerSettings NO_POLICY_SCOPE) 0017 0018 include(ECMGenerateExportHeader) 0019 include(ECMGenerateHeaders) 0020 0021 include(ECMSetupVersion) 0022 include(FeatureSummary) 0023 include(KDEGitCommitHooks) 0024 include(KDEClangFormat) 0025 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h *.c) 0026 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) 0027 0028 include(ECMQtDeclareLoggingCategory) 0029 include(ECMDeprecationSettings) 0030 include(ECMFeatureSummary) 0031 include(ECMSetupQtPluginMacroNames) 0032 include(ECMAddQch) 0033 0034 option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF) 0035 add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)") 0036 0037 add_definitions(-DTRANSLATION_DOMAIN=\"kontactinterfaces6\") 0038 0039 set(KONTACTINTERFACE_LIB_VERSION ${PIM_VERSION}) 0040 set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KPim6KontactInterface") 0041 0042 ecm_setup_version(PROJECT VARIABLE_PREFIX KONTACTINTERFACE 0043 VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/src/kontactinterface_version.h" 0044 PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KPim6KontactInterfaceConfigVersion.cmake" 0045 SOVERSION 6 0046 ) 0047 0048 ecm_setup_qtplugin_macro_names( 0049 JSON_ARG2 0050 EXPORT_KONTACT_PLUGIN_WITH_JSON 0051 CONFIG_CODE_VARIABLE 0052 PACKAGE_SETUP_AUTOMOC_VARIABLES 0053 ) 0054 0055 ########### Find packages ########### 0056 find_package(KF6 ${KF_MIN_VERSION} REQUIRED COMPONENTS 0057 CoreAddons 0058 Parts 0059 WindowSystem 0060 I18n 0061 XmlGui 0062 ) 0063 0064 if (NOT APPLE AND NOT WIN32) 0065 find_package(X11 REQUIRED) 0066 endif() 0067 0068 option(USE_UNITY_CMAKE_SUPPORT "Use UNITY cmake support (speedup compile time)" OFF) 0069 0070 set(COMPILE_WITH_UNITY_CMAKE_SUPPORT OFF) 0071 if (USE_UNITY_CMAKE_SUPPORT) 0072 set(COMPILE_WITH_UNITY_CMAKE_SUPPORT ON) 0073 endif() 0074 add_definitions(-DQT_NO_CONTEXTLESS_CONNECT) 0075 ecm_set_disabled_deprecation_versions(QT 6.6 0076 KF 5.249.0 0077 KPARTS 5.76 # componentData() 0078 ) 0079 set(KONTACTINTERFACE_HAVE_X11 ${X11_FOUND}) 0080 0081 add_subdirectory(src) 0082 0083 configure_file(config-kontactinterface.h.in ${CMAKE_CURRENT_BINARY_DIR}/config-kontactinterface.h ) 0084 if (BUILD_QCH) 0085 ecm_install_qch_export( 0086 TARGETS KPim6KontactInterface_QCH 0087 FILE KPim6KontactInterfaceQchTargets.cmake 0088 DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0089 COMPONENT Devel 0090 ) 0091 set(PACKAGE_INCLUDE_QCHTARGETS "include(\"\${CMAKE_CURRENT_LIST_DIR}/KPim6KontactInterfaceQchTargets.cmake\")") 0092 endif() 0093 0094 configure_package_config_file( 0095 "${CMAKE_CURRENT_SOURCE_DIR}/KPimKontactInterfaceConfig.cmake.in" 0096 "${CMAKE_CURRENT_BINARY_DIR}/KPim6KontactInterfaceConfig.cmake" 0097 INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR} 0098 ) 0099 0100 ########### Install Files ########### 0101 install(FILES 0102 "${CMAKE_CURRENT_BINARY_DIR}/KPim6KontactInterfaceConfig.cmake" 0103 "${CMAKE_CURRENT_BINARY_DIR}/KPim6KontactInterfaceConfigVersion.cmake" 0104 DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0105 COMPONENT Devel 0106 ) 0107 0108 0109 install(FILES 0110 ${CMAKE_CURRENT_BINARY_DIR}/src/kontactinterface_version.h 0111 DESTINATION ${KDE_INSTALL_INCLUDEDIR}/KPim6/KontactInterface 0112 COMPONENT Devel 0113 ) 0114 0115 0116 install(EXPORT KPim6KontactInterfaceTargets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0117 FILE KPim6KontactInterfaceTargets.cmake NAMESPACE KPim6::) 0118 0119 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT) 0120 ki18n_install(po) 0121 ecm_feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) 0122