Warning, /plasma/ksystemstats/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # SPDX-License-Identifier: BSD-2-Clause 0002 # SPDX-FileCopyrightText: 2021 Arjen Hiemstra <ahiemstra@heimr.nl> 0003 0004 cmake_minimum_required(VERSION 3.16) 0005 0006 project(ksystemstats) 0007 set(PROJECT_VERSION "6.0.80") 0008 0009 set(PROJECT_DEP_VERSION "6.0.80") 0010 set(QT_MIN_VERSION "6.6.0") 0011 set(KF6_MIN_VERSION "5.240.0") 0012 set(KDE_COMPILERSETTINGS_LEVEL "5.82") 0013 0014 find_package(ECM ${KF6_MIN_VERSION} REQUIRED NO_MODULE) 0015 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake) 0016 0017 include(CheckIncludeFiles) 0018 include(KDEInstallDirs) 0019 include(KDECMakeSettings) 0020 include(KDECompilerSettings NO_POLICY_SCOPE) 0021 include(KDEClangFormat) 0022 include(ECMAddTests) 0023 include(ECMInstallIcons) 0024 include(FeatureSummary) 0025 include(ECMConfiguredInstall) 0026 include(ECMGenerateDBusServiceFile) 0027 include(ECMDeprecationSettings) 0028 0029 find_package(Qt6 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS Core Test) 0030 find_package(KF6 ${KF6_MIN_VERSION} REQUIRED COMPONENTS CoreAddons Solid KIO) 0031 find_package(KSysGuard ${PROJECT_DEP_VERSION} REQUIRED) 0032 0033 find_package(KF6NetworkManagerQt ${KF6_MIN_VERSION}) 0034 set_package_properties(KF6NetworkManagerQt PROPERTIES 0035 TYPE RECOMMENDED 0036 PURPOSE "Provides an improved backend for Network statistics" 0037 ) 0038 0039 add_definitions(-DQT_NO_URL_CAST_FROM_STRING) 0040 add_definitions(-DQT_USE_QSTRINGBUILDER) 0041 0042 ecm_set_disabled_deprecation_versions(QT 5.15.2 0043 KF 5.101 0044 ) 0045 0046 0047 set(CMAKE_CXX_STANDARD 20) 0048 set(CMAKE_CXX_STANDARD_REQUIRED TRUE) 0049 0050 if (${CMAKE_SYSTEM_NAME} MATCHES "Linux") 0051 find_package(Sensors) 0052 set_package_properties(Sensors PROPERTIES 0053 TYPE REQUIRED 0054 PURPOSE "Used for reading hardware sensors that aren't covered by other plugins." 0055 URL "https://github.com/lm-sensors/lm-sensors" 0056 ) 0057 0058 find_package(NL) 0059 set_package_properties(NL PROPERTIES 0060 TYPE REQUIRED 0061 PURPOSE "Used for gathering socket info via the sock_diag netlink subsystem and for the network plugin when NetworkManagerQt is not available." 0062 URL "https://github.com/thom311/libnl/" 0063 ) 0064 endif() 0065 0066 find_package(UDev) 0067 set_package_properties( 0068 UDev PROPERTIES 0069 TYPE RECOMMENDED 0070 PURPOSE "UDev is used for finding graphics cards." 0071 ) 0072 0073 include_directories(${CMAKE_CURRENT_BINARY_DIR}) 0074 0075 add_subdirectory(src) 0076 add_subdirectory(plugins) 0077 add_subdirectory(tools/kstatsviewer) 0078 0079 if (BUILD_TESTING) 0080 add_subdirectory(autotests) 0081 endif() 0082 0083 # add clang-format target for all our real source files 0084 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h) 0085 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) 0086 0087 ki18n_install(po) 0088 0089 feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)