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