diff options
author | Pacho Ramos <pacho@gentoo.org> | 2016-12-08 11:47:38 +0100 |
---|---|---|
committer | Pacho Ramos <pacho@gentoo.org> | 2016-12-08 11:48:11 +0100 |
commit | bc6d358241857032dddc928073021ee6cbf16997 (patch) | |
tree | 4140b07d062116419b6b4652a9e9b09b6962df7d /net-misc/guacamole-server | |
parent | dev-lang/mono: bump (diff) | |
download | gentoo-bc6d358241857032dddc928073021ee6cbf16997.tar.gz gentoo-bc6d358241857032dddc928073021ee6cbf16997.tar.bz2 gentoo-bc6d358241857032dddc928073021ee6cbf16997.zip |
net-misc/guacamole-server: Be compatible with newer freerdp and tiny deps a bit
Package-Manager: portage-2.3.2
Diffstat (limited to 'net-misc/guacamole-server')
-rw-r--r-- | net-misc/guacamole-server/files/guacamole-server-0.9.9-clipboard-id-update.patch | 104 | ||||
-rw-r--r-- | net-misc/guacamole-server/files/guacamole-server-0.9.9-glyph-order.patch | 24 | ||||
-rw-r--r-- | net-misc/guacamole-server/guacamole-server-0.9.9-r1.ebuild (renamed from net-misc/guacamole-server/guacamole-server-0.9.9.ebuild) | 45 |
3 files changed, 154 insertions, 19 deletions
diff --git a/net-misc/guacamole-server/files/guacamole-server-0.9.9-clipboard-id-update.patch b/net-misc/guacamole-server/files/guacamole-server-0.9.9-clipboard-id-update.patch new file mode 100644 index 000000000000..4191479f34d8 --- /dev/null +++ b/net-misc/guacamole-server/files/guacamole-server-0.9.9-clipboard-id-update.patch @@ -0,0 +1,104 @@ +--- guacamole-server-0.9.5/src/protocols/rdp/rdp_cliprdr.c.orig 2015-03-17 12:39:58.316549546 +0000 ++++ guacamole-server-0.9.5/src/protocols/rdp/rdp_cliprdr.c 2015-03-17 12:40:57.059229957 +0000 +@@ -104,8 +104,8 @@ void guac_rdp_process_cb_monitor_ready(g + + /* Respond with supported format list */ + format_list->formats = (UINT32*) malloc(sizeof(UINT32)*2); +- format_list->formats[0] = CB_FORMAT_TEXT; +- format_list->formats[1] = CB_FORMAT_UNICODETEXT; ++ format_list->formats[0] = CF_TEXT; ++ format_list->formats[1] = CF_UNICODETEXT; + format_list->num_formats = 2; + + freerdp_channels_send_event(channels, (wMessage*) format_list); +@@ -147,22 +147,22 @@ void guac_rdp_process_cb_format_list(gua + for (i=0; i<event->num_formats; i++) { + + /* If plain text available, request it */ +- if (event->formats[i] == CB_FORMAT_TEXT) ++ if (event->formats[i] == CF_TEXT) + formats |= GUAC_RDP_CLIPBOARD_FORMAT_CP1252; +- else if (event->formats[i] == CB_FORMAT_UNICODETEXT) ++ else if (event->formats[i] == CF_UNICODETEXT) + formats |= GUAC_RDP_CLIPBOARD_FORMAT_UTF16; + + } + + /* Prefer Unicode to plain text */ + if (formats & GUAC_RDP_CLIPBOARD_FORMAT_UTF16) { +- __guac_rdp_cb_request_format(client, CB_FORMAT_UNICODETEXT); ++ __guac_rdp_cb_request_format(client, CF_UNICODETEXT); + return; + } + + /* Use plain text if Unicode unavailable */ + if (formats & GUAC_RDP_CLIPBOARD_FORMAT_CP1252) { +- __guac_rdp_cb_request_format(client, CB_FORMAT_TEXT); ++ __guac_rdp_cb_request_format(client, CF_TEXT); + return; + } + +@@ -186,11 +186,11 @@ void guac_rdp_process_cb_data_request(gu + /* Determine output encoding */ + switch (event->format) { + +- case CB_FORMAT_TEXT: ++ case CF_TEXT: + writer = GUAC_WRITE_CP1252; + break; + +- case CB_FORMAT_UNICODETEXT: ++ case CF_UNICODETEXT: + writer = GUAC_WRITE_UTF16; + break; + +@@ -232,12 +232,12 @@ void guac_rdp_process_cb_data_response(g + switch (client_data->requested_clipboard_format) { + + /* Non-Unicode */ +- case CB_FORMAT_TEXT: ++ case CF_TEXT: + reader = GUAC_READ_CP1252; + break; + + /* Unicode (UTF-16) */ +- case CB_FORMAT_UNICODETEXT: ++ case CF_UNICODETEXT: + reader = GUAC_READ_UTF16; + break; + +--- guacamole-server-0.9.5/src/protocols/rdp/client.c.orig 2015-03-17 12:40:07.079651048 +0000 ++++ guacamole-server-0.9.5/src/protocols/rdp/client.c 2015-03-17 12:40:57.064230015 +0000 +@@ -722,7 +722,7 @@ int guac_client_init(guac_client* client + guac_client_data->rdp_inst = rdp_inst; + guac_client_data->mouse_button_mask = 0; + guac_client_data->clipboard = guac_common_clipboard_alloc(GUAC_RDP_CLIPBOARD_MAX_LENGTH); +- guac_client_data->requested_clipboard_format = CB_FORMAT_TEXT; ++ guac_client_data->requested_clipboard_format = CF_TEXT; + guac_client_data->audio = NULL; + guac_client_data->filesystem = NULL; + guac_client_data->available_svc = guac_common_list_alloc(); +--- guacamole-server-0.9.5/src/protocols/rdp/rdp_stream.c.orig 2015-03-17 12:40:13.952730659 +0000 ++++ guacamole-server-0.9.5/src/protocols/rdp/rdp_stream.c 2015-03-17 12:40:57.066230038 +0000 +@@ -289,8 +289,8 @@ int guac_rdp_clipboard_end_handler(guac_ + + /* Notify server that text data is now available */ + format_list->formats = (UINT32*) malloc(sizeof(UINT32)); +- format_list->formats[0] = CB_FORMAT_TEXT; +- format_list->formats[1] = CB_FORMAT_UNICODETEXT; ++ format_list->formats[0] = CF_TEXT; ++ format_list->formats[1] = CF_UNICODETEXT; + format_list->num_formats = 2; + + freerdp_channels_send_event(channels, (wMessage*) format_list); +--- guacamole-server-0.9.5/src/protocols/rdp/client.h.orig 2015-03-17 12:40:22.535830076 +0000 ++++ guacamole-server-0.9.5/src/protocols/rdp/client.h 2015-03-17 12:40:57.067230050 +0000 +@@ -143,7 +143,7 @@ typedef struct rdp_guac_client_data { + * The format of the clipboard which was requested. Data received from + * the RDP server should conform to this format. This will be one of + * several legal clipboard format values defined within FreeRDP, such as +- * CB_FORMAT_TEXT. ++ * CF_TEXT. + */ + int requested_clipboard_format; + diff --git a/net-misc/guacamole-server/files/guacamole-server-0.9.9-glyph-order.patch b/net-misc/guacamole-server/files/guacamole-server-0.9.9-glyph-order.patch new file mode 100644 index 000000000000..70bba86d9000 --- /dev/null +++ b/net-misc/guacamole-server/files/guacamole-server-0.9.9-glyph-order.patch @@ -0,0 +1,24 @@ +--- guacamole-server-0.9.5/src/protocols/rdp/rdp_glyph.c~ 2015-02-04 05:58:22.000000000 +0000 ++++ guacamole-server-0.9.5/src/protocols/rdp/rdp_glyph.c 2015-03-17 14:04:45.549617112 +0000 +@@ -126,7 +126,8 @@ void guac_rdp_glyph_free(rdpContext* con + } + + void guac_rdp_glyph_begindraw(rdpContext* context, +- int x, int y, int width, int height, UINT32 fgcolor, UINT32 bgcolor) { ++ int x, int y, int width, int height, UINT32 fgcolor, UINT32 bgcolor, ++ BOOL fOpRedundant) { + + guac_client* client = ((rdp_freerdp_context*) context)->client; + rdp_guac_client_data* guac_client_data = +--- guacamole-server-0.9.5/src/protocols/rdp/rdp_glyph.h~ 2015-02-04 05:58:22.000000000 +0000 ++++ guacamole-server-0.9.5/src/protocols/rdp/rdp_glyph.h 2015-03-17 14:05:27.929142981 +0000 +@@ -53,7 +53,8 @@ void guac_rdp_glyph_new(rdpContext* cont + void guac_rdp_glyph_draw(rdpContext* context, rdpGlyph* glyph, int x, int y); + void guac_rdp_glyph_free(rdpContext* context, rdpGlyph* glyph); + void guac_rdp_glyph_begindraw(rdpContext* context, +- int x, int y, int width, int height, UINT32 fgcolor, UINT32 bgcolor); ++ int x, int y, int width, int height, UINT32 fgcolor, UINT32 bgcolor, ++ BOOL fOpRedundant); + void guac_rdp_glyph_enddraw(rdpContext* context, + int x, int y, int width, int height, UINT32 fgcolor, UINT32 bgcolor); + diff --git a/net-misc/guacamole-server/guacamole-server-0.9.9.ebuild b/net-misc/guacamole-server/guacamole-server-0.9.9-r1.ebuild index d05c1aad72ab..75e00be6635c 100644 --- a/net-misc/guacamole-server/guacamole-server-0.9.9.ebuild +++ b/net-misc/guacamole-server/guacamole-server-0.9.9-r1.ebuild @@ -2,47 +2,55 @@ # Distributed under the terms of the GNU General Public License v2 # $Id$ -EAPI=5 +EAPI=6 +inherit systemd user -inherit eutils systemd user DESCRIPTION="This is the proxy-daemon used by www-apps/guacamole" HOMEPAGE="http://guac-dev.org/" SRC_URI="mirror://sourceforge/guacamole/${P}.tar.gz" - LICENSE="MIT" - SLOT="0" - KEYWORDS="~amd64 ~x86" IUSE="rdesktop vnc ssh pulseaudio vorbis telnet ssl multilib" +REQUIRED_USE="multilib? ( ssl )" -DEPEND="x11-libs/cairo - media-libs/libpng:* - virtual/jpeg:* +RDEPEND=" + x11-libs/cairo + media-libs/libpng:0= + virtual/jpeg:0 dev-libs/ossp-uuid - rdesktop? ( <net-misc/freerdp-1.1.0_beta1_p20150312 ) - ssh? ( x11-libs/pango + rdesktop? ( >=net-misc/freerdp-1.1.0_beta1_p20150312:= ) + ssh? ( + x11-libs/pango net-libs/libssh2 ) - telnet? ( net-libs/libtelnet + telnet? ( + net-libs/libtelnet x11-libs/pango ) - vnc? ( net-libs/libvncserver[threads] + vnc? ( + net-libs/libvncserver[threads] pulseaudio? ( media-sound/pulseaudio ) ) - ssl? ( dev-libs/openssl:* ) - vorbis? ( media-libs/libvorbis )" + ssl? ( dev-libs/openssl:0= ) + vorbis? ( media-libs/libvorbis ) +" +DEPEND="${RDEPEND}" -RDEPEND="${DEPEND}" +PATCHES=( + # From Fedora for compat with newer freerdp + "${FILESDIR}"/${P}-glyph-order.patch + "${FILESDIR}"/${P}-clipboard-id-update.patch +) -REQUIRED_USE="multilib? ( ssl )" src_configure() { local myconf="--without-terminal --without-pango" + if use ssh || use telnet; then myconf="--with-terminal --with-pango" fi - econf $myconf \ + econf ${myconf} \ $(use_with ssh) \ $(use_with rdesktop rdp) \ $(use_with vnc) \ @@ -53,8 +61,7 @@ src_configure() { } src_install() { - emake DESTDIR="${D}" install - + default doinitd "${FILESDIR}/guacd" systemd_dounit "${FILESDIR}/guacd.service" } |