aboutsummaryrefslogtreecommitdiff
path: root/net/vinagre
diff options
context:
space:
mode:
authorBen Woods <woodsb02@FreeBSD.org>2016-12-11 04:36:57 +0000
committerBen Woods <woodsb02@FreeBSD.org>2016-12-11 04:36:57 +0000
commitd0ea56deb08f32659f5aef555ad218c6773f985e (patch)
tree3b8430d61957c595f3da0c8c31c214506f0917ca /net/vinagre
parent9e90e98fd89140b414695bdbc1d9bdd221675623 (diff)
downloadports-d0ea56deb08f32659f5aef555ad218c6773f985e.tar.gz
ports-d0ea56deb08f32659f5aef555ad218c6773f985e.zip
net/freerdp: Update to 2.0.0 pre-release (GitHub as of 2016.11.24)
- This update brings in the latest 2 years of FreeRDP project work, which has had a long time between tagging releases. - Remove DIRECTFB option, as it no longer compiles, and gets little upstream maintenance - Use NEON on aarch64, and optionally on armv6 - Mark as broken on armv6 on FreeBSD 11.0-RELEASE and early versions of 12.0-CURRENT - Fix issue with X11_USE=xorg= being truncated due to whitespace as it wrapped over multiple lines - Move installed *.cmake files to correct location for modules net/freerdp1: - create new port based on previous net/freerdp 1.2.0, as it is required by net/guacamole-server net/vinagre: - patch to work with the new version of net/freerdp 2.0.0 net/guacamole-server: - patch to work with net/freerdp1 PR: 212004 PR: 214956 Submitted by: Kyle Evans (maintainer) Reported by: John Hein <z7dr6ut7gs@snkmail.com> Reviewed by: Mikael Urankar <mikael.urankar@gmail.com> Reviewed by: Ting-Wei Lan <lantw44@gmail.com> Reviewed by: Antenore Gatta <antenore@simbiosi.org> Reviewed by: amdmi3 Approved by: adamw (mentor) Differential Revision: https://reviews.freebsd.org/D8712
Notes
Notes: svn path=/head/; revision=428330
Diffstat (limited to 'net/vinagre')
-rw-r--r--net/vinagre/Makefile12
-rw-r--r--net/vinagre/files/patch-configure.ac30
-rw-r--r--net/vinagre/files/patch-plugins_rdp_vinagre-rdp-tab.c119
3 files changed, 158 insertions, 3 deletions
diff --git a/net/vinagre/Makefile b/net/vinagre/Makefile
index 1f5486d437a8..beed9f1e6c7f 100644
--- a/net/vinagre/Makefile
+++ b/net/vinagre/Makefile
@@ -11,7 +11,13 @@ DIST_SUBDIR= gnome3
MAINTAINER= gnome@FreeBSD.org
COMMENT= VNC client for the GNOME Desktop
-BUILD_DEPENDS= itstool:textproc/itstool
+LICENSE= GPLv3
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+BUILD_DEPENDS= appstream-glib>=0:devel/appstream-glib \
+ itstool:textproc/itstool \
+ gnome-autogen.sh:devel/gnome-common \
+ yelp-tools>=0:textproc/yelp-tools
LIB_DEPENDS= libgtk-vnc-2.0.so:net/gtk-vnc \
libgdbm.so:databases/gdbm \
libsecret-1.so:security/libsecret
@@ -19,8 +25,8 @@ RUN_DEPENDS= gnome-icon-theme>=0:misc/gnome-icon-theme
PORTSCOUT= limitw:1,even
-USES= desktop-file-utils gettext gmake gnome pathfix pkgconfig \
- shared-mime-info tar:xz
+USES= autoreconf desktop-file-utils gettext gmake gnome pathfix \
+ pkgconfig shared-mime-info tar:xz
USE_GNOME= gtk30 intlhack libxml2 vte3
GNU_CONFIGURE= yes
INSTALLS_ICONS= yes
diff --git a/net/vinagre/files/patch-configure.ac b/net/vinagre/files/patch-configure.ac
new file mode 100644
index 000000000000..ab515fe71f14
--- /dev/null
+++ b/net/vinagre/files/patch-configure.ac
@@ -0,0 +1,30 @@
+From 8d072483ffff3a4e752c35811fb562f61d206f68 Mon Sep 17 00:00:00 2001
+From: Adam Williamson <awilliam@redhat.com>
+Date: Fri, 22 Apr 2016 14:54:09 -0700
+Subject: [PATCH] handle new freerdp pkgconfig name
+
+freerdp has now changed its pkgconfig name to 'freerdp2' -
+https://github.com/FreeRDP/FreeRDP/commit/6fa36081 . Assuming
+we can build against both 1 and 2, we should handle both names.
+--- configure.ac.orig 2016-09-20 06:02:32 UTC
++++ configure.ac
+@@ -59,6 +59,7 @@ AM_CONDITIONAL([VINAGRE_ENABLE_SSH], [te
+
+ # Whether to enable support for RDP.
+ RDP_DEPS="freerdp x11"
++RDP_2_DEPS="freerdp2 x11"
+ AC_ARG_ENABLE([rdp],
+ [AS_HELP_STRING([--disable-rdp],
+ [Disable Remote Desktop Protocol (RDP) support])])
+@@ -68,7 +69,10 @@ AS_IF([test "x$enable_rdp" != "xno"],
+ [have_rdp=yes
+ PKG_CHECK_EXISTS(freerdp >= 1.1,
+ [AC_DEFINE([HAVE_FREERDP_1_1], [1], [FreeRDP is of version 1.1 or newer])], [])],
+- [have_rdp=no])],
++ [PKG_CHECK_EXISTS([$RDP_2_DEPS],
++ [have_rdp=yes
++ RDP_DEPS=$RDP_2_DEPS
++ AC_DEFINE([HAVE_FREERDP_1_1], [1], [FreeRDP is of version 1.1 or newer])], [have_rdp=no])])],
+ [have_rdp=no])
+
+ AS_IF([test "x$have_rdp" = "xyes"],
diff --git a/net/vinagre/files/patch-plugins_rdp_vinagre-rdp-tab.c b/net/vinagre/files/patch-plugins_rdp_vinagre-rdp-tab.c
new file mode 100644
index 000000000000..d218be2d9493
--- /dev/null
+++ b/net/vinagre/files/patch-plugins_rdp_vinagre-rdp-tab.c
@@ -0,0 +1,119 @@
+--- plugins/rdp/vinagre-rdp-tab.c.orig 2015-10-06 15:40:06 UTC
++++ plugins/rdp/vinagre-rdp-tab.c
+@@ -476,16 +476,18 @@ frdp_drawing_area_draw (GtkWidget *area,
+ return TRUE;
+ }
+
+-static void
++static BOOL
+ frdp_begin_paint (rdpContext *context)
+ {
+ rdpGdi *gdi = context->gdi;
+
+ gdi->primary->hdc->hwnd->invalid->null = 1;
+ gdi->primary->hdc->hwnd->ninvalid = 0;
++
++ return TRUE;
+ }
+
+-static void
++static BOOL
+ frdp_end_paint (rdpContext *context)
+ {
+ VinagreRdpTab *rdp_tab = ((frdpContext *) context)->rdp_tab;
+@@ -495,7 +497,7 @@ frdp_end_paint (rdpContext *context)
+ gint x, y, w, h;
+
+ if (gdi->primary->hdc->hwnd->invalid->null)
+- return;
++ return FALSE;
+
+ x = gdi->primary->hdc->hwnd->invalid->x;
+ y = gdi->primary->hdc->hwnd->invalid->y;
+@@ -517,6 +519,8 @@ frdp_end_paint (rdpContext *context)
+ {
+ gtk_widget_queue_draw_area (priv->display, x, y, w, h);
+ }
++
++ return TRUE;
+ }
+
+ static BOOL
+@@ -591,11 +595,15 @@ frdp_post_connect (freerdp *instance)
+ #if defined(FREERDP_VERSION_MAJOR) && defined(FREERDP_VERSION_MINOR) && \
+ !(FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && \
+ FREERDP_VERSION_MINOR >= 2))
+- CLRBUF_24BPP,
++ CLRBUF_24BPP, NULL
+ #else
+- CLRBUF_32BPP,
++#ifdef CLRBUF_32BPP
++ CLRBUF_32BPP, NULL
++#else
++ PIXEL_FORMAT_BGRA32
++#endif
+ #endif
+- NULL);
++ );
+ gdi = instance->context->gdi;
+
+ instance->update->BeginPaint = frdp_begin_paint;
+@@ -862,7 +870,7 @@ frdp_mouse_moved (GtkWidget *widget
+ return TRUE;
+ }
+
+-static gboolean
++static BOOL
+ frdp_authenticate (freerdp *instance,
+ char **username,
+ char **password,
+@@ -934,11 +942,13 @@ frdp_authenticate (freerdp *instance,
+ return TRUE;
+ }
+
+-static BOOL
+-frdp_certificate_verify (freerdp *instance,
+- char *subject,
+- char *issuer,
+- char *fingerprint)
++static DWORD
++frdp_certificate_verify (freerdp *instance,
++ const char *common_name,
++ const char *subject,
++ const char *issuer,
++ const char *fingerprint,
++ BOOL host_mismatch)
+ {
+ VinagreTab *tab = VINAGRE_TAB (((frdpContext *) instance->context)->rdp_tab);
+ GtkBuilder *builder;
+@@ -973,12 +983,15 @@ frdp_certificate_verify (freerdp *instan
+
+
+ #if HAVE_FREERDP_1_1
+-static BOOL
+-frdp_changed_certificate_verify (freerdp *instance,
+- char *subject,
+- char *issuer,
+- char *new_fingerprint,
+- char *old_fingerprint)
++static DWORD
++frdp_changed_certificate_verify (freerdp *instance,
++ const char *common_name,
++ const char *subject,
++ const char *issuer,
++ const char *new_fingerprint,
++ const char *old_subject,
++ const char *old_issuer,
++ const char *old_fingerprint)
+ {
+ VinagreTab *tab = VINAGRE_TAB (((frdpContext *) instance->context)->rdp_tab);
+ GtkBuilder *builder;
+@@ -1108,7 +1107,7 @@ open_freerdp (VinagreRdpTab *rdp_tab)
+ settings->encryption_level = ENCRYPTION_LEVEL_CLIENT_COMPATIBLE;
+ #endif
+ #include <freerdp/version.h>
+-#if (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 2 && FREERDP_VERSION_REVISION >= 1)
++#if (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 2 && FREERDP_VERSION_REVISION >= 1) || (FREERDP_VERSION_MAJOR == 2)
+ settings->UseRdpSecurityLayer = FALSE;
+ #else
+ settings->DisableEncryption = FALSE;