Warning, /frameworks/kbookmarks/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 cmake_minimum_required(VERSION 3.16)
0002 
0003 set(KF_VERSION "5.116.0") # handled by release scripts
0004 set(KF_DEP_VERSION "5.115.0") # handled by release scripts
0005 project(KBookmarks VERSION ${KF_VERSION})
0006 
0007 include(FeatureSummary)
0008 find_package(ECM 5.115.0  NO_MODULE)
0009 set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://commits.kde.org/extra-cmake-modules")
0010 feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES)
0011 
0012 
0013 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
0014 
0015 include(KDEInstallDirs)
0016 include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE)
0017 include(KDECMakeSettings)
0018 include(KDEGitCommitHooks)
0019 include(ECMQtDeclareLoggingCategory)
0020 include(ECMDeprecationSettings)
0021 
0022 include(ECMGenerateExportHeader)
0023 include(ECMSetupVersion)
0024 include(ECMGenerateHeaders)
0025 
0026 include(ECMAddQch)
0027 include(ECMPoQmTools)
0028 
0029 set(EXCLUDE_DEPRECATED_BEFORE_AND_AT 0 CACHE STRING "Control the range of deprecated API excluded from the build [default=0].")
0030 
0031 option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF)
0032 add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)")
0033 
0034 ecm_setup_version(PROJECT
0035                   VARIABLE_PREFIX KBOOKMARKS
0036                   VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kbookmarks_version.h"
0037                   PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5BookmarksConfigVersion.cmake"
0038                   SOVERSION 5)
0039 
0040 # Dependencies
0041 set(REQUIRED_QT_VERSION 5.15.2)
0042 
0043 find_package(Qt${QT_MAJOR_VERSION} ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED Widgets Xml)
0044 if (NOT ANDROID)
0045   find_package(Qt${QT_MAJOR_VERSION} ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED DBus)
0046 endif()
0047 
0048 find_package(KF5Config ${KF_DEP_VERSION} REQUIRED)
0049 find_package(KF5CoreAddons ${KF_DEP_VERSION} REQUIRED)
0050 find_package(KF5Codecs ${KF_DEP_VERSION} REQUIRED)
0051 find_package(KF5ConfigWidgets ${KF_DEP_VERSION} REQUIRED)
0052 find_package(KF5WidgetsAddons ${KF_DEP_VERSION} REQUIRED)
0053 
0054 if(NOT EXCLUDE_DEPRECATED_BEFORE_AND_AT STREQUAL "CURRENT" AND EXCLUDE_DEPRECATED_BEFORE_AND_AT VERSION_LESS 5.69.0)
0055   find_package(KF5XmlGui ${KF_DEP_VERSION} REQUIRED)
0056 endif()
0057 
0058 ecm_install_po_files_as_qm(poqm)
0059 ecm_set_disabled_deprecation_versions(
0060     QT 5.15.2
0061     KF 5.95.0
0062 )
0063 
0064 
0065 add_subdirectory(src)
0066 if (BUILD_TESTING)
0067     add_subdirectory(tests)
0068     add_subdirectory(autotests)
0069 endif()
0070 
0071 # create a Config.cmake and a ConfigVersion.cmake file and install them
0072 set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KF5Bookmarks")
0073 
0074 if (BUILD_QCH)
0075     ecm_install_qch_export(
0076         TARGETS KF5Bookmarks_QCH
0077         FILE KF5BookmarksQchTargets.cmake
0078         DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
0079         COMPONENT Devel
0080     )
0081     set(PACKAGE_INCLUDE_QCHTARGETS "include(\"\${CMAKE_CURRENT_LIST_DIR}/KF5BookmarksQchTargets.cmake\")")
0082 endif()
0083 
0084 include(CMakePackageConfigHelpers)
0085 
0086 configure_package_config_file(
0087   "${CMAKE_CURRENT_SOURCE_DIR}/KF5BookmarksConfig.cmake.in"
0088   "${CMAKE_CURRENT_BINARY_DIR}/KF5BookmarksConfig.cmake"
0089   INSTALL_DESTINATION  ${CMAKECONFIG_INSTALL_DIR}
0090 )
0091 
0092 install(FILES
0093   "${CMAKE_CURRENT_BINARY_DIR}/KF5BookmarksConfig.cmake"
0094   "${CMAKE_CURRENT_BINARY_DIR}/KF5BookmarksConfigVersion.cmake"
0095   DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
0096   COMPONENT Devel
0097 )
0098 
0099 install(EXPORT KF5BookmarksTargets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" FILE KF5BookmarksTargets.cmake NAMESPACE KF5:: )
0100 
0101 install(FILES
0102    ${CMAKE_CURRENT_BINARY_DIR}/kbookmarks_version.h
0103   DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KBookmarks COMPONENT Devel
0104 )
0105 
0106 feature_summary(WHAT ALL   FATAL_ON_MISSING_REQUIRED_PACKAGES)
0107 
0108 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)