Warning, /pim/libgravatar/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(gravatar VERSION ${PIM_VERSION}) 0007 0008 set(KF_MIN_VERSION "5.246.0") 0009 set(QT_REQUIRED_VERSION "6.6.0") 0010 find_package(ECM ${KF_MIN_VERSION} CONFIG REQUIRED) 0011 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) 0012 0013 include(KDEInstallDirs) 0014 include(KDECMakeSettings) 0015 include(KDECompilerSettings NO_POLICY_SCOPE) 0016 0017 include(ECMGenerateExportHeader) 0018 include(ECMSetupVersion) 0019 include(ECMGenerateHeaders) 0020 0021 include(FeatureSummary) 0022 include(KDEGitCommitHooks) 0023 include(KDEClangFormat) 0024 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h *.c) 0025 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) 0026 0027 include(ECMQtDeclareLoggingCategory) 0028 include(ECMDeprecationSettings) 0029 include(ECMAddTests) 0030 include(ECMAddQch) 0031 0032 option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF) 0033 add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)") 0034 0035 0036 set(LIBGRAVATAR_LIB_VERSION ${PIM_VERSION}) 0037 set(PIMCOMMON_LIB_VERSION "6.0.0") 0038 find_package(Qt6 ${QT_REQUIRED_VERSION} CONFIG REQUIRED Widgets Network) 0039 find_package(KF6I18n ${KF_MIN_VERSION} CONFIG REQUIRED) 0040 find_package(KF6Config ${KF_MIN_VERSION} CONFIG REQUIRED) 0041 find_package(KF6WidgetsAddons ${KF_MIN_VERSION} CONFIG REQUIRED) 0042 find_package(KF6TextWidgets ${KF_MIN_VERSION} CONFIG REQUIRED) 0043 find_package(KF6KIO ${KF_MIN_VERSION} CONFIG REQUIRED) 0044 find_package(KPim6PimCommon ${PIMCOMMON_LIB_VERSION} CONFIG REQUIRED) 0045 0046 ecm_setup_version(PROJECT VARIABLE_PREFIX GRAVATAR 0047 VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/src/gravatar_version.h" 0048 PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KPim6GravatarConfigVersion.cmake" 0049 SOVERSION 6 0050 ) 0051 0052 0053 ########### Targets ########### 0054 0055 0056 add_definitions(-DQT_NO_CONTEXTLESS_CONNECT) 0057 ecm_set_disabled_deprecation_versions(QT 6.6.0 KF 5.248.0) 0058 0059 0060 option(USE_UNITY_CMAKE_SUPPORT "Use UNITY cmake support (speedup compile time)" OFF) 0061 0062 set(COMPILE_WITH_UNITY_CMAKE_SUPPORT OFF) 0063 if (USE_UNITY_CMAKE_SUPPORT) 0064 set(COMPILE_WITH_UNITY_CMAKE_SUPPORT ON) 0065 endif() 0066 if(BUILD_TESTING) 0067 add_definitions(-DBUILD_TESTING) 0068 endif() 0069 0070 0071 add_subdirectory(src) 0072 0073 ########### CMake Config Files ########### 0074 set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KPim6Gravatar") 0075 if (BUILD_QCH) 0076 ecm_install_qch_export( 0077 TARGETS KPim6Gravatar_QCH 0078 FILE KPim6GravatarQchTargets.cmake 0079 DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0080 COMPONENT Devel 0081 ) 0082 set(PACKAGE_INCLUDE_QCHTARGETS "include(\"\${CMAKE_CURRENT_LIST_DIR}/KPim6GravatarQchTargets.cmake\")") 0083 endif() 0084 0085 configure_package_config_file( 0086 "${CMAKE_CURRENT_SOURCE_DIR}/KPimGravatarConfig.cmake.in" 0087 "${CMAKE_CURRENT_BINARY_DIR}/KPim6GravatarConfig.cmake" 0088 INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR} 0089 ) 0090 0091 install(FILES 0092 "${CMAKE_CURRENT_BINARY_DIR}/KPim6GravatarConfig.cmake" 0093 "${CMAKE_CURRENT_BINARY_DIR}/KPim6GravatarConfigVersion.cmake" 0094 DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0095 COMPONENT Devel 0096 ) 0097 0098 install(EXPORT KPim6GravatarTargets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0099 FILE KPim6GravatarTargets.cmake NAMESPACE KPim6::) 0100 0101 install(FILES 0102 ${CMAKE_CURRENT_BINARY_DIR}/src/gravatar_version.h 0103 DESTINATION ${KDE_INSTALL_INCLUDEDIR}/KPim6/Gravatar COMPONENT Devel 0104 ) 0105 0106 if (BUILD_TESTING) 0107 find_package(Qt6 ${QT_REQUIRED_VERSION} CONFIG REQUIRED Test) 0108 add_subdirectory(autotests) 0109 add_subdirectory(tests) 0110 endif() 0111 0112 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT) 0113 ki18n_install(po) 0114 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)