diff options
author | Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org> | 2012-03-03 12:19:25 +0000 |
---|---|---|
committer | Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org> | 2012-03-03 12:19:25 +0000 |
commit | e908a97e62746920ff24c048ae808a444cdfa2c6 (patch) | |
tree | 664dc28c46070026ef66a6d98980e6658200dc7f /x11-libs/libxcb | |
parent | Run java-pkg-opt-2_pkg_setup to use jdk when compiling, bug #401803 by DrSlon... (diff) | |
download | historical-e908a97e62746920ff24c048ae808a444cdfa2c6.tar.gz historical-e908a97e62746920ff24c048ae808a444cdfa2c6.tar.bz2 historical-e908a97e62746920ff24c048ae808a444cdfa2c6.zip |
Add patch to fix hang on BSD and OS X, bug #405951.
Package-Manager: portage-2.2.0_alpha89/cvs/Linux x86_64
Diffstat (limited to 'x11-libs/libxcb')
-rw-r--r-- | x11-libs/libxcb/ChangeLog | 8 | ||||
-rw-r--r-- | x11-libs/libxcb/Manifest | 4 | ||||
-rw-r--r-- | x11-libs/libxcb/files/libxcb-1.8-waitall-hang.patch | 54 | ||||
-rw-r--r-- | x11-libs/libxcb/libxcb-1.8-r1.ebuild | 39 |
4 files changed, 103 insertions, 2 deletions
diff --git a/x11-libs/libxcb/ChangeLog b/x11-libs/libxcb/ChangeLog index 0573d8156e3d..3dfef0178896 100644 --- a/x11-libs/libxcb/ChangeLog +++ b/x11-libs/libxcb/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for x11-libs/libxcb # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-libs/libxcb/ChangeLog,v 1.85 2012/02/08 23:49:11 chithanh Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-libs/libxcb/ChangeLog,v 1.86 2012/03/03 12:19:25 chithanh Exp $ + +*libxcb-1.8-r1 (03 Mar 2012) + + 03 Mar 2012; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org> + +libxcb-1.8-r1.ebuild, +files/libxcb-1.8-waitall-hang.patch: + Add patch to fix hang on BSD and OS X, bug #405951. 08 Feb 2012; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org> libxcb-1.7.ebuild, libxcb-1.8.ebuild: diff --git a/x11-libs/libxcb/Manifest b/x11-libs/libxcb/Manifest index 279661638940..a70a97d1cdd6 100644 --- a/x11-libs/libxcb/Manifest +++ b/x11-libs/libxcb/Manifest @@ -1,8 +1,10 @@ AUX libxcb-1.7-interix.patch 2963 RMD160 5df5ea09b03a4be7052114b0504d3d2a3017a49e SHA1 39e76ffd95cacd84fbda1f46e04171e5c5ba0301 SHA256 291cd66ba133f341e48f281578cd80dfa22c908b81990933e9feb616973b9587 +AUX libxcb-1.8-waitall-hang.patch 1659 RMD160 c96976cee1c309a06c5aa2c15303921e2853cf01 SHA1 45db67ccec41608b8090345929517ebe3df0ecdc SHA256 f1007ca0c13c82b8a5adf984892eea19c32059f2cea3da80b95391e9723908a5 AUX xcb-rebuilder.sh 1511 RMD160 81acde214faf7b4ed00a378c36ec5c43f19f3bc7 SHA1 7d2ef15c2449cb4c72d89059e063ce8ae228d014 SHA256 37910aacdcd793a22af2eea07741bbdde8c62096c67ab7530e72424fadd14bc7 DIST libxcb-1.7.tar.bz2 318619 RMD160 f6748b9751e339c2669a6b9322b421abbbff7afb SHA1 7540f0587907bce421914f0ddb813810cb2f36f8 SHA256 e776dc35e2a66094e7308ce2e045fb4e27cf3ca30ab1813a8fc08538140724df DIST libxcb-1.8.tar.bz2 372730 RMD160 f6adad4fdd1773e604df5e7b556107c7fa620321 SHA1 18b76759d5bbb863777f37bf3aec23ebaa31d5be SHA256 25c3600bec104c5aa6e9f559bfe0011b0e223bde726b849b58f758c2d4e6fc5e EBUILD libxcb-1.7.ebuild 1142 RMD160 fe501de9411ca172467ecc657b0d19ae13182e0f SHA1 35e5b3c19cbb48b3598d16f0f47da519a1c2e7c2 SHA256 5e46fd915c0dac79d0fd6c55737d34edd815b8da0b485d68eadf6a62b66ff9a0 +EBUILD libxcb-1.8-r1.ebuild 1144 RMD160 5674a45f1430f11a89221e77d094e79819f49a4a SHA1 a5d2a0ea5db5eb5e6cf1e26876f27fadd6fcc1f4 SHA256 53737bacc9df341b1dc84fd601755228436af2266bcde4cb71ae745da9503529 EBUILD libxcb-1.8.ebuild 1084 RMD160 0e34980de3ebd10ab1a1f1fd7efefda372199d9d SHA1 e06d695ea1c54a5c3b07f02e349bae7a50f02838 SHA256 926fb75f2953005a98e6fc9dff5da1b79aa1738c1abe0eaad2c0138e784ad4bf -MISC ChangeLog 10007 RMD160 9da9709278744dad408a43d8a38a0816bea2375d SHA1 b66bd2fd5da8b4742ea8f275a842d77fe288b709 SHA256 8819d875e78746d1fd68002c01d339e7805406e1722dffaa84727533f0686564 +MISC ChangeLog 10224 RMD160 ba4ca27d311d766f13a677f5e60e154547553708 SHA1 dee6b0c8e3ffe455362b032a62289c8f6943a2e6 SHA256 df407a248304173ce286e65727d3f83f38dfd96d75910a4645b78063b6f917ef MISC metadata.xml 156 RMD160 c1274bdccf57603d580de0075ba07a35b7509560 SHA1 6f78f604e3d079d39189b40aaaa1ddb06182ad91 SHA256 5101ab0d4cc8c7125eea733c44e86962769bd77acaf53b69223b9cadcdd29055 diff --git a/x11-libs/libxcb/files/libxcb-1.8-waitall-hang.patch b/x11-libs/libxcb/files/libxcb-1.8-waitall-hang.patch new file mode 100644 index 000000000000..ef929cf2c67c --- /dev/null +++ b/x11-libs/libxcb/files/libxcb-1.8-waitall-hang.patch @@ -0,0 +1,54 @@ +From 2b5bc1d3299510e10a1733e5a3b326232c774b75 Mon Sep 17 00:00:00 2001 +From: Julien Cristau <jcristau@debian.org> +Date: Thu, 9 Feb 2012 23:54:55 +0100 +Subject: [PATCH] Stop using recv(MSG_WAITALL) + +In one case we don't actually want to fill up our buffer. In the other +one we're looping over the recv() until we have all the data. + +Debian bug#659104 + +Reported-by: Christoph Egger <christoph@debian.org> +Signed-off-by: Julien Cristau <jcristau@debian.org> +--- + src/xcb_in.c | 10 +++------- + 1 files changed, 3 insertions(+), 7 deletions(-) + +diff --git a/src/xcb_in.c b/src/xcb_in.c +index 969cfc0..4d8d691 100644 +--- a/src/xcb_in.c ++++ b/src/xcb_in.c +@@ -51,11 +51,6 @@ + #define XCB_REPLY 1 + #define XCB_XGE_EVENT 35 + +-/* required for compiling for Win32 using MinGW */ +-#ifndef MSG_WAITALL +-#define MSG_WAITALL 0 +-#endif +- + struct event_list { + xcb_generic_event_t *event; + struct event_list *next; +@@ -269,7 +264,7 @@ static int read_block(const int fd, void *buf, const ssize_t len) + int done = 0; + while(done < len) + { +- int ret = recv(fd, ((char *) buf) + done, len - done,MSG_WAITALL); ++ int ret = recv(fd, ((char *) buf) + done, len - done, 0); + if(ret > 0) + done += ret; + #ifndef _WIN32 +@@ -661,7 +656,8 @@ void _xcb_in_replies_done(xcb_connection_t *c) + + int _xcb_in_read(xcb_connection_t *c) + { +- int n = recv(c->fd, c->in.queue + c->in.queue_len, sizeof(c->in.queue) - c->in.queue_len,MSG_WAITALL); ++ int n = recv(c->fd, c->in.queue + c->in.queue_len, ++ sizeof(c->in.queue) - c->in.queue_len, 0); + if(n > 0) + c->in.queue_len += n; + while(read_packet(c)) +-- +1.7.2.5 + diff --git a/x11-libs/libxcb/libxcb-1.8-r1.ebuild b/x11-libs/libxcb/libxcb-1.8-r1.ebuild new file mode 100644 index 000000000000..512d304949b4 --- /dev/null +++ b/x11-libs/libxcb/libxcb-1.8-r1.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-libs/libxcb/libxcb-1.8-r1.ebuild,v 1.1 2012/03/03 12:19:25 chithanh Exp $ + +EAPI=3 + +inherit python xorg-2 + +DESCRIPTION="X C-language Bindings library" +HOMEPAGE="http://xcb.freedesktop.org/" +EGIT_REPO_URI="git://anongit.freedesktop.org/git/xcb/libxcb" +[[ ${PV} != 9999* ]] && \ + SRC_URI="http://xcb.freedesktop.org/dist/${P}.tar.bz2" + +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="doc selinux" + +RDEPEND="x11-libs/libXau + x11-libs/libXdmcp + dev-libs/libpthread-stubs" +DEPEND="${RDEPEND} + doc? ( app-doc/doxygen ) + dev-libs/libxslt + =dev-lang/python-2*[xml] + >=x11-proto/xcb-proto-1.7" + +PATCHES=( + "${FILESDIR}"/${PN}-1.8-waitall-hang.patch +) + +pkg_setup() { + python_set_active_version 2 + xorg-2_pkg_setup + XORG_CONFIGURE_OPTIONS=( + $(use_enable doc build-docs) + $(use_enable selinux) + --enable-xinput + ) +} |