diff options
Diffstat (limited to 'net/freerdp3')
-rw-r--r-- | net/freerdp3/Makefile | 67 | ||||
-rw-r--r-- | net/freerdp3/distinfo | 20 | ||||
-rw-r--r-- | net/freerdp3/files/patch-webview-src_cmake_webview.cmake | 47 | ||||
-rw-r--r-- | net/freerdp3/pkg-plist | 2 |
4 files changed, 87 insertions, 49 deletions
diff --git a/net/freerdp3/Makefile b/net/freerdp3/Makefile index f9d7dbf3a0d0..412a3aed846b 100644 --- a/net/freerdp3/Makefile +++ b/net/freerdp3/Makefile @@ -1,15 +1,16 @@ PORTNAME= freerdp -DISTVERSION= 3.15.0 -PORTREVISION= 1 +DISTVERSION= 3.17.0 CATEGORIES= net comms -MASTER_SITES= https://pub.freerdp.com/releases/ \ - https://github.com/FreeRDP/FreeRDP/releases/download/${DISTVERSION}/ +MASTER_SITES+= https://pub.freerdp.com/releases/:freerdp \ + https://github.com/FreeRDP/FreeRDP/releases/download/${DISTVERSION}/:freerdp PKGNAMESUFFIX= 3 +DISTFILES+= ${DISTNAME}${EXTRACT_SUFX}:freerdp PATCH_SITES= https://github.com/FreeRDP/FreeRDP/commit/ -# Fix realm usage for Heimdal: https://bugs.freebsd.org/286816 -PATCHFILES+= 8c2be5fd53501c129042ec8205ca2ff1bae90cda.patch:-p1 -PATCHFILES+= 374707d4fa609e5434f2166b5c11df655f6ff952.patch:-p1 +PATCHFILES= 83ffa524e90ae08a0f940b70cf66204477a172be.patch:-p1 \ + afa7069a8dde0e2109939d64b5f904dedeff1909.patch:-p1 \ + 78f51bed0dd51c271358f04769faf927bfdfcba8.patch:-p1 \ + 7e9149e6aa12e3105612f53d3bbf7d14e84835d4.patch:-p1 MAINTAINER= vvd@FreeBSD.org COMMENT= Free implementation of Remote Desktop Protocol @@ -26,6 +27,8 @@ USES= alias cmake compiler:c++11-lib cpe desktop-file-utils \ BROKEN_SSL= libressl-devel BROKEN_SSL_REASON_libressl-devel= fails to compile: no member named 'alert_dispatch' in 'struct ssl3_state_st' +USE_GITHUB= nodefault +GH_TUPLE= akallabeth:webview:2a0a130:webview/../.build/_deps/webview-src USE_LDCONFIG= yes USE_XORG= ice sm x11 xext @@ -48,28 +51,27 @@ PLIST_SUB+= MAJORVERSION="${DISTVERSION:R:R}" OPTIONS_DEFINE= ALSA BROKENFOCUS CUPS FAAC FAAD FDKAAC FFMPEG \ GSM ICU JPEG LAME MANPAGES OPENH264 OPUS PCSC \ PKCS11 PULSEAUDIO RDPECAM SDL2 SDL3 SOXR \ - URIPARSER WAYLAND X11 + URIPARSER WAYLAND WEBVIEW X11 OPTIONS_DEFINE_aarch64= SIMD OPTIONS_DEFINE_amd64= SIMD OPTIONS_DEFINE_armv7= SIMD OPTIONS_DEFINE_i386= SIMD -OPTIONS_DEFAULT= AAD CUPS FFMPEG GSSAPI_HEIMDAL ICU JSON_C \ +OPTIONS_DEFAULT= AAD CUPS FFMPEG GSSAPI_MIT ICU JSON_C \ KEYBOARD_LAYOUT MANPAGES RDPECAM SDL2 SDL3 \ - SWSCALE TIMEZONE_FILE WAYLAND WEBKIT X11 + SWSCALE TIMEZONE_FILE WAYLAND WEBVIEW X11 OPTIONS_DEFAULT_aarch64= SIMD OPTIONS_DEFAULT_amd64= SIMD OPTIONS_DEFAULT_armv7= SIMD OPTIONS_GROUP= CLIPBOARD_IMAGE REQUIRE_JSON OPTIONS_GROUP_CLIPBOARD_IMAGE= JPEG_CB PNG WEBP OPTIONS_GROUP_REQUIRE_JSON= AAD KEYBOARD_LAYOUT TIMEZONE_FILE -OPTIONS_RADIO= GSSAPI JSON SCALE WEBVIEW +OPTIONS_RADIO= GSSAPI JSON SCALE OPTIONS_RADIO_GSSAPI= GSSAPI_HEIMDAL GSSAPI_MIT OPTIONS_RADIO_JSON= CJSON JSON_C OPTIONS_RADIO_SCALE= CAIRO SWSCALE -OPTIONS_RADIO_WEBVIEW= WEBENGINE WEBKIT OPTIONS_SUB= yes -AAD_DESC= Compile with support for Azure AD authentication (require SDL) +AAD_DESC= Compile with support for Azure AD authentication (require SDL and WEBVIEW) BROKENFOCUS_DESC= Work around focus bug in some WMs (PR \#254908) CAIRO_DESC= Use CAIRO image library for screen resizing CJSON_DESC= ${JSON_DESC} via cJSON @@ -91,7 +93,7 @@ WAYLAND_DESC= Build FreeRDP Wayland client WEBVIEW_DESC= Build with WebView support for AAD login popup browser X11_DESC= Build FreeRDP X11 client -AAD_IMPLIES= SDL3 +AAD_IMPLIES= SDL3 WEBVIEW AAD_CMAKE_BOOL= WITH_AAD ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib @@ -175,6 +177,7 @@ RDPECAM_LIB_DEPENDS= libv4l2.so:multimedia/libv4l \ libv4lconvert.so:multimedia/libv4l RDPECAM_CMAKE_BOOL= CHANNEL_RDPECAM_CLIENT +SDL2_LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader SDL2_USES= sdl SDL2_USE= sdl=sdl2,ttf2,image2 SDL2_CMAKE_BOOL= WITH_CLIENT_SDL2 WITH_SDL_IMAGE_DIALOGS @@ -207,22 +210,17 @@ WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland \ WAYLAND_RUN_DEPENDS= wayland-scanner:graphics/wayland WAYLAND_CMAKE_BOOL= WITH_WAYLAND -_WEBENGINE_USES= qt:5 -WEBENGINE_USE_QT= core declarative gui location network printsupport \ - webchannel webengine widgets buildtools:build qmake:build -WEBENGINE_CMAKE_BOOL= WITH_WEBVIEW_QT -WEBENGINE_CMAKE_ON= -DWITH_WEBVIEW:BOOL=ON - -_WEBKIT_LIB_DEPENDS= libsoup-3.0.so:devel/libsoup3 \ - libharfbuzz.so:print/harfbuzz \ - libwebkit2gtk-4.1.so:www/webkit2-gtk@41 -_WEBKIT_USES= gettext gnome -WEBKIT_USE_GNOME= atk cairo gdkpixbuf glib20 gtk30 pango -WEBKIT_CMAKE_ON= -DWITH_WEBVIEW:BOOL=ON - WEBP_LIB_DEPENDS= libwebp.so:graphics/webp WEBP_CMAKE_BOOL= WINPR_UTILS_IMAGE_WEBP +WEBVIEW_LIB_DEPENDS= libsoup-3.0.so:devel/libsoup3 \ + libharfbuzz.so:print/harfbuzz \ + libwebkitgtk-6.0.so:www/webkit2-gtk@60 \ + libgraphene-1.0.so:graphics/graphene +WEBVIEW_USES= gnome +WEBVIEW_USE= gnome=cairo,gdkpixbuf,glib20,gtk40,pango +WEBVIEW_CMAKE_BOOL= WITH_WEBVIEW + X11_USE= xorg=xcursor,xfixes,xi,xinerama,xkbfile,xorgproto,xrandr,xrender,xv X11_CMAKE_ON= -DWITH_X11:BOOL=ON -DWITH_XCURSOR:BOOL=ON \ -DWITH_XEXT:BOOL=ON -DWITH_XFIXES:BOOL=ON \ @@ -234,21 +232,6 @@ X11_CMAKE_OFF= -DWITH_X11:BOOL=OFF -DWITH_XKBFILE:BOOL=OFF .include <bsd.port.options.mk> -.if ${PORT_OPTIONS:MAAD} -. if ${PORT_OPTIONS:MWEBENGINE} -USES+= ${_WEBENGINE_USES} -USE_QT+= ${WEBENGINE_USE_QT} -. elif ${PORT_OPTIONS:MWEBKIT} -LIB_DEPENDS+= ${_WEBKIT_LIB_DEPENDS} -USES+= ${_WEBKIT_USES} -USE_GNOME+= ${WEBKIT_USE_GNOME} -. else -CMAKE_OFF+= WITH_WEBVIEW -. endif -.else -CMAKE_OFF+= WITH_WEBVIEW -.endif - .if ${PORT_OPTIONS:MGSSAPI_HEIMDAL} || ${PORT_OPTIONS:MGSSAPI_MIT} CMAKE_ON+= WITH_KRB5 .else diff --git a/net/freerdp3/distinfo b/net/freerdp3/distinfo index b71c876354d5..38d5e886cdf4 100644 --- a/net/freerdp3/distinfo +++ b/net/freerdp3/distinfo @@ -1,7 +1,13 @@ -TIMESTAMP = 1747401167 -SHA256 (freerdp-3.15.0.tar.gz) = e8cd58decef4c970faea2fbea675970eea60e440ebe8033c54889acb83787371 -SIZE (freerdp-3.15.0.tar.gz) = 10444672 -SHA256 (8c2be5fd53501c129042ec8205ca2ff1bae90cda.patch) = 9ad6bcef07b0b17bdcb86ee0c516f5842146def42288a206b7ab5cfb75052e7a -SIZE (8c2be5fd53501c129042ec8205ca2ff1bae90cda.patch) = 946 -SHA256 (374707d4fa609e5434f2166b5c11df655f6ff952.patch) = 997ba5dd88b223c897741a3a8f0cc134cdf53131459d6402e62958075dda2142 -SIZE (374707d4fa609e5434f2166b5c11df655f6ff952.patch) = 4571 +TIMESTAMP = 1756200000 +SHA256 (freerdp-3.17.0.tar.gz) = 5ec3f80d38421f894be3c38837e39b41965314f8ba1246faceb460d2b60869b6 +SIZE (freerdp-3.17.0.tar.gz) = 10522070 +SHA256 (akallabeth-webview-2a0a130_GH0.tar.gz) = 22448da4658b73cc20e6944d9a351ab6c40d1a50026997f8278f63713f5f7c07 +SIZE (akallabeth-webview-2a0a130_GH0.tar.gz) = 185888 +SHA256 (83ffa524e90ae08a0f940b70cf66204477a172be.patch) = 24339d494a28e1e2b8f65d1e0c0ffe8719d949c4e43686df66cccb0c72296131 +SIZE (83ffa524e90ae08a0f940b70cf66204477a172be.patch) = 4209 +SHA256 (afa7069a8dde0e2109939d64b5f904dedeff1909.patch) = da71459584ebc24a3b8f94b4722d7906fb3fca6c60d27a8fa38c642e8798ef33 +SIZE (afa7069a8dde0e2109939d64b5f904dedeff1909.patch) = 1279 +SHA256 (78f51bed0dd51c271358f04769faf927bfdfcba8.patch) = 680cc32cba9a1a023f83f91288a342837ea403edf9623a4962da14d40ef3fa00 +SIZE (78f51bed0dd51c271358f04769faf927bfdfcba8.patch) = 1034 +SHA256 (7e9149e6aa12e3105612f53d3bbf7d14e84835d4.patch) = 9443b095abfab500a07ce127cc063f6440d4b0e7a94fbbd439d244684c255825 +SIZE (7e9149e6aa12e3105612f53d3bbf7d14e84835d4.patch) = 1783 diff --git a/net/freerdp3/files/patch-webview-src_cmake_webview.cmake b/net/freerdp3/files/patch-webview-src_cmake_webview.cmake new file mode 100644 index 000000000000..e8d30589704f --- /dev/null +++ b/net/freerdp3/files/patch-webview-src_cmake_webview.cmake @@ -0,0 +1,47 @@ +--- ../.build/_deps/webview-src/cmake/webview.cmake.orig 2025-06-03 18:40:31 UTC ++++ ../.build/_deps/webview-src/cmake/webview.cmake +@@ -8,11 +8,23 @@ macro(webview_find_dependencies) + macro(webview_find_dependencies) + if(CMAKE_SYSTEM_NAME STREQUAL "Darwin") + list(APPEND WEBVIEW_DEPENDENCIES "-framework WebKit" dl) +- elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux") ++ elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") ++ if(WEBVIEW_USE_BUILTIN_MSWEBVIEW2) ++ find_package(MSWebView2 QUIET) ++ if(NOT MSWebView2_FOUND) ++ webview_fetch_mswebview2(${WEBVIEW_MSWEBVIEW2_VERSION}) ++ endif() ++ find_package(MSWebView2 REQUIRED) ++ if(MSWebView2_FOUND) ++ list(APPEND WEBVIEW_DEPENDENCIES MSWebView2::headers) ++ endif() ++ endif() ++ list(APPEND WEBVIEW_DEPENDENCIES advapi32 ole32 shell32 shlwapi user32 version) ++ else() + find_package(PkgConfig REQUIRED) + + # List of preferred WebkitGTK modules (from most to least preferred) +- set(WEBVIEW_WEBKITGTK_PREFERRED_API_LIST webkit2gtk-4.1) ++ set(WEBVIEW_WEBKITGTK_PREFERRED_API_LIST webkitgtk-6.0) + # List of known WebkitGTK modules (from higher to lower version) + set(WEBVIEW_WEBKITGTK_KNOWN_API_LIST webkitgtk-6.0 webkit2gtk-4.1 webkit2gtk-4.0) + +@@ -58,18 +70,6 @@ macro(webview_find_dependencies) + endif() + + list(APPEND WEBVIEW_DEPENDENCIES PkgConfig::WEBVIEW_WEBKITGTK PkgConfig::WEBVIEW_GTK dl) +- elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") +- if(WEBVIEW_USE_BUILTIN_MSWEBVIEW2) +- find_package(MSWebView2 QUIET) +- if(NOT MSWebView2_FOUND) +- webview_fetch_mswebview2(${WEBVIEW_MSWEBVIEW2_VERSION}) +- endif() +- find_package(MSWebView2 REQUIRED) +- if(MSWebView2_FOUND) +- list(APPEND WEBVIEW_DEPENDENCIES MSWebView2::headers) +- endif() +- endif() +- list(APPEND WEBVIEW_DEPENDENCIES advapi32 ole32 shell32 shlwapi user32 version) + endif() + endmacro() + diff --git a/net/freerdp3/pkg-plist b/net/freerdp3/pkg-plist index cfc687a900d0..d3101a0a0516 100644 --- a/net/freerdp3/pkg-plist +++ b/net/freerdp3/pkg-plist @@ -58,6 +58,7 @@ include/freerdp%%MAJORVERSION%%/freerdp/client/printer.h include/freerdp%%MAJORVERSION%%/freerdp/client/rail.h include/freerdp%%MAJORVERSION%%/freerdp/client/rdpei.h include/freerdp%%MAJORVERSION%%/freerdp/client/rdpgfx.h +include/freerdp%%MAJORVERSION%%/freerdp/client/rdpdr.h include/freerdp%%MAJORVERSION%%/freerdp/client/rdpsnd.h include/freerdp%%MAJORVERSION%%/freerdp/client/remdesk.h include/freerdp%%MAJORVERSION%%/freerdp/client/sshagent.h @@ -160,6 +161,7 @@ include/freerdp%%MAJORVERSION%%/freerdp/settings_types.h include/freerdp%%MAJORVERSION%%/freerdp/settings_types_private.h include/freerdp%%MAJORVERSION%%/freerdp/svc.h include/freerdp%%MAJORVERSION%%/freerdp/streamdump.h +include/freerdp%%MAJORVERSION%%/freerdp/timer.h include/freerdp%%MAJORVERSION%%/freerdp/transport_io.h include/freerdp%%MAJORVERSION%%/freerdp/types.h include/freerdp%%MAJORVERSION%%/freerdp/update.h |