Warning, /network/krfb/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 cmake_minimum_required(VERSION 3.16) 0002 0003 # KDE Application Version, managed by release script 0004 set (RELEASE_SERVICE_VERSION_MAJOR "23") 0005 set (RELEASE_SERVICE_VERSION_MINOR "04") 0006 set (RELEASE_SERVICE_VERSION_MICRO "1") 0007 set (RELEASE_SERVICE_VERSION "${RELEASE_SERVICE_VERSION_MAJOR}.${RELEASE_SERVICE_VERSION_MINOR}.${RELEASE_SERVICE_VERSION_MICRO}") 0008 0009 project(krfb VERSION ${RELEASE_SERVICE_VERSION}) 0010 0011 set(QT_MIN_VERSION 5.15.2) 0012 set(KF5_MIN_VERSION 5.91.0) 0013 0014 find_package(ECM ${KF5_MIN_VERSION} NO_MODULE REQUIRED) 0015 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules" ${ECM_MODULE_PATH}) 0016 0017 include(KDEInstallDirs) 0018 include(KDECMakeSettings) 0019 include(KDECompilerSettings NO_POLICY_SCOPE) 0020 include(ECMInstallIcons) 0021 include(ECMAddAppIcon) 0022 include(ECMSetupVersion) 0023 include(ECMQtDeclareLoggingCategory) 0024 include(ECMDeprecationSettings) 0025 include(FeatureSummary) 0026 include(CheckIncludeFile) 0027 0028 check_include_file("linux/input.h" HAVE_LINUX_INPUT_H) 0029 0030 find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS Core DBus Widgets X11Extras) 0031 0032 find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS 0033 I18n 0034 Config 0035 CoreAddons 0036 Crash 0037 DBusAddons 0038 DNSSD 0039 DocTools 0040 Notifications 0041 Wallet 0042 WidgetsAddons 0043 WindowSystem 0044 XmlGui 0045 ) 0046 0047 find_package(X11 REQUIRED) 0048 0049 find_package(XCB REQUIRED COMPONENTS 0050 XCB 0051 RENDER 0052 SHAPE 0053 XFIXES 0054 DAMAGE 0055 SHM 0056 IMAGE 0057 ) 0058 0059 if(WIN32) 0060 set(CMAKE_REQUIRED_LIBRARIES ${KDEWIN32_LIBRARIES}) 0061 set(CMAKE_REQUIRED_INCLUDES ${KDEWIN32_INCLUDES}) 0062 endif(WIN32) 0063 0064 ecm_set_disabled_deprecation_versions( 0065 QT 5.15.2 0066 KF 5.91 0067 ) 0068 0069 include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ) 0070 0071 find_package(LibVNCServer REQUIRED) 0072 0073 0074 option(DISABLE_PIPEWIRE "Disable PipeWire support." OFF) 0075 if(NOT DISABLE_PIPEWIRE) 0076 find_package(KPipeWire REQUIRED) 0077 pkg_check_modules(PipeWire IMPORTED_TARGET libpipewire-0.3) 0078 endif() 0079 add_feature_info(PipeWire PipeWire_FOUND "Required for pipewire screencast plugin") 0080 find_package(PlasmaWaylandProtocols 1.5.0) 0081 0082 if(PipeWire_FOUND AND PlasmaWaylandProtocols_FOUND) 0083 find_package(KF5Wayland ${KF5_MIN_VERSION}) 0084 find_package(QtWaylandScanner REQUIRED) 0085 find_package(Qt5WaylandClient) 0086 find_package(Qt5XkbCommonSupport) 0087 find_package(Wayland REQUIRED COMPONENTS Client) 0088 endif() 0089 0090 find_package(gbm) 0091 set_package_properties(gbm PROPERTIES 0092 TYPE OPTIONAL 0093 PURPOSE "Required for dma-buf support in pipewire screencast plugin." 0094 ) 0095 0096 find_package(EGL) 0097 set_package_properties(EGL PROPERTIES 0098 TYPE OPTIONAL 0099 PURPOSE "Required for dma-buf support in pipewire screencast plugin." 0100 ) 0101 0102 find_package(epoxy) 0103 set_package_properties(epoxy PROPERTIES DESCRIPTION "libepoxy" 0104 URL "https://github.com/anholt/libepoxy" 0105 TYPE OPTIONAL 0106 PURPOSE "Required for dma-buf support in pipewire screencast plugin." 0107 ) 0108 0109 if(EGL_FOUND AND gbm_FOUND AND epoxy_FOUND) 0110 set (HAVE_DMA_BUF TRUE) 0111 else() 0112 set (HAVE_DMA_BUF FALSE) 0113 endif() 0114 0115 ecm_setup_version(PROJECT 0116 VARIABLE_PREFIX KRFB 0117 VERSION_HEADER "krfb_version.h") 0118 0119 include_directories ("${CMAKE_CURRENT_BINARY_DIR}/krfb" 0120 "${CMAKE_CURRENT_SOURCE_DIR}/krfb" 0121 "${CMAKE_CURRENT_SOURCE_DIR}/krfb/ui" 0122 ) 0123 0124 add_subdirectory(events) 0125 add_subdirectory(krfb) 0126 add_subdirectory(framebuffers) 0127 add_subdirectory(doc) 0128 add_subdirectory(icons) 0129 0130 ki18n_install(po) 0131 kdoctools_install(po) 0132 0133 ecm_qt_install_logging_categories( 0134 EXPORT KRFB 0135 FILE krfb.categories 0136 DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR} 0137 ) 0138 0139 feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)