krdc, bump version (#11847)

This commit is contained in:
Schrijvers Luc
2025-03-02 18:44:18 +01:00
committed by GitHub
parent a265148e4a
commit 4af14d0827
4 changed files with 192 additions and 237 deletions

View File

@@ -1,146 +0,0 @@
SUMMARY="Remote Desktop Client"
DESCRIPTION="KRDC is a client application that allows you to view or even \
control the desktop session on another machine that is running a compatible \
server. VNC and RDP is supported."
HOMEPAGE="https://apps.kde.org/krdc/"
COPYRIGHT="2010-2024 KDE Organisation"
LICENSE="GNU LGPL v2"
REVISION="1"
SOURCE_URI="https://download.kde.org/stable/release-service/$portVersion/src/krdc-$portVersion.tar.xz"
CHECKSUM_SHA256="aa4e8786480dccb5840532fe8c9188881437d8ca59a98cffcff6685e5579aff9"
SOURCE_DIR="krdc-$portVersion"
PATCHES="krdc-$portVersion.patchset"
ADDITIONAL_FILES="krdc.rdef.in"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
libVersion="$portVersion"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
krdc$secondaryArchSuffix = $portVersion
app:KRDC$secondaryArchSuffix = $portVersion
cmd:krdc$secondaryArchSuffix = $portVersion
lib:libkrdccore$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libfreerdp2$secondaryArchSuffix
lib:libKF5Auth$secondaryArchSuffix
lib:libKF5Activities$secondaryArchSuffix
lib:libKF5Bookmarks$secondaryArchSuffix
lib:libKF5Codecs$secondaryArchSuffix
lib:libKF5Completion$secondaryArchSuffix
lib:libKF5ConfigCore$secondaryArchSuffix
lib:libKF5ConfigGui$secondaryArchSuffix
lib:libKF5ConfigWidgets$secondaryArchSuffix
lib:libKF5CoreAddons$secondaryArchSuffix
lib:libKF5DNSSD$secondaryArchSuffix
lib:libKF5I18n$secondaryArchSuffix
lib:libKF5IconThemes$secondaryArchSuffix
lib:libKF5KCMUtils$secondaryArchSuffix
lib:libKF5Notifications$secondaryArchSuffix
lib:libKF5NotifyConfig$secondaryArchSuffix
lib:libKF5Service$secondaryArchSuffix
lib:libKF5Wallet$secondaryArchSuffix
lib:libKF5WidgetsAddons$secondaryArchSuffix
lib:libKF5XmlGui$secondaryArchSuffix
lib:libQt5Core$secondaryArchSuffix
lib:libQt5DBus$secondaryArchSuffix
lib:libQt5Gui$secondaryArchSuffix
lib:libQt5Network$secondaryArchSuffix
lib:libQt5Widgets$secondaryArchSuffix
lib:libQt5Xml$secondaryArchSuffix
lib:libvncserver$secondaryArchSuffix
"
PROVIDES_devel="
krdc${secondaryArchSuffix}_devel = $portVersion
devel:libkrdccore$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
krdc$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
extra_cmake_modules$secondaryArchSuffix
devel:libfreerdp2$secondaryArchSuffix
devel:libKF5Activities$secondaryArchSuffix
devel:libKF5Auth$secondaryArchSuffix
devel:libKF5Bookmarks$secondaryArchSuffix
devel:libKF5Codecs$secondaryArchSuffix
devel:libKF5Completion$secondaryArchSuffix
devel:libKF5ConfigCore$secondaryArchSuffix
devel:libKF5ConfigWidgets$secondaryArchSuffix
devel:libKF5CoreAddons$secondaryArchSuffix
devel:libKF5DNSSD$secondaryArchSuffix
devel:libKF5I18n$secondaryArchSuffix
devel:libKF5IconThemes$secondaryArchSuffix
devel:libKF5ItemViews$secondaryArchSuffix
devel:libKF5JobWidgets$secondaryArchSuffix
devel:libKF5KCMUtils$secondaryArchSuffix
devel:libKF5KIOCore$secondaryArchSuffix
devel:libKF5Notifications$secondaryArchSuffix
devel:libKF5NotifyConfig$secondaryArchSuffix
devel:libKF5Service$secondaryArchSuffix
devel:libKF5Solid$secondaryArchSuffix
devel:libKF5Wallet$secondaryArchSuffix
devel:libKF5WidgetsAddons$secondaryArchSuffix
devel:libKF5WindowSystem$secondaryArchSuffix
devel:libKF5XmlGui$secondaryArchSuffix
devel:libQt5Core$secondaryArchSuffix
devel:libQt5Gui$secondaryArchSuffix
devel:libssh$secondaryArchSuffix
devel:libvncserver$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:g++$secondaryArchSuffix
cmd:make
cmd:qdbuscpp2xml$secondaryArchSuffix
"
BUILD()
{
cmake -Bbuild -S. $cmakeDirArgs \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_CXX_FLAGS="-D_GNU_SOURCE" \
-DKDE_INSTALL_QTPLUGINDIR=$addOnsDir/Qt5 \
-DECM_DIR=/system/data/cmake/Modules/ECM/cmake
make -Cbuild $jobArgs
}
INSTALL()
{
make -Cbuild install
# cleanup
rm -rf $dataDir/{applications,metainfo}
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
local MINOR="`echo "$portVersion" | cut -d. -f3`"
local APP_NAME="KRDC"
local LONG_INFO="$SUMMARY"
local APP_SIGNATURE="application/x-vnd.krdc"
sed \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
-e "s|@LONG_INFO@|$LONG_INFO|" \
-e "s|@APP_NAME@|$APP_NAME|" \
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
$portDir/additional-files/krdc.rdef.in > krdc.rdef
addResourcesToBinaries krdc.rdef $binDir/krdc
addAppDeskbarSymlink $binDir/krdc KRDC
prepareInstalledDevelLib \
libkrdccore
packageEntries devel \
$developDir
}

View File

@@ -0,0 +1,163 @@
SUMMARY="Remote Desktop Client"
DESCRIPTION="KRDC is a client application that allows you to view or even \
control the desktop session on another machine that is running a compatible \
server. VNC and RDP is supported."
HOMEPAGE="https://apps.kde.org/krdc/"
COPYRIGHT="2010-2025 KDE Organisation"
LICENSE="GNU LGPL v2"
REVISION="1"
SOURCE_URI="https://download.kde.org/stable/release-service/$portVersion/src/krdc-$portVersion.tar.xz"
CHECKSUM_SHA256="ebb29028cd9450ab2e18246ea5b6f6c210c5db75095c4cc8d470c156cea401ee"
SOURCE_DIR="krdc-$portVersion"
PATCHES="krdc-$portVersion.patchset"
ADDITIONAL_FILES="krdc.rdef.in"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
libVersion="$portVersion"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
krdc$secondaryArchSuffix = $portVersion
app:KRDC$secondaryArchSuffix = $portVersion
cmd:krdc$secondaryArchSuffix = $portVersion
lib:libkrdccore$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libfreerdp2$secondaryArchSuffix
lib:libGL$secondaryArchSuffix
lib:libvncserver$secondaryArchSuffix
# KF6
# lib:libPlasmaActivities$secondaryArchSuffix
lib:libKF6AuthCore$secondaryArchSuffix
lib:libKF6Bookmarks$secondaryArchSuffix
lib:libKF6Codecs$secondaryArchSuffix
lib:libKF6ColorScheme$secondaryArchSuffix
lib:libKF6Completion$secondaryArchSuffix
lib:libKF6ConfigCore$secondaryArchSuffix
lib:libKF6ConfigGui$secondaryArchSuffix
lib:libKF6ConfigWidgets$secondaryArchSuffix
lib:libKF6CoreAddons$secondaryArchSuffix
lib:libKF6Crash$secondaryArchSuffix
lib:libKF6DNSSD$secondaryArchSuffix
lib:libKF6I18n$secondaryArchSuffix
lib:libKF6IconThemes$secondaryArchSuffix
lib:libKF6KCMUtils$secondaryArchSuffix
lib:libKF6Notifications$secondaryArchSuffix
lib:libKF6NotifyConfig$secondaryArchSuffix
lib:libKF6Service$secondaryArchSuffix
lib:libKF6StatusNotifierItem$secondaryArchSuffix
lib:libKF6Wallet$secondaryArchSuffix
lib:libKF6WidgetsAddons$secondaryArchSuffix
lib:libKF6XmlGui$secondaryArchSuffix
# Qt6
lib:libQt6Core$secondaryArchSuffix
lib:libQt6DBus$secondaryArchSuffix
lib:libQt6Gui$secondaryArchSuffix
lib:libQt6Network$secondaryArchSuffix
lib:libQt6Qml$secondaryArchSuffix
lib:libQt6Widgets$secondaryArchSuffix
lib:libQt6Xml$secondaryArchSuffix
"
PROVIDES_devel="
krdc${secondaryArchSuffix}_devel = $portVersion
devel:libkrdccore$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
krdc$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
extra_cmake_modules$secondaryArchSuffix
devel:libfreerdp2$secondaryArchSuffix
devel:libssh$secondaryArchSuffix
devel:libvncserver$secondaryArchSuffix
devel:libz$secondaryArchSuffix
# KF6
# devel:libPlasmaActivities$secondaryArchSuffix
devel:libKF6AuthCore$secondaryArchSuffix
devel:libKF6Bookmarks$secondaryArchSuffix
devel:libKF6Codecs$secondaryArchSuffix
devel:libKF6ColorScheme$secondaryArchSuffix
devel:libKF6Completion$secondaryArchSuffix
devel:libKF6ConfigCore$secondaryArchSuffix
devel:libKF6ConfigWidgets$secondaryArchSuffix
devel:libKF6CoreAddons$secondaryArchSuffix
devel:libKF6Crash$secondaryArchSuffix
devel:libKF6DNSSD$secondaryArchSuffix
devel:libKF6I18n$secondaryArchSuffix
devel:libKF6IconThemes$secondaryArchSuffix
devel:libKF6ItemViews$secondaryArchSuffix
devel:libKF6JobWidgets$secondaryArchSuffix
devel:libKF6KCMUtils$secondaryArchSuffix
devel:libKF6KIOCore$secondaryArchSuffix
devel:libKF6Notifications$secondaryArchSuffix
devel:libKF6NotifyConfig$secondaryArchSuffix
devel:libKF6Service$secondaryArchSuffix
devel:libKF6Solid$secondaryArchSuffix
devel:libKF6StatusNotifierItem$secondaryArchSuffix
devel:libKF6Wallet$secondaryArchSuffix
devel:libKF6WidgetsAddons$secondaryArchSuffix
devel:libKF6WindowSystem$secondaryArchSuffix
devel:libKF6XmlGui$secondaryArchSuffix
# Qt6
devel:libQt6Core$secondaryArchSuffix
devel:libQt6Gui$secondaryArchSuffix
devel:libQt6Qml$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:g++$secondaryArchSuffix
cmd:make
cmd:msgfmt
cmd:msgmerge
cmd:pkg_config$secondaryArchSuffix
"
BUILD()
{
cmake -B build -S . -DCMAKE_BUILD_TYPE=Release \
$cmakeDirArgs \
-DCMAKE_CXX_FLAGS="-D_GNU_SOURCE" \
-DKDE_INSTALL_QTPLUGINDIR=$addOnsDir/Qt6 \
-DECM_DIR=/system/data/cmake/Modules/ECM/cmake \
-DBUILD_TESTING=OFF
make -C build $jobArgs
}
INSTALL()
{
make -C build install
# cleanup
rm -rf $dataDir/{applications,metainfo}
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
local MINOR="`echo "$portVersion" | cut -d. -f3`"
local APP_NAME="KRDC"
local LONG_INFO="$SUMMARY"
local APP_SIGNATURE="application/x-vnd.krdc"
sed \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
-e "s|@LONG_INFO@|$LONG_INFO|" \
-e "s|@APP_NAME@|$APP_NAME|" \
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
$portDir/additional-files/krdc.rdef.in > krdc.rdef
addResourcesToBinaries krdc.rdef $binDir/krdc
addAppDeskbarSymlink $binDir/krdc KRDC
prepareInstalledDevelLib \
libkrdccore
packageEntries devel \
$developDir
}

View File

@@ -1,91 +0,0 @@
From e2f1f576fa1611b0cf910ce6401962ec6cfcbbb5 Mon Sep 17 00:00:00 2001
From: Sergei Reznikov <diver@gelios.net>
Date: Fri, 24 Aug 2018 17:55:51 +0300
Subject: Fix build on Haiku
diff --git a/cmake/modules/FindLibSSH.cmake b/cmake/modules/FindLibSSH.cmake
index c1fecfd..1426449 100644
--- a/cmake/modules/FindLibSSH.cmake
+++ b/cmake/modules/FindLibSSH.cmake
@@ -17,6 +17,8 @@ find_path(LIBSSH_INCLUDE_DIR
/usr/local/include
/opt/local/include
/sw/include
+ /system/develop/headers
+ /system/develop/headers/x86
${CMAKE_INCLUDE_PATH}
${CMAKE_INSTALL_PREFIX}/include
)
@@ -30,6 +32,8 @@ find_library(SSH_LIBRARY
/usr/local/lib
/opt/local/lib
/sw/lib
+ /system/develop/headers
+ /system/develop/headers/x86
${CMAKE_LIBRARY_PATH}
${CMAKE_INSTALL_PREFIX}/lib
)
diff --git a/vnc/CMakeLists.txt b/vnc/CMakeLists.txt
index 20f74f0..6dd2933 100644
--- a/vnc/CMakeLists.txt
+++ b/vnc/CMakeLists.txt
@@ -31,6 +31,10 @@ target_link_libraries(krdc_vncplugin
krdccore
)
+if(HAIKU)
+ target_link_libraries(krdc_vncplugin network)
+endif ()
+
if(QT_MAJOR_VERSION STREQUAL "6")
target_link_libraries(krdc_vncplugin KF6::KCMUtils)
endif()
diff --git a/vnc/vncclientthread.cpp b/vnc/vncclientthread.cpp
index 5b5804c..0674d61 100644
--- a/vnc/vncclientthread.cpp
+++ b/vnc/vncclientthread.cpp
@@ -667,6 +667,7 @@ void VncClientThread::clientSetKeepalive()
return;
}
+#ifdef TCP_KEEPIDLE
optval = m_keepalive.intervalSeconds;
if (setsockopt(cl->sock, IPPROTO_TCP, TCP_KEEPIDLE, &optval, optlen) < 0) {
qCritical(KRDC) << "setsockopt(TCP_KEEPIDLE)" << strerror(errno);
@@ -686,6 +687,7 @@ void VncClientThread::clientSetKeepalive()
}
m_keepalive.set = true;
qCDebug(KRDC) << "TCP keepalive set";
+#endif
}
/**
--
2.43.2
From 7201e5fc838eff7e3dea169abbcd2de2afd1ac91 Mon Sep 17 00:00:00 2001
From: Schrijvers Luc <begasus@gmail.com>
Date: Mon, 22 Apr 2024 08:16:21 +0200
Subject: Link RDP client to libnetwork
diff --git a/rdp/CMakeLists.txt b/rdp/CMakeLists.txt
index 97cffbb..53d0524 100644
--- a/rdp/CMakeLists.txt
+++ b/rdp/CMakeLists.txt
@@ -55,6 +55,10 @@ target_link_libraries(kcm_krdc_rdpplugin
krdccore
)
+if(HAIKU)
+ target_link_libraries(kcm_krdc_rdpplugin network)
+endif ()
+
if(QT_MAJOR_VERSION STREQUAL "6")
target_link_libraries(kcm_krdc_rdpplugin KF6::KCMUtils)
endif()
--
2.43.2

View File

@@ -0,0 +1,29 @@
From 3f518649cd8fe093a567e809f558676cbaab39e3 Mon Sep 17 00:00:00 2001
From: Sergei Reznikov <diver@gelios.net>
Date: Fri, 24 Aug 2018 17:55:51 +0300
Subject: Fix build on Haiku
diff --git a/vnc/vncclientthread.cpp b/vnc/vncclientthread.cpp
index 4465ffb..c357c32 100644
--- a/vnc/vncclientthread.cpp
+++ b/vnc/vncclientthread.cpp
@@ -657,6 +657,7 @@ void VncClientThread::clientSetKeepalive()
return;
}
+#ifdef TCP_KEEPIDLE
optval = m_keepalive.intervalSeconds;
if (setsockopt(cl->sock, IPPROTO_TCP, TCP_KEEPIDLE, &optval, optlen) < 0) {
qCritical(KRDC) << "setsockopt(TCP_KEEPIDLE)" << strerror(errno);
@@ -676,6 +677,7 @@ void VncClientThread::clientSetKeepalive()
}
m_keepalive.set = true;
qCDebug(KRDC) << "TCP keepalive set";
+#endif
}
/**
--
2.48.1