Warning, /graphics/skanlite/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 cmake_minimum_required(VERSION 3.16)
0002 
0003 # KDE Application Version, managed by release script
0004 set (RELEASE_SERVICE_VERSION_MAJOR "24")
0005 set (RELEASE_SERVICE_VERSION_MINOR "04")
0006 set (RELEASE_SERVICE_VERSION_MICRO "70")
0007 
0008 set(RELEASE_SERVICE_VERSION "${RELEASE_SERVICE_VERSION_MAJOR}.${RELEASE_SERVICE_VERSION_MINOR}.${RELEASE_SERVICE_VERSION_MICRO}")
0009 
0010 set(SKANLITE_VERSION_STRING "${RELEASE_SERVICE_VERSION}")
0011 
0012 project(skanlite VERSION ${RELEASE_SERVICE_VERSION})
0013 
0014 set(REQUIRED_QT_VERSION "5.15.0")
0015 set(KF_MIN_VERSION "5.90.0")
0016 
0017 # ECM setup (Extended Cmake Modules)
0018 find_package(ECM ${KF_MIN_VERSION} QUIET REQUIRED NO_MODULE)
0019 # ECM setup2 and include find same cmake module (copied from /usr/share/kde4/apps/cmake/modules/FindSane.cmake)
0020 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake-modules)
0021 
0022 include(KDEInstallDirs) # yields ${XDG_APPS_INSTALL_DIR}
0023 include(KDECMakeSettings)
0024 include(KDECompilerSettings NO_POLICY_SCOPE)
0025 
0026 include(FeatureSummary)
0027 include(ECMSetupVersion) # yiels ecm_setup_version
0028 include(ECMGenerateHeaders)
0029 include(CMakePackageConfigHelpers)
0030 include(CheckFunctionExists)
0031 include(GenerateExportHeader)
0032 include(ECMQtDeclareLoggingCategory)
0033 include(ECMInstallIcons)
0034 
0035 if (QT_MAJOR_VERSION STREQUAL "6")
0036     set(QT_REQUIRED_VERSION "6.4.0")
0037     set(KF_MIN_VERSION "5.240.0")
0038     set(KF_MAJOR_VERSION "6")
0039 else()
0040     set(KF_MAJOR_VERSION "5")
0041 endif()
0042 
0043 ecm_setup_version(
0044   ${SKANLITE_VERSION_STRING}
0045   VARIABLE_PREFIX SKANLITE
0046   VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/src/skanlite_version.h"
0047 )
0048 
0049 # Dependencies
0050 find_package(Qt${QT_MAJOR_VERSION} ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED Core Widgets)
0051 
0052 find_package(KF${KF_MAJOR_VERSION} ${KF_MIN_VERSION} REQUIRED COMPONENTS
0053         CoreAddons # KAboutData
0054         I18n
0055         KIO # contains the KIOWidgets which we use in target_link_libraries
0056         XmlGui # KAboutApplicationDialog
0057 )
0058 if (QT_MAJOR_VERSION STREQUAL "6")
0059     find_package(Qt6Core5Compat)
0060 endif()
0061 
0062 find_package(KF${KF_MAJOR_VERSION}DocTools ${KF_MIN_VERSION})  # yields kdoctools_create_handbook
0063 set_package_properties(KF${KF_MAJOR_VERSION}DocTools PROPERTIES DESCRIPTION
0064     "Tools to generate documentation"
0065     TYPE OPTIONAL
0066 )
0067 
0068 if (QT_MAJOR_VERSION STREQUAL "6")
0069     find_package(KSaneWidgets6 "${RELEASE_SERVICE_VERSION_MAJOR}.${RELEASE_SERVICE_VERSION_MINOR}" REQUIRED)
0070 else()
0071     find_package(KF5Sane "${RELEASE_SERVICE_VERSION_MAJOR}.${RELEASE_SERVICE_VERSION_MINOR}" REQUIRED)
0072 endif()
0073 
0074 add_definitions(
0075     -DQT_DISABLE_DEPRECATED_BEFORE=0x050F00
0076     -DQT_DEPRECATED_WARNINGS_SINCE=0x060000
0077     -DKF_DISABLE_DEPRECATED_BEFORE_AND_AT=0x055800
0078     -DKF_DEPRECATED_WARNINGS_SINCE=0x060000
0079 )
0080 
0081 # Subdirectories
0082 add_subdirectory(src)
0083 
0084 ki18n_install(po)
0085 if (KF${KF_MAJOR_VERSION}DocTools_FOUND)
0086     kdoctools_install(po)
0087     add_subdirectory(doc)
0088 endif()
0089 
0090 if(BUILD_TESTING)
0091    add_subdirectory(autotests)
0092    add_subdirectory(tests)
0093 endif()
0094 ecm_install_icons(ICONS 48-apps-org.kde.skanlite.svg DESTINATION ${KDE_INSTALL_ICONDIR})
0095 
0096 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)