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 "5.27.10")
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 find_package(ECM ${KF5_MIN_VERSION} REQUIRED NO_MODULE)
0014 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
0015
0016 include(CheckIncludeFiles)
0017 include(KDEInstallDirs)
0018 include(KDECMakeSettings)
0019 include(KDECompilerSettings NO_POLICY_SCOPE)
0020 include(KDEClangFormat)
0021 include(ECMAddTests)
0022 include(ECMInstallIcons)
0023 include(FeatureSummary)
0024 include(ECMConfiguredInstall)
0025 include(ECMGenerateDBusServiceFile)
0026 include(ECMDeprecationSettings)
0027
0028 find_package(Qt${QT_MAJOR_VERSION} ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS Core Test)
0029 find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS CoreAddons DBusAddons Solid KIO)
0030 find_package(KSysGuard REQUIRED)
0031
0032 find_package(KF5NetworkManagerQt ${KF5_MIN_VERSION})
0033 set_package_properties(KF5NetworkManagerQt PROPERTIES
0034 TYPE RECOMMENDED
0035 PURPOSE "Provides an improved backend for Network statistics"
0036 )
0037
0038 add_definitions(-DQT_NO_URL_CAST_FROM_STRING)
0039 add_definitions(-DQT_USE_QSTRINGBUILDER)
0040
0041 ecm_set_disabled_deprecation_versions(QT 5.15.2
0042 KF 5.101
0043 )
0044
0045
0046 set(CMAKE_CXX_STANDARD 17)
0047 set(CMAKE_CXX_STANDARD_REQUIRED TRUE)
0048
0049 if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
0050 find_package(Sensors)
0051 set_package_properties(Sensors PROPERTIES
0052 TYPE REQUIRED
0053 PURPOSE "Used for reading hardware sensors that aren't covered by other plugins."
0054 URL "https://github.com/lm-sensors/lm-sensors"
0055 )
0056
0057 find_package(NL)
0058 set_package_properties(NL PROPERTIES
0059 TYPE REQUIRED
0060 PURPOSE "Used for gathering socket info via the sock_diag netlink subsystem and for the network plugin when NetworkManagerQt is not available."
0061 URL "https://github.com/thom311/libnl/"
0062 )
0063 endif()
0064
0065 find_package(UDev)
0066 set_package_properties(
0067 UDev PROPERTIES
0068 TYPE RECOMMENDED
0069 PURPOSE "UDev is used for finding graphics cards."
0070 )
0071
0072 include_directories(${CMAKE_CURRENT_BINARY_DIR})
0073
0074 add_subdirectory(src)
0075 add_subdirectory(plugins)
0076 add_subdirectory(tools/kstatsviewer)
0077
0078 if (BUILD_TESTING)
0079 add_subdirectory(autotests)
0080 endif()
0081
0082 # add clang-format target for all our real source files
0083 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h)
0084 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})
0085
0086 ki18n_install(po)
0087
0088 feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)