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