diff options
author | Alexandre Rostovtsev <tetromino@gentoo.org> | 2013-09-02 18:29:07 +0000 |
---|---|---|
committer | Alexandre Rostovtsev <tetromino@gentoo.org> | 2013-09-02 18:29:07 +0000 |
commit | a2070a0e1f3c6598845444b607f9c49a5aafa214 (patch) | |
tree | b560b140cd4a8e44cf44901db20397ce658dd877 /dev-libs/glib | |
parent | Fix QA warning (bug #483350) and remove useless inherit. (diff) | |
download | gentoo-2-a2070a0e1f3c6598845444b607f9c49a5aafa214.tar.gz gentoo-2-a2070a0e1f3c6598845444b607f9c49a5aafa214.tar.bz2 gentoo-2-a2070a0e1f3c6598845444b607f9c49a5aafa214.zip |
Fix segfaults in vlc and other applications that try to unload libgobject at runtime (bug #405173, thanks to Cédric D. for finding a good solution). Drop old ebuilds.
(Portage version: 2.2.1/cvs/Linux x86_64, signed Manifest commit with key CF0ADD61)
Diffstat (limited to 'dev-libs/glib')
-rw-r--r-- | dev-libs/glib/ChangeLog | 11 | ||||
-rw-r--r-- | dev-libs/glib/files/glib-2.36.3-revert-ext34.patch | 37 | ||||
-rw-r--r-- | dev-libs/glib/files/glib-2.36.4-znodelete.patch | 65 | ||||
-rw-r--r-- | dev-libs/glib/glib-2.34.3.ebuild | 248 | ||||
-rw-r--r-- | dev-libs/glib/glib-2.36.3-r1.ebuild | 242 | ||||
-rw-r--r-- | dev-libs/glib/glib-2.36.4-r1.ebuild (renamed from dev-libs/glib/glib-2.36.3-r2.ebuild) | 9 |
6 files changed, 80 insertions, 532 deletions
diff --git a/dev-libs/glib/ChangeLog b/dev-libs/glib/ChangeLog index 89a692e00fa0..04e377b0c8b1 100644 --- a/dev-libs/glib/ChangeLog +++ b/dev-libs/glib/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for dev-libs/glib # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/glib/ChangeLog,v 1.574 2013/09/01 19:47:58 pacho Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-libs/glib/ChangeLog,v 1.575 2013/09/02 18:29:07 tetromino Exp $ + +*glib-2.36.4-r1 (02 Sep 2013) + + 02 Sep 2013; Alexandre Rostovtsev <tetromino@gentoo.org> -glib-2.34.3.ebuild, + -glib-2.36.3-r1.ebuild, -glib-2.36.3-r2.ebuild, +glib-2.36.4-r1.ebuild, + -files/glib-2.36.3-revert-ext34.patch, +files/glib-2.36.4-znodelete.patch: + Fix segfaults in vlc and other applications that try to unload libgobject at + runtime (bug #405173, thanks to Cédric D. for finding a good solution). Drop + old ebuilds. 01 Sep 2013; Pacho Ramos <pacho@gentoo.org> glib-2.36.4.ebuild: Pass --disable-compile-warnings configure option to drop -Werror usage diff --git a/dev-libs/glib/files/glib-2.36.3-revert-ext34.patch b/dev-libs/glib/files/glib-2.36.3-revert-ext34.patch deleted file mode 100644 index 041419791273..000000000000 --- a/dev-libs/glib/files/glib-2.36.3-revert-ext34.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 05d430065da918051a97e3384c4b2252af47503d Mon Sep 17 00:00:00 2001 -From: Colin Walters <walters@verbum.org> -Date: Thu, 20 Jun 2013 17:13:29 +0000 -Subject: Revert "g_file_set_contents(): don't fsync on ext3/4" - -We didn't actually do any real-world testing of this, and -unsurprisingly it turns out to break in at least one widely-used -configuration (Fedora 19 x86_64, ext4 on LVM). - -This reverts commit 9d0c17b50102267a5029b58b1f44efbad82d8f03. - -https://bugzilla.gnome.org/show_bug.cgi?id=701560 ---- -diff --git a/glib/gfileutils.c b/glib/gfileutils.c -index b6ca3bb..2980098 100644 ---- a/glib/gfileutils.c -+++ b/glib/gfileutils.c -@@ -1088,16 +1088,9 @@ write_to_temp_file (const gchar *contents, - /* On Linux, on btrfs, skip the fsync since rename-over-existing is - * guaranteed to be atomic and this is the only case in which we - * would fsync() anyway. -- * -- * ext3 and ext4 are also safe in this respect under the default -- * mount options (and if someone picks non-default options to -- * improve their performance at the cost of reliability, who are we -- * to argue?) -- * -- * Note: EXT[234]_SUPER_MAGIC are equal. - */ - -- if (fstatfs (fd, &buf) == 0 && (buf.f_type == BTRFS_SUPER_MAGIC || buf.f_type == EXT3_SUPER_MAGIC)) -+ if (fstatfs (fd, &buf) == 0 && buf.f_type == BTRFS_SUPER_MAGIC) - goto no_fsync; - } - #endif --- -cgit v0.9.2 diff --git a/dev-libs/glib/files/glib-2.36.4-znodelete.patch b/dev-libs/glib/files/glib-2.36.4-znodelete.patch new file mode 100644 index 000000000000..e84e76f28b2f --- /dev/null +++ b/dev-libs/glib/files/glib-2.36.4-znodelete.patch @@ -0,0 +1,65 @@ +From 242de638a030e1fb3b467af182d985d7c3bbf185 Mon Sep 17 00:00:00 2001 +From: Alexandre Rostovtsev <tetromino@gentoo.org> +Date: Mon, 2 Sep 2013 13:59:18 -0400 +Subject: [PATCH] gobject: try to link with -Wl,-z,nodelete + +Since the type system does not support reloading its data and assumes +that libgobject remains loaded for the lifetime of the process, we +should link libgobject with a flag indicating that it can't be unloaded. + +https://bugzilla.gnome.org/show_bug.cgi?id=707298 +--- + configure.ac | 24 ++++++++++++++++++++++++ + gobject/Makefile.am | 1 + + 2 files changed, 25 insertions(+) + +diff --git a/configure.ac b/configure.ac +index 0a63601..dd1045a 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -3668,6 +3668,30 @@ fi + AC_SUBST(GLIB_LINK_FLAGS) + + dnl ++dnl Check for -z,nodelete linker flag: the type system assumes that ++dnl libgobject stays loaded for the lifetime of the process ++dnl ++ ++AC_ARG_ENABLE([znodelete], ++ [AS_HELP_STRING([--disable-znodelete], ++ [avoid linking with -z,nodelete])],, ++ [SAVED_LDFLAGS="${LDFLAGS}" ++ AC_MSG_CHECKING([for -z,nodelete linker flag]) ++ LDFLAGS=-Wl,-z,nodelete ++ AC_TRY_LINK([], [int main (void) { return 0; }], ++ AC_MSG_RESULT(yes) ++ enable_znodelete=yes, ++ AC_MSG_RESULT(no) ++ enable_znodelete=no) ++ LDFLAGS="${SAVED_LDFLAGS}"]) ++ ++if test "x${enable_znodelete}" = "xyes"; then ++ GOBJECT_LINK_FLAGS=-Wl,-z,nodelete ++fi ++ ++AC_SUBST(GOBJECT_LINK_FLAGS) ++ ++dnl + dnl Check for -fvisibility=hidden to determine if we can do GNU-style + dnl visibility attributes for symbol export control + dnl +diff --git a/gobject/Makefile.am b/gobject/Makefile.am +index 1509616..181ad7d 100644 +--- a/gobject/Makefile.am ++++ b/gobject/Makefile.am +@@ -45,6 +45,7 @@ endif + + libgobjectincludedir = $(includedir)/glib-2.0/gobject + libgobject_2_0_la_LDFLAGS = $(GLIB_LINK_FLAGS) \ ++ $(GOBJECT_LINK_FLAGS) \ + $(gobject_win32_res_ldflag) \ + -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ + -export-dynamic $(no_undefined) +-- +1.8.3.2 + diff --git a/dev-libs/glib/glib-2.34.3.ebuild b/dev-libs/glib/glib-2.34.3.ebuild deleted file mode 100644 index b9cc634f9707..000000000000 --- a/dev-libs/glib/glib-2.34.3.ebuild +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/glib/glib-2.34.3.ebuild,v 1.7 2013/08/14 04:19:30 tetromino Exp $ - -EAPI="5" -PYTHON_DEPEND="utils? 2" # Avoid runtime dependency on python when USE=test - -inherit autotools gnome.org libtool eutils flag-o-matic gnome2-utils multilib pax-utils python toolchain-funcs virtualx linux-info - -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 fam kernel_linux selinux static-libs systemtap test utils xattr" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux" - -RDEPEND="virtual/libiconv - virtual/libffi - sys-libs/zlib - || ( - >=dev-libs/elfutils-0.142 - >=dev-libs/libelf-0.8.12 - >=sys-freebsd/freebsd-lib-9.2_rc1 - ) - selinux? ( sys-libs/libselinux ) - xattr? ( sys-apps/attr ) - fam? ( virtual/fam ) - utils? ( >=dev-util/gdbus-codegen-${PV} )" -DEPEND="${RDEPEND} - app-text/docbook-xml-dtd:4.1.2 - >=dev-libs/libxslt-1.0 - >=sys-devel/gettext-0.11 - >=dev-util/gtk-doc-am-1.15 - systemtap? ( >=dev-util/systemtap-1.3 ) - test? ( - sys-devel/gdb - =dev-lang/python-2* - >=dev-util/gdbus-codegen-${PV} - >=sys-apps/dbus-1.2.14 ) - !<dev-util/gtk-doc-1.15-r2" -PDEPEND="x11-misc/shared-mime-info - !<gnome-base/gvfs-1.6.4-r990" -# shared-mime-info needed for gio/xdgmime, bug #409481 -# Earlier versions of gvfs do not work with glib - -pkg_setup() { - # Needed for gio/tests/gdbus-testserver.py - if use test; then - python_set_active_version 2 - python_pkg_setup - fi - - if use kernel_linux ; then - CONFIG_CHECK="~INOTIFY_USER" - linux-info_pkg_setup - fi -} - -src_prepare() { - mv -f "${WORKDIR}"/pkg-config-*/pkg.m4 "${WORKDIR}"/ || die - - # Fix gmodule issues on fbsd; bug #184301 - epatch "${FILESDIR}"/${PN}-2.12.12-fbsd.patch - - if use test; then - # 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" - - # 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 - - # Disable tests requiring dbus-python and pygobject; bugs #349236, #377549, #384853 - if ! has_version dev-python/dbus-python || ! has_version 'dev-python/pygobject:3' ; then - ewarn "Some tests will be skipped due to dev-python/dbus-python or dev-python/pygobject:3" - ewarn "not being present on your system, think on installing them to get these tests run." - sed -i -e "/connection\/filter/d" gio/tests/gdbus-connection.c || die - sed -i -e "/connection\/large_message/d" gio/tests/gdbus-connection-slow.c || die - sed -i -e "/gdbus\/proxy/d" gio/tests/gdbus-proxy.c || die - sed -i -e "/gdbus\/proxy-well-known-name/d" gio/tests/gdbus-proxy-well-known-name.c || die - sed -i -e "/gdbus\/introspection-parser/d" gio/tests/gdbus-introspection.c || die - sed -i -e "/g_test_add_func/d" gio/tests/gdbus-threading.c || die - sed -i -e "/gdbus\/method-calls-in-thread/d" gio/tests/gdbus-threading.c || die - # needed to prevent gdbus-threading from asserting - ln -sfn $(type -P true) gio/tests/gdbus-testserver.py - fi - fi - - # gdbus-codegen is a separate package - epatch "${FILESDIR}/${PN}-2.31.x-external-gdbus-codegen.patch" - - # bashcomp goes in /usr/share/bash-completion - epatch "${FILESDIR}/${PN}-2.32.4-bashcomp.patch" - - # https://bugzilla.gnome.org/show_bug.cgi?id=679306 - epatch "${FILESDIR}/${PN}-2.34.0-testsuite-skip-thread4.patch" - # https://bugzilla.gnome.org/show_bug.cgi?id=679308 - epatch "${FILESDIR}/${PN}-2.34.0-testsuite-skip-gdbus-auth-tests.patch" - - # build failure with automake-1.13; fixed upstream in 2.36 - epatch "${FILESDIR}/${PN}-2.34.3-automake-1.13.patch" - - epatch_user - - # disable pyc compiling - use test && python_clean_py-compile_files - - # 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 and - # native builds (cross-compiles won't need pkg-config - # in the target ROOT to work here) - if ! tc-is-cross-compiler && ! $(tc-getPKG_CONFIG) --version >& /dev/null; then - if has_version sys-apps/dbus; then - export DBUS1_CFLAGS="-I/usr/include/dbus-1.0 -I/usr/$(get_libdir)/dbus-1.0/include" - export DBUS1_LIBS="-ldbus-1" - fi - export LIBFFI_CFLAGS="-I$(echo /usr/$(get_libdir)/libffi-*/include)" - export LIBFFI_LIBS="-lffi" - 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" - - if use test; then - myconf="${myconf} --enable-modular-tests" - else - if [[ ${PV} = 9999 ]] && use doc; then - # need to build tests if USE=doc for bug #387385 - myconf="${myconf} --enable-modular-tests" - else - myconf="${myconf} --disable-modular-tests" - fi - fi - - # Always use internal libpcre, bug #254659 - econf ${myconf} \ - $(use_enable xattr) \ - $(use_enable fam) \ - $(use_enable selinux) \ - $(use_enable static-libs static) \ - $(use_enable systemtap dtrace) \ - $(use_enable systemtap systemtap) \ - --enable-man \ - --with-pcre=internal \ - --with-threads=posix \ - --with-xml-catalog="${EPREFIX}/etc/xml/catalog" -} - -src_install() { - local f - - # install-exec-hook substitutes ${PYTHON} in glib/gtester-report - emake DESTDIR="${D}" PYTHON="${EPREFIX}/usr/bin/python2" install - - if ! use utils; then - rm "${ED}usr/bin/gtester-report" - fi - - # 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 - - # Completely useless with or without USE static-libs, people need to use - # pkg-config - prune_libtool_files --modules -} - -src_test() { - gnome2_environment_reset - - 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" - unset GSETTINGS_BACKEND # bug 352451 - export LC_TIME=C # bug #411967 - - # 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 -} - -pkg_preinst() { - # Only give the introspection message if: - # * The user has gobject-introspection - # * Has glib already installed - # * Previous version was different from new version - # TODO: add a subslotted virtual to trigger this automatically - 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 - # TODO: add a subslotted virtual to trigger this automatically - 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 -} diff --git a/dev-libs/glib/glib-2.36.3-r1.ebuild b/dev-libs/glib/glib-2.36.3-r1.ebuild deleted file mode 100644 index 4767fbea92b3..000000000000 --- a/dev-libs/glib/glib-2.36.3-r1.ebuild +++ /dev/null @@ -1,242 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/glib/glib-2.36.3-r1.ebuild,v 1.3 2013/08/14 04:19:30 tetromino Exp $ - -EAPI="5" -PYTHON_COMPAT=( python2_{5,6,7} ) -# Avoid runtime dependency on python when USE=test - -inherit autotools bash-completion-r1 gnome.org libtool eutils flag-o-matic gnome2-utils multilib pax-utils python-r1 toolchain-funcs versionator virtualx linux-info - -DESCRIPTION="The GLib library of C routines" -HOMEPAGE="http://www.gtk.org/" - -LICENSE="LGPL-2+" -SLOT="2" -IUSE="debug fam kernel_linux selinux static-libs systemtap test utils xattr" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux" - -RDEPEND=" - virtual/libiconv - virtual/libffi - sys-libs/zlib - || ( - >=dev-libs/elfutils-0.142 - >=dev-libs/libelf-0.8.12 - >=sys-freebsd/freebsd-lib-9.2_rc1 - ) - selinux? ( sys-libs/libselinux ) - xattr? ( sys-apps/attr ) - fam? ( virtual/fam ) - utils? ( - ${PYTHON_DEPS} - >=dev-util/gdbus-codegen-${PV}[${PYTHON_USEDEP}] ) -" -DEPEND="${RDEPEND} - app-text/docbook-xml-dtd:4.1.2 - >=dev-libs/libxslt-1.0 - >=sys-devel/gettext-0.11 - >=dev-util/gtk-doc-am-1.15 - systemtap? ( >=dev-util/systemtap-1.3 ) - test? ( - sys-devel/gdb - ${PYTHON_DEPS} - >=dev-util/gdbus-codegen-${PV}[${PYTHON_USEDEP}] - >=sys-apps/dbus-1.2.14 ) - !<dev-libs/gobject-introspection-1.$(get_version_component_range 2) - !<dev-util/gtk-doc-1.15-r2 -" -# gobject-introspection blocker to ensure people don't mix -# different g-i and glib major versions - -PDEPEND="x11-misc/shared-mime-info - !<gnome-base/gvfs-1.6.4-r990" -# shared-mime-info needed for gio/xdgmime, bug #409481 -# Earlier versions of gvfs do not work with glib - -DOCS="AUTHORS ChangeLog* NEWS* README" - -pkg_setup() { - if use kernel_linux ; then - CONFIG_CHECK="~INOTIFY_USER" - if use test; then - CONFIG_CHECK="~IPV6" - WARNING_IPV6="Your kernel needs IPV6 support for running some tests, skipping them." - export IPV6_DISABLED="yes" - fi - linux-info_pkg_setup - fi -} - -src_prepare() { - # Fix gmodule issues on fbsd; bug #184301, upstream bug #107626 - epatch "${FILESDIR}"/${PN}-2.12.12-fbsd.patch - - if use test; then - # 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" - - # Disable tests requiring dev-util/desktop-file-utils when not installed, bug #286629, upstream bug #629163 - 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 - - # gdesktopappinfo requires existing terminal (gnome-terminal or any - # other), falling back to xterm if one doesn't exist - if ! has_version x11-terms/xterm && ! has_version x11-terms/gnome-terminal ; then - ewarn "Some tests will be skipped due to missing terminal program" - sed -i -e "/appinfo\/launch/d" gio/tests/appinfo.c || die - fi - - # Disable tests requiring dbus-python and pygobject; bugs #349236, #377549, #384853 - if ! has_version dev-python/dbus-python || ! has_version 'dev-python/pygobject:3' ; then - ewarn "Some tests will be skipped due to dev-python/dbus-python or dev-python/pygobject:3" - ewarn "not being present on your system, think on installing them to get these tests run." - sed -i -e "/connection\/filter/d" gio/tests/gdbus-connection.c || die - sed -i -e "/connection\/large_message/d" gio/tests/gdbus-connection-slow.c || die - sed -i -e "/gdbus\/proxy/d" gio/tests/gdbus-proxy.c || die - sed -i -e "/gdbus\/proxy-well-known-name/d" gio/tests/gdbus-proxy-well-known-name.c || die - sed -i -e "/gdbus\/introspection-parser/d" gio/tests/gdbus-introspection.c || die - sed -i -e "/g_test_add_func/d" gio/tests/gdbus-threading.c || die - sed -i -e "/gdbus\/method-calls-in-thread/d" gio/tests/gdbus-threading.c || die - # needed to prevent gdbus-threading from asserting - ln -sfn $(type -P true) gio/tests/gdbus-testserver.py - fi - - # Some tests need ipv6, upstream bug #667468 - if [[ -n "${IPV6_DISABLED}" ]]; then - sed -i -e "/socket\/ipv6_sync/d" gio/tests/socket.c || die - sed -i -e "/socket\/ipv6_async/d" gio/tests/socket.c || die - sed -i -e "/socket\/ipv6_v4mapped/d" gio/tests/socket.c || die - fi - - # Test relies on /usr/bin/true, but we have /bin/true, upstream bug #698655 - sed -i -e "s:/usr/bin/true:/bin/true:" gio/tests/desktop-app-info.c || die - - # thread test fails, upstream bug #679306 - epatch "${FILESDIR}/${PN}-2.34.0-testsuite-skip-thread4.patch" - fi - - # gdbus-codegen is a separate package - epatch "${FILESDIR}/${PN}-2.35.x-external-gdbus-codegen.patch" - - # leave python shebang alone - sed -e '/${PYTHON}/d' \ - -i glib/Makefile.{am,in} || die - - # Gentoo handles completions in a different directory - sed -i "s|^completiondir =.*|completiondir = $(get_bashcompdir)|" \ - gio/Makefile.am || die - - # Revert "g_file_set_contents(): don't fsync on ext3/4" (from 2.36 branch) - epatch "${FILESDIR}/${P}-revert-ext34.patch" - - epatch_user - - # 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 - eautoreconf - - # FIXME: Really needed when running eautoreconf before? bug#???? - #[[ ${CHOST} == *-freebsd* ]] && elibtoolize - - epunt_cxx -} - -src_configure() { - # Avoid circular depend with dev-util/pkgconfig and - # native builds (cross-compiles won't need pkg-config - # in the target ROOT to work here) - if ! tc-is-cross-compiler && ! $(tc-getPKG_CONFIG) --version >& /dev/null; then - if has_version sys-apps/dbus; then - export DBUS1_CFLAGS="-I/usr/include/dbus-1.0 -I/usr/$(get_libdir)/dbus-1.0/include" - export DBUS1_LIBS="-ldbus-1" - fi - export LIBFFI_CFLAGS="-I$(echo /usr/$(get_libdir)/libffi-*/include)" - export LIBFFI_LIBS="-lffi" - 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. - use debug && myconf="--enable-debug" - - # Always use internal libpcre, bug #254659 - econf ${myconf} \ - $(use_enable xattr) \ - $(use_enable fam) \ - $(use_enable selinux) \ - $(use_enable static-libs static) \ - $(use_enable systemtap dtrace) \ - $(use_enable systemtap systemtap) \ - $(use_enable test modular-tests) \ - --enable-man \ - --with-pcre=internal \ - --with-threads=posix \ - --with-xml-catalog="${EPREFIX}/etc/xml/catalog" -} - -src_install() { - default - - if use utils ; then - python_replicate_script "${ED}"/usr/bin/gtester-report - else - rm "${ED}usr/bin/gtester-report" - rm "${ED}usr/share/man/man1/gtester-report.1" - fi - - # 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/" - - # Completely useless with or without USE static-libs, people need to use - # pkg-config - prune_libtool_files --modules -} - -src_test() { - gnome2_environment_reset - - 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" - unset GSETTINGS_BACKEND # bug 352451 - export LC_TIME=C # bug #411967 - python_export_best - - # 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 -} - -pkg_postinst() { - 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 -} diff --git a/dev-libs/glib/glib-2.36.3-r2.ebuild b/dev-libs/glib/glib-2.36.4-r1.ebuild index 6ad7d7010610..cd4f518d8609 100644 --- a/dev-libs/glib/glib-2.36.3-r2.ebuild +++ b/dev-libs/glib/glib-2.36.4-r1.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/glib/glib-2.36.3-r2.ebuild,v 1.5 2013/08/15 01:24:32 tetromino Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-libs/glib/glib-2.36.4-r1.ebuild,v 1.1 2013/09/02 18:29:07 tetromino Exp $ EAPI="5" PYTHON_COMPAT=( python2_{5,6,7} ) @@ -136,6 +136,9 @@ src_prepare() { # gdbus-codegen is a separate package epatch "${FILESDIR}/${PN}-2.35.x-external-gdbus-codegen.patch" + # do not allow libgobject to unload; bug #405173, https://bugzilla.gnome.org/show_bug.cgi?id=707298 + epatch "${FILESDIR}/${PN}-2.36.4-znodelete.patch" + # leave python shebang alone sed -e '/${PYTHON}/d' \ -i glib/Makefile.{am,in} || die @@ -144,9 +147,6 @@ src_prepare() { sed -i "s|^completiondir =.*|completiondir = $(get_bashcompdir)|" \ gio/Makefile.am || die - # Revert "g_file_set_contents(): don't fsync on ext3/4" (from 2.36 branch) - epatch "${FILESDIR}/${P}-revert-ext34.patch" - epatch_user # Needed for the punt-python-check patch, disabling timeout test @@ -199,6 +199,7 @@ multilib_src_configure() { $(use_enable systemtap dtrace) \ $(use_enable systemtap systemtap) \ $(use_enable test modular-tests) \ + --disable-compile-warnings \ --enable-man \ --with-pcre=internal \ --with-threads=posix \ |