summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRémi Cardona <remi@gentoo.org>2009-06-07 21:06:30 +0000
committerRémi Cardona <remi@gentoo.org>2009-06-07 21:06:30 +0000
commit7c990c667a263d7fb65516e0770bc43e703f7c7c (patch)
treef38f17e02b98bd0c02c5f2e24648ab97db49ae20 /x11-libs/libxcb
parentVersion bump. (diff)
downloadgentoo-2-7c990c667a263d7fb65516e0770bc43e703f7c7c.tar.gz
gentoo-2-7c990c667a263d7fb65516e0770bc43e703f7c7c.tar.bz2
gentoo-2-7c990c667a263d7fb65516e0770bc43e703f7c7c.zip
x11-libs/libxcb: bump to 1.3, add xcb-rebuilder.sh from the x11 overlay
(Portage version: 2.2_rc33/cvs/Linux i686)
Diffstat (limited to 'x11-libs/libxcb')
-rw-r--r--x11-libs/libxcb/ChangeLog8
-rwxr-xr-xx11-libs/libxcb/files/xcb-rebuilder.sh63
-rw-r--r--x11-libs/libxcb/libxcb-1.3.ebuild47
3 files changed, 117 insertions, 1 deletions
diff --git a/x11-libs/libxcb/ChangeLog b/x11-libs/libxcb/ChangeLog
index 971b0ea47beb..180ff8ef540d 100644
--- a/x11-libs/libxcb/ChangeLog
+++ b/x11-libs/libxcb/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for x11-libs/libxcb
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/libxcb/ChangeLog,v 1.30 2009/05/04 17:06:59 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/libxcb/ChangeLog,v 1.31 2009/06/07 21:06:29 remi Exp $
+
+*libxcb-1.3 (07 Jun 2009)
+
+ 07 Jun 2009; Rémi Cardona <remi@gentoo.org> +libxcb-1.3.ebuild,
+ +files/xcb-rebuilder.sh:
+ bump to 1.3, add xcb-rebuilder.sh from the x11 overlay
04 May 2009; Samuli Suominen <ssuominen@gentoo.org> libxcb-1.1.ebuild,
libxcb-1.1.90.1.ebuild:
diff --git a/x11-libs/libxcb/files/xcb-rebuilder.sh b/x11-libs/libxcb/files/xcb-rebuilder.sh
new file mode 100755
index 000000000000..0f1a3aa753e4
--- /dev/null
+++ b/x11-libs/libxcb/files/xcb-rebuilder.sh
@@ -0,0 +1,63 @@
+#!/bin/bash
+
+# To use something besides `emerge` to install packages, set
+# XCB_REBUILDER_INSTALL to that binary.
+
+. /etc/init.d/functions.sh
+
+case ${1} in
+ '') ;;
+ *)
+ einfo 'Rebuilds broken packages from the XCB library renaming'
+ einfo
+ einfo 'To use something besides `emerge`, set the INSTALL variable to their binary.'
+ exit 1
+ ;;
+esac
+
+if ! type -p qfile >/dev/null; then
+ einfo "Please install app-portage/portage-utils."
+ exit 1
+fi
+
+if ! type -p scanelf >/dev/null; then
+ einfo "Please install app-misc/pax-utils."
+ exit 1
+fi
+
+einfo "Fixing broken libtool archives (.la)"
+for i in $(qlist -a | grep "\.la$"); do
+ sed -i \
+ -e "s:[^[:space:]]*xcb-xlib[^[:space:]]*::g" \
+ "${i}" 2>/dev/null
+done
+
+einfo "Scanning for libraries requiring libxcb-xlib.so..."
+for i in $(qlist -a | grep "\.so$"); do
+ scanelf -n $i \
+ | grep -q xcb-xlib \
+ && XCB_LIBS="${XCB_LIBS} ${i}"
+done
+
+if [[ -n ${XCB_LIBS} ]]; then
+ einfo "Broken libraries:"
+ for lib in ${XCB_LIBS}; do
+ echo " ${lib}"
+ done
+ ebegin "Scanning for packages installing broken libraries"
+ XCB_PACKAGES=$(qfile -qC ${XCB_LIBS} | sort | uniq)
+ eend 0
+else
+ einfo "No broken libraries detected"
+ exit 0
+fi
+
+
+einfo "Broken packages:"
+for pkg in ${XCB_PACKAGES}; do
+ echo " ${pkg}"
+done
+
+ebegin "Rebuilding broken packages"
+${XCB_REBUILDER_INSTALL:-emerge -1} ${XCB_PACKAGES}
+eend $?
diff --git a/x11-libs/libxcb/libxcb-1.3.ebuild b/x11-libs/libxcb/libxcb-1.3.ebuild
new file mode 100644
index 000000000000..877209df17b1
--- /dev/null
+++ b/x11-libs/libxcb/libxcb-1.3.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/libxcb/libxcb-1.3.ebuild,v 1.1 2009/06/07 21:06:29 remi Exp $
+
+EAPI="2"
+
+# Must be before x-modular eclass is inherited
+#SNAPSHOT="yes"
+
+inherit x-modular
+
+DESCRIPTION="X C-language Bindings library"
+HOMEPAGE="http://xcb.freedesktop.org/"
+SRC_URI="http://xcb.freedesktop.org/dist/${P}.tar.bz2"
+LICENSE="X11"
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE="doc selinux"
+
+RDEPEND="x11-libs/libXau
+ x11-libs/libXdmcp
+ dev-libs/libpthread-stubs"
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen )
+ dev-libs/libxslt
+ >=x11-proto/xcb-proto-1.5
+ >=dev-lang/python-2.5[xml]"
+
+pkg_setup() {
+ CONFIGURE_OPTIONS="$(use_enable doc build-docs)
+ $(use_enable selinux xselinux)
+ --enable-xinput"
+}
+
+src_install() {
+ x-modular_src_install
+ dobin "${FILESDIR}"/xcb-rebuilder.sh || die
+}
+
+pkg_postinst() {
+ x-modular_pkg_postinst
+
+ ewarn "libxcb-1.2 removed libxcb-xlib.so. Run xcb-rebuilder.sh to rebuild"
+ ewarn "packages that broke. revdep-rebuild may also work."
+ ebeep 5
+ epause 5
+}