Created attachment 463894 [details] Failed build with net-misc/freerdp-2.0.0_pre20161219 Issues similar to #604258. net-misc/vinagre builds fine against net-misc/freerdp-2.0.0_pre20160722 but fails with net-misc/freerdp-2.0.0_pre20161219. This can be fixed by setting `rdp? ( <=net-misc/freerdp-2.0.0_pre20160722 )` in RDEPEND.
can confirm this too. compiling with net-misc/freerdp-1.2.1_pre20150326-r1 works fine
please add this patch to get it compiled with new freerdp ::::::: ============================================================ diff --git c/configure.ac i/configure.ac index 0dfc0dbf3069a17b..35e5f7b59fe7f9a3 100644 --- c/configure.ac +++ i/configure.ac @@ -58,7 +58,7 @@ AS_IF([test "x$have_ssh" = "xyes"], AM_CONDITIONAL([VINAGRE_ENABLE_SSH], [test "x$have_ssh" = "xyes"]) # Whether to enable support for RDP. -RDP_DEPS="freerdp x11" +RDP_DEPS="freerdp2 x11" AC_ARG_ENABLE([rdp], [AS_HELP_STRING([--disable-rdp], [Disable Remote Desktop Protocol (RDP) support])]) @@ -66,7 +66,7 @@ AC_ARG_ENABLE([rdp], AS_IF([test "x$enable_rdp" != "xno"], [PKG_CHECK_EXISTS([$RDP_DEPS], [have_rdp=yes - PKG_CHECK_EXISTS(freerdp >= 1.1, + PKG_CHECK_EXISTS(freerdp2 >= 1.1, [AC_DEFINE([HAVE_FREERDP_1_1], [1], [FreeRDP is of version 1.1 or newer])], [])], [have_rdp=no])], [have_rdp=no]) diff --git c/plugins/rdp/vinagre-rdp-tab.c i/plugins/rdp/vinagre-rdp-tab.c index b731f9b20ec910cc..13100de3dc0e07e1 100644 --- c/plugins/rdp/vinagre-rdp-tab.c +++ i/plugins/rdp/vinagre-rdp-tab.c @@ -476,16 +476,17 @@ 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 +496,7 @@ frdp_end_paint (rdpContext *context) gint x, y, w, h; if (gdi->primary->hdc->hwnd->invalid->null) - return; + return TRUE; x = gdi->primary->hdc->hwnd->invalid->x; y = gdi->primary->hdc->hwnd->invalid->y; @@ -517,6 +518,7 @@ frdp_end_paint (rdpContext *context) { gtk_widget_queue_draw_area (priv->display, x, y, w, h); } + return TRUE; } static BOOL @@ -587,15 +589,7 @@ frdp_post_connect (freerdp *instance) rdpGdi *gdi; int stride; - gdi_init (instance, -#if defined(FREERDP_VERSION_MAJOR) && defined(FREERDP_VERSION_MINOR) && \ - !(FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && \ - FREERDP_VERSION_MINOR >= 2)) - CLRBUF_24BPP, -#else - CLRBUF_32BPP, -#endif - NULL); + gdi_init (instance, PIXEL_FORMAT_BGRA32); gdi = instance->context->gdi; instance->update->BeginPaint = frdp_begin_paint; @@ -934,11 +928,13 @@ frdp_authenticate (freerdp *instance, return TRUE; } -static BOOL +static DWORD frdp_certificate_verify (freerdp *instance, - char *subject, - char *issuer, - char *fingerprint) + 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; @@ -968,17 +964,20 @@ frdp_certificate_verify (freerdp *instance, gtk_widget_hide (dialog); - return response == GTK_RESPONSE_YES; + return (response == GTK_RESPONSE_YES) ? 1 : 0; } #if HAVE_FREERDP_1_1 -static BOOL +static DWORD frdp_changed_certificate_verify (freerdp *instance, - char *subject, - char *issuer, - char *new_fingerprint, - char *old_fingerprint) + 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; @@ -1023,7 +1022,7 @@ frdp_changed_certificate_verify (freerdp *instance, gtk_widget_hide (dialog); - return response == GTK_RESPONSE_YES; + return (response == GTK_RESPONSE_YES) ? 1 : 0; } #endif
Confirming hitting bug. Patch works (replaces earlier vinagre-3.20.2-freerdp2.patch), thank you Mr. Jimenez. Vote +1
Created attachment 472588 [details, diff] vinagre-3.22.0-freerdp.patch I confirm that suggested makes build succeed. The only thing that needs to be modified - there is no need in patching configure.ac, since another patch, from https://bugzilla.gnome.org/show_bug.cgi?id=765444 was applied already.
Created attachment 472600 [details, diff] vinagre-3.22.0-r1.ebuild.patch Patch for ebuild.
commit 96645c4e78bb42991eb98af63db8e54ac1007c20 Date: Wed Aug 30 09:30:26 2017 +0200 net-misc/vinagre: fix build with newer freerdp snapshots, bug #609474 Package-Manager: Portage-2.3.8, Repoman-2.3.3 Thanks for reporting and the patch.