Warning, /plasma/kscreen/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 cmake_minimum_required(VERSION 3.16)
0002
0003 project(KScreen)
0004 set(PROJECT_VERSION "5.27.10")
0005 set(KSCREEN_VERSION ${PROJECT_VERSION})
0006
0007 add_definitions("-DKSCREEN_VERSION=\"${KSCREEN_VERSION}\"")
0008
0009 set(QT_MIN_VERSION "5.15.2")
0010 set(KF5_MIN_VERSION "5.102.0")
0011 set(KDE_COMPILERSETTINGS_LEVEL "5.82")
0012
0013 set(CMAKE_CXX_STANDARD 17)
0014 set(CMAKE_CXX_STANDARD_REQUIRED ON)
0015
0016 find_package(ECM ${KF5_MIN_VERSION} REQUIRED NO_MODULE)
0017 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
0018
0019 include(KDEInstallDirs)
0020 include(KDECMakeSettings)
0021 include(KDECompilerSettings NO_POLICY_SCOPE)
0022 include(ECMConfiguredInstall)
0023 include(ECMGenerateDBusServiceFile)
0024 include(ECMInstallIcons)
0025 include(ECMMarkAsTest)
0026 include(ECMQtDeclareLoggingCategory)
0027 include(FeatureSummary)
0028 include(KDEClangFormat)
0029 include(KDEGitCommitHooks)
0030 include(ECMDeprecationSettings)
0031
0032 include_directories("${CMAKE_CURRENT_BINARY_DIR}")
0033
0034 find_package(Qt${QT_MAJOR_VERSION} ${QT_MIN_VERSION} REQUIRED COMPONENTS Test Sensors)
0035 find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS
0036 Config
0037 DBusAddons
0038 Declarative
0039 GlobalAccel
0040 I18n
0041 KCMUtils
0042 Plasma
0043 PlasmaQuick
0044 XmlGui
0045 )
0046
0047 find_package(KF5Screen ${PROJECT_VERSION} REQUIRED)
0048
0049 find_package(X11)
0050 set_package_properties(X11 PROPERTIES
0051 DESCRIPTION "X11 libraries"
0052 URL "https://www.x.org"
0053 PURPOSE "Required for building the X11 based workspace"
0054 TYPE REQUIRED
0055 )
0056
0057
0058 find_package(LayerShellQt)
0059 set_package_properties(LayerShellQt PROPERTIES
0060 DESCRIPTION "Layer shell Qt bindings"
0061 URL "https://invent.kde.org/plasma/layer-shell-qt"
0062 PURPOSE "Required for the screen selection osd"
0063 TYPE REQUIRED
0064 )
0065
0066 if(X11_FOUND)
0067 set(HAVE_X11 1)
0068 find_package(X11_XCB REQUIRED)
0069 find_package(XCB REQUIRED COMPONENTS XCB ATOM)
0070 if (QT_MAJOR_VERSION EQUAL "5")
0071 find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS X11Extras)
0072 endif()
0073 endif()
0074
0075 configure_file(config-X11.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-X11.h)
0076
0077 ecm_set_disabled_deprecation_versions(QT 5.15.2
0078 KF 5.101
0079 )
0080
0081
0082 add_subdirectory(kcm)
0083 add_subdirectory(kded)
0084 add_subdirectory(osd)
0085 add_subdirectory(plasmoid)
0086 add_subdirectory(tests)
0087 add_subdirectory(console)
0088
0089 # add clang-format target for all our real source files
0090 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h)
0091 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})
0092 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)
0093
0094 ecm_qt_install_logging_categories(EXPORT KSCREEN FILE kscreen.categories DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR})
0095
0096 ki18n_install(po)
0097
0098 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)