Warning, /libraries/libmediawiki/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 #
0002 # Copyright (c) 2010-2016, Gilles Caulier, <caulier dot gilles at gmail dot com>
0003 #
0004 # Redistribution and use is allowed according to the terms of the BSD license.
0005 # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
0006
0007 cmake_minimum_required(VERSION 3.16.0)
0008
0009 # Used to set library's SONAME, change first digit on API/ABI break
0010 set(LIBMEDIAWIKI_LIBVERSION "5.38.0")
0011
0012 project(MediaWiki VERSION ${LIBMEDIAWIKI_LIBVERSION})
0013
0014 message(STATUS "----------------------------------------------------------------------------------")
0015 message(STATUS "Starting CMake configuration for: ${PROJECT_NAME}")
0016
0017 set(KF_MIN_VERSION "5.85.0")
0018 set(QT_MIN_VERSION "5.15.0")
0019
0020 ############## ECM setup #################################################################################################################
0021
0022 find_package(ECM ${KF_MIN_VERSION} CONFIG REQUIRED)
0023 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
0024
0025 include(KDEInstallDirs)
0026 include(KDECMakeSettings)
0027 include(KDECompilerSettings NO_POLICY_SCOPE)
0028
0029 include(ECMGenerateHeaders)
0030 include(ECMGeneratePriFile)
0031 include(ECMSetupVersion)
0032 include(ECMMarkNonGuiExecutable)
0033 include(ECMOptionalAddSubdirectory)
0034 include(CMakePackageConfigHelpers)
0035 include(GenerateExportHeader)
0036 include(FeatureSummary)
0037
0038 # Required Qt5 components to build this framework
0039 find_package(Qt5 ${QT_MIN_VERSION} NO_MODULE REQUIRED Core Network)
0040 find_package(KF5CoreAddons ${KF_MIN_VERSION} REQUIRED)
0041
0042 ecm_setup_version(${LIBMEDIAWIKI_LIBVERSION}
0043 VARIABLE_PREFIX MEDIAWIKI
0044 VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/mediawiki_version.h"
0045 PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5MediaWikiConfigVersion.cmake"
0046 )
0047
0048 # added with KDE_COMPILERSETTINGS_LEVEL 5.85.0
0049 remove_definitions(
0050 -DQT_NO_KEYWORDS
0051 -DQT_NO_FOREACH
0052 )
0053
0054 # Subdirectories
0055 add_subdirectory(src)
0056 add_subdirectory(autotests)
0057 add_subdirectory(tests)
0058
0059 # Create a Config.cmake and a ConfigVersion.cmake file and install them
0060 set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KF5MediaWiki")
0061
0062 configure_package_config_file(
0063 "${CMAKE_CURRENT_SOURCE_DIR}/KF5MediaWikiConfig.cmake.in"
0064 "${CMAKE_CURRENT_BINARY_DIR}/KF5MediaWikiConfig.cmake"
0065 INSTALL_DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
0066 )
0067
0068 install(FILES
0069 "${CMAKE_CURRENT_BINARY_DIR}/KF5MediaWikiConfig.cmake"
0070 "${CMAKE_CURRENT_BINARY_DIR}/KF5MediaWikiConfigVersion.cmake"
0071 DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
0072 COMPONENT Devel)
0073
0074 install(EXPORT KF5MediaWikiTargets
0075 DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
0076 FILE KF5MediaWikiTargets.cmake
0077 NAMESPACE KF5::)
0078
0079 install(FILES "${CMAKE_CURRENT_BINARY_DIR}/mediawiki_version.h"
0080 DESTINATION "${KDE_INSTALL_INCLUDEDIR_KF5}"
0081 COMPONENT Devel)
0082
0083 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)