Gentoo Archives: gentoo-commits

From: Gilles Dartiguelongue <eva@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-misc/vinagre/files/, net-misc/vinagre/
Date: Wed, 30 Aug 2017 07:33:32
Message-Id: 1504078398.96645c4e78bb42991eb98af63db8e54ac1007c20.eva@gentoo
1 commit: 96645c4e78bb42991eb98af63db8e54ac1007c20
2 Author: Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
3 AuthorDate: Wed Aug 30 07:30:26 2017 +0000
4 Commit: Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
5 CommitDate: Wed Aug 30 07:33:18 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=96645c4e
7
8 net-misc/vinagre: fix build with newer freerdp snapshots, bug #609474
9
10 Package-Manager: Portage-2.3.8, Repoman-2.3.3
11
12 .../vinagre/files/vinagre-3.22.0-freerdp2-2.patch | 117 +++++++++++++++++++++
13 net-misc/vinagre/vinagre-3.22.0-r2.ebuild | 70 ++++++++++++
14 2 files changed, 187 insertions(+)
15
16 diff --git a/net-misc/vinagre/files/vinagre-3.22.0-freerdp2-2.patch b/net-misc/vinagre/files/vinagre-3.22.0-freerdp2-2.patch
17 new file mode 100644
18 index 00000000000..6c22b46b258
19 --- /dev/null
20 +++ b/net-misc/vinagre/files/vinagre-3.22.0-freerdp2-2.patch
21 @@ -0,0 +1,117 @@
22 +Fix build issue with freerdp2
23 +
24 +Gnome-Bug: https://bugzilla.gnome.org/show_bug.cgi?id=765444
25 +Gentoo-Bug: https://bugs.gentoo.org/show_bug.cgi?id=609474
26 +
27 +diff --git c/plugins/rdp/vinagre-rdp-tab.c i/plugins/rdp/vinagre-rdp-tab.c
28 +index b731f9b20ec910cc..13100de3dc0e07e1 100644
29 +--- c/plugins/rdp/vinagre-rdp-tab.c
30 ++++ i/plugins/rdp/vinagre-rdp-tab.c
31 +@@ -476,16 +476,17 @@ frdp_drawing_area_draw (GtkWidget *area,
32 + return TRUE;
33 + }
34 +
35 +-static void
36 ++static BOOL
37 + frdp_begin_paint (rdpContext *context)
38 + {
39 + rdpGdi *gdi = context->gdi;
40 +
41 + gdi->primary->hdc->hwnd->invalid->null = 1;
42 + gdi->primary->hdc->hwnd->ninvalid = 0;
43 ++ return TRUE;
44 + }
45 +
46 +-static void
47 ++static BOOL
48 + frdp_end_paint (rdpContext *context)
49 + {
50 + VinagreRdpTab *rdp_tab = ((frdpContext *) context)->rdp_tab;
51 +@@ -495,7 +496,7 @@ frdp_end_paint (rdpContext *context)
52 + gint x, y, w, h;
53 +
54 + if (gdi->primary->hdc->hwnd->invalid->null)
55 +- return;
56 ++ return TRUE;
57 +
58 + x = gdi->primary->hdc->hwnd->invalid->x;
59 + y = gdi->primary->hdc->hwnd->invalid->y;
60 +@@ -517,6 +518,7 @@ frdp_end_paint (rdpContext *context)
61 + {
62 + gtk_widget_queue_draw_area (priv->display, x, y, w, h);
63 + }
64 ++ return TRUE;
65 + }
66 +
67 + static BOOL
68 +@@ -587,15 +589,7 @@ frdp_post_connect (freerdp *instance)
69 + rdpGdi *gdi;
70 + int stride;
71 +
72 +- gdi_init (instance,
73 +-#if defined(FREERDP_VERSION_MAJOR) && defined(FREERDP_VERSION_MINOR) && \
74 +- !(FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && \
75 +- FREERDP_VERSION_MINOR >= 2))
76 +- CLRBUF_24BPP,
77 +-#else
78 +- CLRBUF_32BPP,
79 +-#endif
80 +- NULL);
81 ++ gdi_init (instance, PIXEL_FORMAT_BGRA32);
82 + gdi = instance->context->gdi;
83 +
84 + instance->update->BeginPaint = frdp_begin_paint;
85 +@@ -934,11 +928,13 @@ frdp_authenticate (freerdp *instance,
86 + return TRUE;
87 + }
88 +
89 +-static BOOL
90 ++static DWORD
91 + frdp_certificate_verify (freerdp *instance,
92 +- char *subject,
93 +- char *issuer,
94 +- char *fingerprint)
95 ++ const char *common_name,
96 ++ const char *subject,
97 ++ const char *issuer,
98 ++ const char *fingerprint,
99 ++ BOOL host_mismatch)
100 + {
101 + VinagreTab *tab = VINAGRE_TAB (((frdpContext *) instance->context)->rdp_tab);
102 + GtkBuilder *builder;
103 +@@ -968,17 +964,20 @@ frdp_certificate_verify (freerdp *instance,
104 + gtk_widget_hide (dialog);
105 +
106 +
107 +- return response == GTK_RESPONSE_YES;
108 ++ return (response == GTK_RESPONSE_YES) ? 1 : 0;
109 + }
110 +
111 +
112 + #if HAVE_FREERDP_1_1
113 +-static BOOL
114 ++static DWORD
115 + frdp_changed_certificate_verify (freerdp *instance,
116 +- char *subject,
117 +- char *issuer,
118 +- char *new_fingerprint,
119 +- char *old_fingerprint)
120 ++ const char *common_name,
121 ++ const char *subject,
122 ++ const char *issuer,
123 ++ const char *new_fingerprint,
124 ++ const char *old_subject,
125 ++ const char *old_issuer,
126 ++ const char *old_fingerprint)
127 + {
128 + VinagreTab *tab = VINAGRE_TAB (((frdpContext *) instance->context)->rdp_tab);
129 + GtkBuilder *builder;
130 +@@ -1023,7 +1022,7 @@ frdp_changed_certificate_verify (freerdp *instance,
131 + gtk_widget_hide (dialog);
132 +
133 +
134 +- return response == GTK_RESPONSE_YES;
135 ++ return (response == GTK_RESPONSE_YES) ? 1 : 0;
136 + }
137 + #endif
138 +
139
140 diff --git a/net-misc/vinagre/vinagre-3.22.0-r2.ebuild b/net-misc/vinagre/vinagre-3.22.0-r2.ebuild
141 new file mode 100644
142 index 00000000000..93fecd7376a
143 --- /dev/null
144 +++ b/net-misc/vinagre/vinagre-3.22.0-r2.ebuild
145 @@ -0,0 +1,70 @@
146 +# Copyright 1999-2017 Gentoo Foundation
147 +# Distributed under the terms of the GNU General Public License v2
148 +
149 +EAPI=6
150 +inherit autotools gnome2 linux-info vala
151 +
152 +DESCRIPTION="VNC client for the GNOME desktop"
153 +HOMEPAGE="https://wiki.gnome.org/Apps/Vinagre"
154 +
155 +LICENSE="GPL-3+"
156 +SLOT="0"
157 +KEYWORDS="~amd64 ~arm ~ia64 ~ppc ~ppc64 ~x86"
158 +IUSE="rdp +ssh spice +telepathy zeroconf"
159 +
160 +# cairo used in vinagre-tab
161 +# gdk-pixbuf used all over the place
162 +RDEPEND="
163 + >=dev-libs/glib-2.32.0:2
164 + >=x11-libs/gtk+-3.9.6:3
165 + app-crypt/libsecret
166 + >=dev-libs/libxml2-2.6.31:2
167 + >=net-libs/gtk-vnc-0.4.3[gtk3]
168 + x11-libs/cairo:=
169 + x11-libs/gdk-pixbuf:2
170 + x11-themes/hicolor-icon-theme
171 +
172 + rdp? ( >=net-misc/freerdp-1.1:= )
173 + ssh? ( >=x11-libs/vte-0.20:2.91 )
174 + spice? (
175 + app-emulation/spice-protocol
176 + >=net-misc/spice-gtk-0.5[gtk3] )
177 + telepathy? (
178 + dev-libs/dbus-glib
179 + >=net-libs/telepathy-glib-0.11.6 )
180 + zeroconf? ( >=net-dns/avahi-0.6.26[dbus,gtk3] )
181 +"
182 +DEPEND="${RDEPEND}
183 + $(vala_depend)
184 + app-text/yelp-tools
185 + dev-libs/appstream-glib
186 + >=dev-util/intltool-0.50
187 + >=sys-devel/gettext-0.17
188 + virtual/pkgconfig
189 +
190 + gnome-base/gnome-common
191 +"
192 +# gnome-base/gnome-common needed for eautoreconf
193 +pkg_pretend() {
194 + # Needed for VNC ssh tunnel, bug #518574
195 + CONFIG_CHECK="~IPV6"
196 + check_extra_config
197 +}
198 +
199 +src_prepare() {
200 + # https://bugzilla.gnome.org/show_bug.cgi?id=765444
201 + eapply "${FILESDIR}"/${PN}-3.20.2-freerdp2.patch
202 + eapply "${FILESDIR}"/${PN}-3.22.0-freerdp2-2.patch
203 + vala_src_prepare
204 + eautoreconf
205 + gnome2_src_prepare
206 +}
207 +
208 +src_configure() {
209 + gnome2_src_configure \
210 + $(use_enable rdp) \
211 + $(use_enable ssh) \
212 + $(use_enable spice) \
213 + $(use_with telepathy) \
214 + $(use_with zeroconf avahi)
215 +}