Bump to 2.30, from the GNOME overlay. Ebuild updates and patches by tetromino.
authorNirbheek Chauhan <nirbheek@gentoo.org>
Tue, 27 Sep 2011 12:59:46 +0000 (12:59 +0000)
committerNirbheek Chauhan <nirbheek@gentoo.org>
Tue, 27 Sep 2011 12:59:46 +0000 (12:59 +0000)
Package-Manager: portage-2.2.0_alpha51/cvs/Linux x86_64

dev-libs/glib/ChangeLog
dev-libs/glib/files/glib-2.29.18-external-gdbus-codegen.patch [new file with mode: 0644]
dev-libs/glib/glib-2.30.0.ebuild [new file with mode: 0644]
dev-libs/glib/metadata.xml

index 2b2cd19ac7e12eeb5ccf310f8b62f52db7d0b955..c1f1fc376b58cbd1012332fc0ef19a1bb3831130 100644 (file)
@@ -1,6 +1,13 @@
 # ChangeLog for dev-libs/glib
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/glib/ChangeLog,v 1.482 2011/08/14 09:44:14 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/glib/ChangeLog,v 1.483 2011/09/27 12:59:45 nirbheek Exp $
+
+*glib-2.30.0 (27 Sep 2011)
+
+  27 Sep 2011; Nirbheek Chauhan <nirbheek@gentoo.org>
+  +files/glib-2.29.18-external-gdbus-codegen.patch, +glib-2.30.0.ebuild:
+  Bump to 2.30, from the GNOME overlay. Ebuild updates and patches by
+  tetromino.
 
   14 Aug 2011; Samuli Suominen <ssuominen@gentoo.org> glib-2.28.8.ebuild:
   Revert last libtool file preservation since we have usable pkg-config files
