Warning, /plasma/plasma-activities/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # vim:set softtabstop=3 shiftwidth=3 tabstop=3 expandtab:
0002 cmake_minimum_required(VERSION 3.16)
0003
0004 set(PROJECT_VERSION "6.0.80")
0005 project(PlasmaActivities VERSION ${PROJECT_VERSION})
0006 set(PROJECT_VERSION_MAJOR "6")
0007
0008 set(QT_MIN_VERSION "6.6.0")
0009 set(KF6_MIN_VERSION "5.240.0")
0010 set(KDE_COMPILERSETTINGS_LEVEL "5.82")
0011
0012 set(CMAKE_CXX_STANDARD 20)
0013 set(CMAKE_CXX_STANDARD_REQUIRED ON)
0014
0015 find_package(ECM ${KF6_MIN_VERSION} REQUIRED NO_MODULE)
0016 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
0017
0018 option (PLASMA_ACTIVITIES_LIBRARY_ONLY "If true, compiles only the PlasmaActivities library, without the QML imports." OFF)
0019 option (PLASMA_ACTIVITIES_ENABLE_EXCEPTIONS "If you have Boost 1.53, you need to build PlasmaActivities with exceptions enabled. This is UNTESTED and EXPERIMENTAL!" OFF)
0020
0021 set (PLASMA_ACTIVITIES_CURRENT_ROOT_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
0022
0023 include(FeatureSummary)
0024 include(KDEInstallDirs)
0025 include(KDECMakeSettings)
0026 include(KDEGitCommitHooks)
0027 include(KDECompilerSettings NO_POLICY_SCOPE)
0028 include(ECMGenerateExportHeader)
0029 include(ECMGenerateHeaders)
0030 include(ECMGeneratePkgConfigFile)
0031 include(ECMQtDeclareLoggingCategory)
0032 include(ECMAddQch)
0033 include(ECMMarkNonGuiExecutable)
0034 include(ECMDeprecationSettings)
0035 include(ECMQmlModule)
0036
0037 option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF)
0038 add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)")
0039
0040 find_package (Qt6 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS Core DBus)
0041
0042 include (CMakePackageConfigHelpers)
0043 include (ECMSetupVersion)
0044
0045 set(plasma_activities_version_header "${CMAKE_CURRENT_BINARY_DIR}/src/lib/plasma_activities_version.h")
0046 ecm_setup_version (
0047 PROJECT
0048 VARIABLE_PREFIX PLASMA_ACTIVITIES
0049 VERSION_HEADER "${plasma_activities_version_header}"
0050 PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/PlasmaActivitiesConfigVersion.cmake"
0051 SOVERSION 6
0052 )
0053
0054 ecm_set_disabled_deprecation_versions(
0055 QT 6.4
0056 KF 5.102.0
0057 )
0058
0059 add_subdirectory (src)
0060 if (BUILD_TESTING)
0061 add_subdirectory (autotests)
0062 add_subdirectory (tests)
0063 endif()
0064
0065 set (CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/PlasmaActivities")
0066
0067 if (BUILD_QCH)
0068 ecm_install_qch_export(
0069 TARGETS PlasmaActivities_QCH
0070 FILE PlasmaActivitiesLibraryQchTargets.cmake
0071 DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
0072 COMPONENT Devel
0073 )
0074 set(PACKAGE_INCLUDE_QCHTARGETS "include(\"\${CMAKE_CURRENT_LIST_DIR}/PlasmaActivitiesLibraryQchTargets.cmake\")")
0075 endif()
0076
0077 install (
0078 EXPORT PlasmaActivitiesLibraryTargets
0079 DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
0080 FILE PlasmaActivitiesLibraryTargets.cmake
0081 NAMESPACE Plasma::
0082 )
0083
0084 configure_package_config_file (
0085 "${CMAKE_CURRENT_SOURCE_DIR}/PlasmaActivitiesConfig.cmake.in"
0086 "${CMAKE_CURRENT_BINARY_DIR}/PlasmaActivitiesConfig.cmake"
0087 INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR}
0088 )
0089
0090 install (
0091 FILES "${CMAKE_CURRENT_BINARY_DIR}/PlasmaActivitiesConfig.cmake"
0092 "${CMAKE_CURRENT_BINARY_DIR}/PlasmaActivitiesConfigVersion.cmake"
0093 DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
0094 COMPONENT Devel
0095 )
0096
0097 install (
0098 FILES ${plasma_activities_version_header}
0099 DESTINATION ${KDE_INSTALL_INCLUDEDIR}/PlasmaActivities COMPONENT Devel
0100 )
0101
0102 # Write out the features
0103 feature_summary (WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
0104
0105 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)