Warning, /libraries/pulseaudio-qt/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 cmake_minimum_required(VERSION 3.16)
0002 
0003 set(PROJECT_VERSION 1.3.0)
0004 
0005 project(PulseAudioQt VERSION ${PROJECT_VERSION})
0006 
0007 include(FeatureSummary)
0008 find_package(ECM 5.90.0  NO_MODULE)
0009 set (KDE_COMPILERSETTINGS_LEVEL "5.82")
0010 set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://kde.org/products/frameworks/")
0011 feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES)
0012 
0013 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
0014 
0015 include(GenerateExportHeader)
0016 include(CMakePackageConfigHelpers)
0017 include(ECMSetupVersion)
0018 include(ECMGenerateHeaders)
0019 include(ECMGenerateExportHeader)
0020 include(ECMQtDeclareLoggingCategory)
0021 include(ECMAddQch)
0022 include(KDEClangFormat)
0023 include(ECMGeneratePkgConfigFile)
0024 
0025 include(KDEInstallDirs)
0026 include(KDECompilerSettings NO_POLICY_SCOPE)
0027 # include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE)
0028 include(KDECMakeSettings)
0029 
0030 option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF)
0031 add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)")
0032 
0033 ecm_setup_version(PROJECT VARIABLE_PREFIX PULSEAUDIOQT
0034                         VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/pulseaudioqt_version.h"
0035                         PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5PulseAudioQtConfigVersion.cmake"
0036                         SOVERSION 4)
0037 
0038 set(REQUIRED_QT_VERSION 5.15.0)
0039 find_package(Qt${QT_MAJOR_VERSION} ${REQUIRED_QT_VERSION} CONFIG REQUIRED Core Gui DBus)
0040 
0041 find_package(Qt${QT_MAJOR_VERSION}Test ${REQUIRED_QT_VERSION} CONFIG)
0042 set_package_properties(Qt${QT_MAJOR_VERSION}Test PROPERTIES DESCRIPTION "Autotests for PulseAudioQt" TYPE OPTIONAL)
0043 
0044 find_package(Qt${QT_MAJOR_VERSION}Qml ${REQUIRED_QT_VERSION} CONFIG)
0045 set_package_properties(Qt${QT_MAJOR_VERSION}Qml PROPERTIES DESCRIPTION "Tests for PulseAudioQt" TYPE OPTIONAL)
0046 
0047 find_package(Qt${QT_MAJOR_VERSION}Quick ${REQUIRED_QT_VERSION} CONFIG)
0048 set_package_properties(Qt${QT_MAJOR_VERSION}Quick PROPERTIES DESCRIPTION "Tests for PulseAudioQt" TYPE OPTIONAL)
0049 
0050 # create a Config.cmake and a ConfigVersion.cmake file and install them
0051 set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KF5PulseAudioQt")
0052 
0053 
0054 install(FILES  "${CMAKE_CURRENT_BINARY_DIR}/KF5PulseAudioQtConfig.cmake"
0055                "${CMAKE_CURRENT_BINARY_DIR}/KF5PulseAudioQtConfigVersion.cmake"
0056         DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
0057         COMPONENT Devel )
0058 
0059 configure_package_config_file(
0060   "${CMAKE_CURRENT_SOURCE_DIR}/KF5PulseAudioQtConfig.cmake.in"
0061   "${CMAKE_CURRENT_BINARY_DIR}/KF5PulseAudioQtConfig.cmake"
0062   INSTALL_DESTINATION  ${CMAKECONFIG_INSTALL_DIR}
0063 )
0064 
0065 find_package(PkgConfig REQUIRED)
0066 
0067 pkg_check_modules(LIBPULSE libpulse REQUIRED IMPORTED_TARGET)
0068 pkg_check_modules(LIBPULSE_MAINLOOP libpulse-mainloop-glib REQUIRED IMPORTED_TARGET)
0069 
0070 if (IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/po")
0071     ecm_install_po_files_as_qm(po)
0072 endif()
0073 
0074 add_subdirectory(src)
0075 
0076 if (BUILD_TESTING)
0077     add_subdirectory(tests)
0078     if(Qt5Test_FOUND)
0079         add_subdirectory(autotests)
0080     endif()
0081 endif()
0082 
0083 if (BUILD_QCH)
0084     ecm_install_qch_export(
0085         TARGETS KF5PulseAudioQt_QCH
0086         FILE KF5PulseAudioQtQchTargets.cmake
0087         DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
0088         COMPONENT Devel
0089     )
0090     set(PACKAGE_INCLUDE_QCHTARGETS "include(\"\${CMAKE_CURRENT_LIST_DIR}/KF5PulseAudioQtQchTargets.cmake\")")
0091 endif()
0092 
0093 install(EXPORT KF5PulseAudioQtTargets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" FILE KF5PulseAudioQtTargets.cmake NAMESPACE KF5:: )
0094 
0095 install(FILES
0096         ${CMAKE_CURRENT_BINARY_DIR}/pulseaudioqt_version.h
0097         DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF} COMPONENT Devel )
0098 
0099 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
0100 
0101 # add clang-format target for all our real source files
0102 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h)
0103 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})