Warning, /pim/kpkpass/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # SPDX-FileCopyrightText: 2018-2020 Volker Krause <vkrause@kde.org> 0002 # SPDX-FileCopyrightText: 2018-2024 Laurent Montel <montel@kde.org> 0003 # SPDX-License-Identifier: BSD-3-Clause 0004 0005 cmake_minimum_required(VERSION 3.16 FATAL_ERROR) 0006 set(PIM_VERSION "6.0.40") 0007 project(KPkPass VERSION ${PIM_VERSION}) 0008 0009 set(KF_MIN_VERSION "5.248.0") 0010 set(QT_REQUIRED_VERSION "6.6.0") 0011 find_package(ECM ${KF_MIN_VERSION} REQUIRED NO_MODULE) 0012 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) 0013 set(CMAKE_CXX_STANDARD 20) 0014 0015 include(KDECompilerSettings NO_POLICY_SCOPE) 0016 include(ECMAddTests) 0017 include(ECMGenerateHeaders) 0018 include(ECMQtDeclareLoggingCategory) 0019 include(ECMDeprecationSettings) 0020 include(ECMFeatureSummary) 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 include(KDEInstallDirs) 0028 include(KDECMakeSettings) 0029 include(ECMGenerateExportHeader) 0030 include(ECMAddQch) 0031 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 0037 ecm_setup_version(PROJECT VARIABLE_PREFIX KPKPASS 0038 VERSION_HEADER src/kpkpass_version.h 0039 PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KPim6PkPassConfigVersion.cmake" 0040 SOVERSION 6 0041 ) 0042 0043 find_package(Qt6 ${QT_REQUIRED_VERSION} REQUIRED COMPONENTS Gui) 0044 find_package(KF6 ${KF_MIN_VERSION} REQUIRED COMPONENTS Archive) 0045 if (NOT ANDROID) 0046 find_package(SharedMimeInfo 1.3 REQUIRED) 0047 endif() 0048 0049 add_definitions(-DQT_NO_CONTEXTLESS_CONNECT) 0050 ecm_set_disabled_deprecation_versions(QT 6.6.0 KF 5.249.0) 0051 0052 0053 0054 option(USE_UNITY_CMAKE_SUPPORT "Use UNITY cmake support (speedup compile time)" OFF) 0055 0056 set(COMPILE_WITH_UNITY_CMAKE_SUPPORT OFF) 0057 if (USE_UNITY_CMAKE_SUPPORT) 0058 set(COMPILE_WITH_UNITY_CMAKE_SUPPORT ON) 0059 endif() 0060 0061 add_subdirectory(src) 0062 if (BUILD_TESTING) 0063 add_subdirectory(autotests) 0064 endif() 0065 0066 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT) 0067 ecm_feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES) 0068 0069 0070 set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KPim6PkPass") 0071 if (BUILD_QCH) 0072 ecm_install_qch_export( 0073 TARGETS KPim6PkPass_QCH 0074 FILE KPim6PkPassQchTargets.cmake 0075 DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0076 COMPONENT Devel 0077 ) 0078 set(PACKAGE_INCLUDE_QCHTARGETS "include(\"\${CMAKE_CURRENT_LIST_DIR}/KPim6PkPassQchTargets.cmake\")") 0079 endif() 0080 0081 configure_package_config_file( 0082 "${CMAKE_CURRENT_SOURCE_DIR}/KPimPkPassConfig.cmake.in" 0083 "${CMAKE_CURRENT_BINARY_DIR}/KPim6PkPassConfig.cmake" 0084 INSTALL_DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0085 ) 0086 0087 install(FILES 0088 "${CMAKE_CURRENT_BINARY_DIR}/KPim6PkPassConfig.cmake" 0089 "${CMAKE_CURRENT_BINARY_DIR}/KPim6PkPassConfigVersion.cmake" 0090 DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0091 COMPONENT Devel) 0092 0093 install(EXPORT KPim6PkPassTargets 0094 DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0095 FILE KPim6PkPassTargets.cmake 0096 NAMESPACE KPim6:: 0097 ) 0098