From 7e34a75b8e4fc9659ee7a2c9b80c6dc512e3a2d5 Mon Sep 17 00:00:00 2001 From: Wendi Gan Date: Wed, 30 Apr 2025 21:54:11 +0800 Subject: [PATCH] cmake: Require LibVNCServer >= 0.9.14 Changes: - Drop FindLibVNCServer.cmake and rely on the CMake package config instead. - Set the minimum required version to 0.9.14. --- CMakeLists.txt | 2 +- cmake/modules/FindLibVNCServer.cmake | 41 ---------------------------- krfb/CMakeLists.txt | 5 ++-- 3 files changed, 3 insertions(+), 45 deletions(-) delete mode 100644 cmake/modules/FindLibVNCServer.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index aa66eb3d..9a1520dd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -71,7 +71,7 @@ ecm_set_disabled_deprecation_versions( include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ) -find_package(LibVNCServer REQUIRED) +find_package(LibVNCServer 0.9.14 REQUIRED) option(DISABLE_PIPEWIRE "Disable PipeWire support." OFF) diff --git a/cmake/modules/FindLibVNCServer.cmake b/cmake/modules/FindLibVNCServer.cmake deleted file mode 100644 index 959068d1..00000000 --- a/cmake/modules/FindLibVNCServer.cmake +++ /dev/null @@ -1,41 +0,0 @@ -# cmake macro to test LIBVNCSERVER LIB - -# SPDX-FileCopyrightText: 2006 Alessandro Praduroux -# SPDX-FileCopyrightText: 2007 Urs Wolfer -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - -INCLUDE(CheckStructHasMember) - -IF (LIBVNCSERVER_INCLUDE_DIR AND LIBVNCSERVER_LIBRARIES) - # Already in cache, be silent - SET(LIBVNCSERVER_FIND_QUIETLY TRUE) -ENDIF (LIBVNCSERVER_INCLUDE_DIR AND LIBVNCSERVER_LIBRARIES) - -FIND_PATH(LIBVNCSERVER_INCLUDE_DIR rfb/rfb.h) - -FIND_LIBRARY(LIBVNCSERVER_LIBRARIES NAMES vncserver libvncserver) - -# libvncserver and libvncclient are in the same package, so it does -# not make sense to add a new cmake script for finding libvncclient. -# instead just find the libvncclient also in this file. -FIND_PATH(LIBVNCCLIENT_INCLUDE_DIR rfb/rfbclient.h) -FIND_LIBRARY(LIBVNCCLIENT_LIBRARIES NAMES vncclient libvncclient) - -IF (LIBVNCSERVER_INCLUDE_DIR AND LIBVNCSERVER_LIBRARIES) - SET(CMAKE_REQUIRED_INCLUDES "${LIBVNCSERVER_INCLUDE_DIR}" "${CMAKE_REQUIRED_INCLUDES}") - CHECK_STRUCT_HAS_MEMBER("struct _rfbClient" GotXCutText rfb/rfbclient.h LIBVNCSERVER_FOUND) -ENDIF (LIBVNCSERVER_INCLUDE_DIR AND LIBVNCSERVER_LIBRARIES) - -IF (LIBVNCSERVER_FOUND) - IF (NOT LIBVNCSERVER_FIND_QUIETLY) - MESSAGE(STATUS "Found LibVNCServer: ${LIBVNCSERVER_LIBRARIES}") - ENDIF (NOT LIBVNCSERVER_FIND_QUIETLY) -ELSE (LIBVNCSERVER_FOUND) - IF (LIBVNCSERVER_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could NOT find acceptable version of LibVNCServer (version 0.9 or later required).") - ENDIF (LIBVNCSERVER_FIND_REQUIRED) -ENDIF (LIBVNCSERVER_FOUND) - -MARK_AS_ADVANCED(LIBVNCSERVER_INCLUDE_DIR LIBVNCSERVER_LIBRARIES) diff --git a/krfb/CMakeLists.txt b/krfb/CMakeLists.txt index c5aebfe5..980a84ec 100644 --- a/krfb/CMakeLists.txt +++ b/krfb/CMakeLists.txt @@ -27,7 +27,7 @@ target_link_libraries (krfbprivate Qt::Widgets Qt::GuiPrivate ${X11_X11_LIB} - ${LIBVNCSERVER_LIBRARIES} + LibVNCServer::vncserver ) set_target_properties (krfbprivate PROPERTIES @@ -107,7 +107,7 @@ target_link_libraries (krfb KF6::XmlGui KF6::StatusNotifierItem KF6::Crash - ${LIBVNCSERVER_LIBRARIES} + LibVNCServer::vncserver ) if (X11_XTest_FOUND) @@ -169,4 +169,3 @@ install(FILES org.kde.krfb.appdata.xml install (FILES krfb.notifyrc DESTINATION ${KDE_INSTALL_DATADIR}/krfb ) -