Warning, /multimedia/plasmatube/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # SPDX-FileCopyrightText: 2019 Linus Jahn <lnj@kaidan.im> 0002 # SPDX-License-Identifier: CC0-1.0 0003 0004 cmake_minimum_required(VERSION 3.16) 0005 0006 # KDE Applications version, managed by release script. 0007 set(RELEASE_SERVICE_VERSION_MAJOR "24") 0008 set(RELEASE_SERVICE_VERSION_MINOR "04") 0009 set(RELEASE_SERVICE_VERSION_MICRO "70") 0010 set(RELEASE_SERVICE_VERSION "${RELEASE_SERVICE_VERSION_MAJOR}.${RELEASE_SERVICE_VERSION_MINOR}.${RELEASE_SERVICE_VERSION_MICRO}") 0011 0012 project(plasmatube VERSION ${RELEASE_SERVICE_VERSION}) 0013 0014 set(KF_MIN_VERSION "5.240.0") 0015 set(QT_MIN_VERSION "6.5.0") 0016 0017 find_package(ECM ${KF_MIN_VERSION} REQUIRED NO_MODULE) 0018 0019 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH}) 0020 0021 include(ECMSetupVersion) 0022 include(KDEInstallDirs) 0023 include(KDECMakeSettings) 0024 include(KDECompilerSettings NO_POLICY_SCOPE) 0025 include(KDEClangFormat) 0026 include(KDEGitCommitHooks) 0027 include(FeatureSummary) 0028 include(ECMFindQmlModule) 0029 include(ECMQtDeclareLoggingCategory) 0030 0031 find_package(Qt6 ${QT_MIN_VERSION} REQUIRED NO_MODULE COMPONENTS Core Quick Test Gui Svg QuickControls2 Widgets Concurrent) 0032 qt_policy(SET QTP0001 NEW) 0033 find_package(KF6 ${KF_MIN_VERSION} REQUIRED COMPONENTS CoreAddons Config Kirigami I18n) 0034 find_package(KF6KirigamiAddons 0.11 REQUIRED) 0035 find_package(MpvQt REQUIRED) 0036 0037 find_package(Qt6Keychain) 0038 set_package_properties(Qt6Keychain PROPERTIES 0039 TYPE REQUIRED 0040 PURPOSE "Secure storage of account secrets" 0041 ) 0042 0043 ecm_find_qmlmodule(org.kde.purpose 1.0) 0044 0045 if (NOT ANDROID) 0046 find_package(Qt6 ${QT_MIN_VERSION} REQUIRED NO_MODULE COMPONENTS DBus) 0047 endif() 0048 0049 if (NOT ANDROID AND NOT WIN32 AND NOT APPLE) 0050 find_package(KF6DBusAddons ${KF_MIN_VERSION} REQUIRED) 0051 find_package(KF6WindowSystem ${KF_MIN_VERSION} REQUIRED) 0052 endif () 0053 0054 set(CMAKE_CXX_STANDARD 17) 0055 set(CMAKE_CXX_STANDARD_REQUIRED ON) 0056 set(CMAKE_CXX_EXTENSIONS OFF) 0057 0058 ecm_setup_version(${PROJECT_VERSION} 0059 VARIABLE_PREFIX PLASMATUBE 0060 VERSION_HEADER ${CMAKE_CURRENT_BINARY_DIR}/plasmatube-version.h 0061 ) 0062 0063 add_subdirectory(src) 0064 0065 ki18n_install(po) 0066 0067 install(FILES org.kde.plasmatube.desktop DESTINATION ${KDE_INSTALL_APPDIR}) 0068 install(FILES org.kde.plasmatube.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR}) 0069 install(FILES org.kde.plasmatube.svg DESTINATION ${KDE_INSTALL_FULL_ICONDIR}/hicolor/scalable/apps) 0070 0071 feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES) 0072 0073 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES src/*.cpp src/*.h) 0074 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) 0075 0076 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)