diff --git a/dev-libs/glib/files/glib-2.29.18-external-gdbus-codegen.patch b/dev-libs/glib/files/glib-2.29.18-external-gdbus-codegen.patch
new file mode 100644 (file)
index 0000000..abec0dd
--- /dev/null
@@ -0,0 +1,95 @@
+From 89a3234d52451cadb21c322931adb6e8928eb21d Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino@gmail.com>
+Date: Wed, 24 Aug 2011 21:35:59 -0400
+Subject: [PATCH] Use an external gdbus-codegen package
+
+---
+ configure.ac                                       |    4 +---
+ docs/reference/gio/Makefile.am                     |    3 +--
+ gio/Makefile.am                                    |    2 +-
+ gio/tests/Makefile.am                              |    4 +---
+ gio/tests/gdbus-object-manager-example/Makefile.am |    4 +---
+ 5 files changed, 5 insertions(+), 12 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index dc23b8b..0bb0c4a 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -365,7 +365,7 @@ fi
+ AC_SUBST(PERL_PATH)
+ # Need suitable python path for greport
+-AM_PATH_PYTHON(2.5,,PYTHON="/usr/bin/env python2.5")
++# AM_PATH_PYTHON(2.5,,PYTHON="/usr/bin/env python2.5")
+ dnl ***********************
+@@ -3858,8 +3858,6 @@ gobject/tests/Makefile
+ gthread/Makefile
+ gthread/tests/Makefile
+ gio/Makefile
+-gio/gdbus-2.0/codegen/Makefile
+-gio/gdbus-2.0/codegen/config.py
+ gio/xdgmime/Makefile
+ gio/inotify/Makefile
+ gio/libasyncns/Makefile
+diff --git a/docs/reference/gio/Makefile.am b/docs/reference/gio/Makefile.am
+index 9eb0fce..511aec9 100644
+--- a/docs/reference/gio/Makefile.am
++++ b/docs/reference/gio/Makefile.am
+@@ -79,8 +79,7 @@ man_MANS =                   \
+       gio-querymodules.1      \
+       glib-compile-schemas.1  \
+       gsettings.1             \
+-      gdbus.1                 \
+-      gdbus-codegen.1
++      gdbus.1
+ if ENABLE_MAN
+diff --git a/gio/Makefile.am b/gio/Makefile.am
+index 7803bb2..d4a08e5 100644
+--- a/gio/Makefile.am
++++ b/gio/Makefile.am
+@@ -2,7 +2,7 @@ include $(top_srcdir)/Makefile.decl
+ NULL =
+-SUBDIRS = gdbus-2.0/codegen
++SUBDIRS =
+ if OS_UNIX
+ SUBDIRS += libasyncns xdgmime
+diff --git a/gio/tests/Makefile.am b/gio/tests/Makefile.am
+index a85ea4f..8fbe8ec 100644
+--- a/gio/tests/Makefile.am
++++ b/gio/tests/Makefile.am
+@@ -261,9 +261,7 @@ gdbus_bz627724_LDADD = $(progs_ldadd)
+ if OS_UNIX
+ gdbus-test-codegen-generated.h gdbus-test-codegen-generated.c : test-codegen.xml
+-      $(AM_V_GEN) UNINSTALLED_GLIB_SRCDIR=$(top_srcdir) \
+-              UNINSTALLED_GLIB_BUILDDIR=$(top_builddir) \
+-              $(PYTHON) $(top_builddir)/gio/gdbus-2.0/codegen/gdbus-codegen \
++      $(AM_V_GEN) gdbus-codegen \
+               --interface-prefix org.project. \
+               --generate-c-code gdbus-test-codegen-generated \
+               --c-generate-object-manager \
+diff --git a/gio/tests/gdbus-object-manager-example/Makefile.am b/gio/tests/gdbus-object-manager-example/Makefile.am
+index 5e6eb9a..8b16926 100644
+--- a/gio/tests/gdbus-object-manager-example/Makefile.am
++++ b/gio/tests/gdbus-object-manager-example/Makefile.am
+@@ -22,9 +22,7 @@ GDBUS_GENERATED =                                                                            \
+       $(NULL)
+ $(GDBUS_GENERATED) : gdbus-example-objectmanager.xml
+-      $(AM_V_GEN) UNINSTALLED_GLIB_SRCDIR=$(top_srcdir) \
+-              UNINSTALLED_GLIB_BUILDDIR=$(top_builddir) \
+-              $(PYTHON) $(top_builddir)/gio/gdbus-2.0/codegen/gdbus-codegen \
++      $(AM_V_GEN) gdbus-codegen \
+               --interface-prefix org.gtk.GDBus.Example.ObjectManager. \
+               --c-namespace Example \
+               --c-generate-object-manager \
+-- 
+1.7.6.1
+
diff --git a/dev-libs/glib/glib-2.30.0.ebuild b/dev-libs/glib/glib-2.30.0.ebuild
new file mode 100644 (file)
index 0000000..7527de5
--- /dev/null
@@ -0,0 +1,198 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/glib/glib-2.30.0.ebuild,v 1.1 2011/09/27 12:59:45 nirbheek Exp $
+
+EAPI="4"
+
+inherit autotools gnome.org libtool eutils flag-o-matic multilib pax-utils virtualx
+
+DESCRIPTION="The GLib library of C routines"
+HOMEPAGE="http://www.gtk.org/"
+SRC_URI="${SRC_URI}
+       http://pkgconfig.freedesktop.org/releases/pkg-config-0.26.tar.gz" # pkg.m4 for eautoreconf
+
+LICENSE="LGPL-2"
+SLOT="2"
+IUSE="debug doc fam selinux +static-libs systemtap test xattr"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh
+~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~x86-linux"
+
+RDEPEND="virtual/libiconv
+       >=dev-libs/libffi-3.0.0
+       sys-libs/zlib
+       xattr? ( sys-apps/attr )
+       fam? ( virtual/fam )"
+DEPEND="${RDEPEND}
+       >=sys-devel/gettext-0.11
+       >=dev-util/gtk-doc-am-1.15
+       doc? (
+               >=dev-libs/libxslt-1.0
+               >=dev-util/gtk-doc-1.15
+               ~app-text/docbook-xml-dtd-4.1.2 )
+       systemtap? ( >=dev-util/systemtap-1.3 )
+       test? (
+               >=dev-util/gdbus-codegen-2.30.0
+               >=sys-apps/dbus-1.2.14 )
+       !<dev-util/gtk-doc-1.15-r2"
+PDEPEND="!<gnome-base/gvfs-1.6.4-r990" # Earlier versions do not work with glib
+
+# XXX: Consider adding test? ( sys-devel/gdb ); assert-msg-test tries to use it
+
+src_prepare() {
+       mv -vf "${WORKDIR}"/pkg-config-*/pkg.m4 "${WORKDIR}"/ || die
+
+       if use ia64 ; then
+               # Only apply for < 4.1
+               local major=$(gcc-major-version)
+               local minor=$(gcc-minor-version)
+               if (( major < 4 || ( major == 4 && minor == 0 ) )); then
+                       epatch "${FILESDIR}/glib-2.10.3-ia64-atomic-ops.patch"
+               fi
+       fi
+
+       # Don't fail gio tests when ran without userpriv, upstream bug 552912
+       # This is only a temporary workaround, remove as soon as possible
+       epatch "${FILESDIR}/${PN}-2.18.1-workaround-gio-test-failure-without-userpriv.patch"
+
+       # Fix gmodule issues on fbsd; bug #184301
+       epatch "${FILESDIR}"/${PN}-2.12.12-fbsd.patch
+
+       # Fix test failure when upgrading from 2.22 to 2.24, upstream bug 621368
+       epatch "${FILESDIR}/${PN}-2.24-assert-test-failure.patch"
+
+       # Do not try to remove files on live filesystem, upstream bug #619274
+       sed 's:^\(.*"/desktop-app-info/delete".*\):/*\1*/:' \
+               -i "${S}"/gio/tests/desktop-app-info.c || die "sed failed"
+
+       if ! use test; then
+               # don't waste time building tests
+               sed 's/^\(.*\SUBDIRS .*\=.*\)tests\(.*\)$/\1\2/' -i $(find . -name Makefile.am -o -name Makefile.in) || die
+       else
+               # Disable tests requiring dev-util/desktop-file-utils when not installed, bug #286629
+               if ! has_version dev-util/desktop-file-utils ; then
+                       ewarn "Some tests will be skipped due dev-util/desktop-file-utils not being present on your system,"
+                       ewarn "think on installing it to get these tests run."
+                       sed -i -e "/appinfo\/associations/d" gio/tests/appinfo.c || die
+                       sed -i -e "/desktop-app-info\/default/d" gio/tests/desktop-app-info.c || die
+                       sed -i -e "/desktop-app-info\/fallback/d" gio/tests/desktop-app-info.c || die
+                       sed -i -e "/desktop-app-info\/lastused/d" gio/tests/desktop-app-info.c || die
+               fi
+       fi
+
+       # gdbus-codegen is a separate package
+       epatch "${FILESDIR}/${PN}-2.29.18-external-gdbus-codegen.patch"
+
+       # disable pyc compiling
+       ln -sfn $(type -P true) py-compile
+
+       # Needed for the punt-python-check patch, disabling timeout test
+       # Also needed to prevent croscompile failures, see bug #267603
+       # Also needed for the no-gdbus-codegen patch
+       AT_M4DIR="${WORKDIR}" eautoreconf
+
+       [[ ${CHOST} == *-freebsd* ]] && elibtoolize
+
+       epunt_cxx
+}
+
+src_configure() {
+       # Avoid circular depend with dev-util/pkgconfig
+       if ! has_version dev-util/pkgconfig; then
+               export DBUS1_CFLAGS="-I/usr/include/dbus-1.0 -I/usr/$(get_libdir)/dbus-1.0/include"
+               export DBUS1_LIBS="-ldbus-1"
+       fi
+
+       local myconf
+
+       # Building with --disable-debug highly unrecommended.  It will build glib in
+       # an unusable form as it disables some commonly used API.  Please do not
+       # convert this to the use_enable form, as it results in a broken build.
+       # -- compnerd (3/27/06)
+       use debug && myconf="--enable-debug"
+
+       # Always use internal libpcre, bug #254659
+       econf ${myconf} \
+               $(use_enable xattr) \
+               $(use_enable doc man) \
+               $(use_enable doc gtk-doc) \
+               $(use_enable fam) \
+               $(use_enable selinux) \
+               $(use_enable static-libs static) \
+               $(use_enable systemtap dtrace) \
+               $(use_enable systemtap systemtap) \
+               --enable-regex \
+               --with-pcre=internal \
+               --with-threads=posix
+}
+
+src_install() {
+       local f
+       emake DESTDIR="${D}" install || die "Installation failed"
+
+       # Do not install charset.alias even if generated, leave it to libiconv
+       rm -f "${ED}/usr/lib/charset.alias"
+
+       # Don't install gdb python macros, bug 291328
+       rm -rf "${ED}/usr/share/gdb/" "${ED}/usr/share/glib-2.0/gdb/"
+
+       dodoc AUTHORS ChangeLog* NEWS* README || die "dodoc failed"
+
+       insinto /usr/share/bash-completion
+       for f in gdbus gsettings; do
+               newins "${ED}/etc/bash_completion.d/${f}-bash-completion.sh" ${f} || die
+       done
+       rm -rf "${ED}/etc"
+
+       # Completely useless with or without USE static-libs, people need to use
+       # pkg-config
+       find "${ED}" -name '*.la' -exec rm -f {} +
+}
+
+src_test() {
+       unset DBUS_SESSION_BUS_ADDRESS
+       export XDG_CONFIG_DIRS=/etc/xdg
+       export XDG_DATA_DIRS=/usr/local/share:/usr/share
+       export G_DBUS_COOKIE_SHA1_KEYRING_DIR="${T}/temp"
+       export XDG_DATA_HOME="${T}"
+       unset GSETTINGS_BACKEND # bug 352451
+
+       # Related test is a bit nitpicking
+       mkdir "$G_DBUS_COOKIE_SHA1_KEYRING_DIR"
+       chmod 0700 "$G_DBUS_COOKIE_SHA1_KEYRING_DIR"
+
+       # Hardened: gdb needs this, bug #338891
+       if host-is-pax ; then
+               pax-mark -mr "${S}"/tests/.libs/assert-msg-test \
+                       || die "Hardened adjustment failed"
+       fi
+
+       # Need X for dbus-launch session X11 initialization
+       Xemake check || die "tests failed"
+}
+
+pkg_preinst() {
+       # Only give the introspection message if:
+       # * The user has gobject-introspection
+       # * Has glib already installed
+       # * Previous version was different from new version
+       if has_version "dev-libs/gobject-introspection" && ! has_version "=${CATEGORY}/${PF}"; then
+               ewarn "You must rebuild gobject-introspection so that the installed"
+               ewarn "typelibs and girs are regenerated for the new APIs in glib"
+       fi
+}
+
+pkg_postinst() {
+       # Inform users about possible breakage when updating glib and not dbus-glib, bug #297483
+       if has_version dev-libs/dbus-glib; then
+               ewarn "If you experience a breakage after updating dev-libs/glib try"
+               ewarn "rebuilding dev-libs/dbus-glib"
+       fi
+
+       if has_version '<x11-libs/gtk+-3.0.12:3'; then
+               # To have a clear upgrade path for gtk+-3.0.x users, have to resort to
+               # a warning instead of a blocker
+               ewarn
+               ewarn "Using <gtk+-3.0.12:3 with ${P} results in frequent crashes."
+               ewarn "You should upgrade to a newer version of gtk+:3 immediately."
+       fi
+}
index e86947c98b6eb99a2d041fd57183ccb38bea0b09..4a97cd88df2258d4fcdce2cad1f4c6897ff1592f 100644 (file)
@@ -5,5 +5,7 @@
   <use>
     <flag name="introspection">Use <pkg>dev-libs/gobject-introspection</pkg>
       for introspection</flag>
+       <flag name="systemtap">Build support for profiling and tracing using 
+               <pkg>dev-util/systemtap</pkg></flag>
   </use>
 </pkgmetadata>