Warning, /plasma/plasma-pa/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 cmake_minimum_required(VERSION 3.16)
0002 
0003 project(plasma-volume-control)
0004 
0005 set(PROJECT_VERSION "5.27.80")
0006 set(PROJECT_VERSION_MAJOR 5)
0007 
0008 set(QT_MIN_VERSION "6.4.0")
0009 set(KF6_MIN_VERSION "5.240.0")
0010 set(KDE_COMPILERSETTINGS_LEVEL "5.82")
0011 
0012 set(CMAKE_CXX_STANDARD 20)
0013 set(CMAKE_CXX_STANDARD_REQUIRED ON)
0014 
0015 find_package(ECM ${KF6_MIN_VERSION} REQUIRED NO_MODULE)
0016 set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/ ${ECM_MODULE_PATH})
0017 
0018 add_definitions(-DTRANSLATION_DOMAIN=\"kcm_pulseaudio\" -DQT_NO_KEYWORDS)
0019 include(FeatureSummary)
0020 include(KDEInstallDirs)
0021 include(KDECMakeSettings)
0022 include(KDECompilerSettings NO_POLICY_SCOPE)
0023 include(KDEClangFormat)
0024 include(KDEGitCommitHooks)
0025 include(ECMSetupVersion)
0026 include(ECMOptionalAddSubdirectory)
0027 include(FindPkgConfig)
0028 include(ECMDeprecationSettings)
0029 
0030 ecm_setup_version(${PROJECT_VERSION}
0031     VARIABLE_PREFIX PLASMAPA
0032     VERSION_HEADER ${CMAKE_BINARY_DIR}/version.h)
0033 
0034 find_package(Qt6 ${QT_MIN_VERSION} REQUIRED COMPONENTS
0035     Core
0036     Gui
0037     DBus
0038     Quick
0039 )
0040 find_package(KF6 ${KF6_MIN_VERSION} REQUIRED COMPONENTS
0041     CoreAddons
0042     Declarative
0043     DocTools
0044     GlobalAccel
0045     StatusNotifierItem
0046     I18n
0047     Plasma
0048     KCMUtils
0049     Svg
0050 )
0051 
0052 find_package(Canberra REQUIRED)
0053 
0054 pkg_check_modules(LIBPULSE libpulse REQUIRED IMPORTED_TARGET)
0055 pkg_check_modules(LIBPULSE_MAINLOOP libpulse-mainloop-glib REQUIRED IMPORTED_TARGET)
0056 
0057 pkg_check_modules(GIO gio-2.0 REQUIRED IMPORTED_TARGET)
0058 
0059 find_package(CanberraPulse)
0060 set_package_properties(CanberraPulse PROPERTIES
0061     DESCRIPTION "Pulseaudio backend for libcanberra"
0062     PURPOSE "Required for volume feedback sounds"
0063     TYPE RUNTIME
0064 )
0065 
0066 find_package(SoundThemeFreedesktop)
0067 set_package_properties(SoundThemeFreedesktop PROPERTIES
0068     DESCRIPTION "The standard freedesktop sound theme"
0069     PURPOSE "Required for volume feedback sounds"
0070     URL "https://www.freedesktop.org/wiki/Specifications/sound-theme-spec/"
0071     TYPE RUNTIME
0072 )
0073 
0074 find_package(KF6Kirigami2 ${KF6_MIN_VERSION} CONFIG)
0075 set_package_properties(KF6Kirigami2 PROPERTIES
0076     DESCRIPTION "A QtQuick based components set"
0077     PURPOSE "Required at runtime the KCM"
0078     TYPE RUNTIME
0079 )
0080 
0081 find_package(KirigamiAddons CONFIG)
0082 set_package_properties(KirigamiAddons PROPERTIES
0083     DESCRIPTION "Extra controls for Kirigami applications"
0084     PURPOSE "Required at runtime for the KCM"
0085     TYPE RUNTIME
0086 )
0087 
0088 find_package(KItemModels CONFIG)
0089 set_package_properties(KItemModels PROPERTIES
0090     DESCRIPTION "Set of item models extending the Qt model-view framework"
0091     PURPOSE "Required at runtime for the KCM and applet"
0092     TYPE RUNTIME
0093 )
0094 
0095 ecm_set_disabled_deprecation_versions(QT 5.15.2
0096     KF 5.240.0
0097 )
0098 
0099 add_subdirectory(applet)
0100 add_subdirectory(src)
0101 add_subdirectory(data)
0102 add_subdirectory(doc)
0103 
0104 # add clang-format target for all our real source files
0105 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h)
0106 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})
0107 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)
0108 
0109 ki18n_install(po)
0110 kdoctools_install(po)
0111 
0112 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)