r42331 - in /desktop/unstable/glib2.0/debian: changelog patches/0001-gobject-try-to-link-with-Wl-z-nodelete.patch patches/series

laney at users.alioth.debian.org laney at users.alioth.debian.org
Fri Aug 29 02:17:03 UTC 2014


Author: laney
Date: Fri Aug 29 02:17:03 2014
New Revision: 42331

URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=42331
Log:
0001-gobject-try-to-link-with-Wl-z-nodelete.patch: Cherry-pick upstream
patch to (try to) link gobject with -Wl,z,nodelete to indicate that the
library, once loaded, should not be unloaded at runtime. (Closes: #752544)

Added:
    desktop/unstable/glib2.0/debian/patches/0001-gobject-try-to-link-with-Wl-z-nodelete.patch
Modified:
    desktop/unstable/glib2.0/debian/changelog
    desktop/unstable/glib2.0/debian/patches/series

Modified: desktop/unstable/glib2.0/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/glib2.0/debian/changelog?rev=42331&op=diff
==============================================================================
--- desktop/unstable/glib2.0/debian/changelog	[utf-8] (original)
+++ desktop/unstable/glib2.0/debian/changelog	[utf-8] Fri Aug 29 02:17:03 2014
@@ -1,3 +1,11 @@
+glib2.0 (2.40.0-5) UNRELEASED; urgency=medium
+
+  * 0001-gobject-try-to-link-with-Wl-z-nodelete.patch: Cherry-pick upstream
+    patch to (try to) link gobject with -Wl,z,nodelete to indicate that the
+    library, once loaded, should not be unloaded at runtime. (Closes: #752544)
+
+ -- Iain Lane <laney at debian.org>  Fri, 29 Aug 2014 03:12:00 +0100
+
 glib2.0 (2.40.0-4) unstable; urgency=medium
 
   * Team upload

Added: desktop/unstable/glib2.0/debian/patches/0001-gobject-try-to-link-with-Wl-z-nodelete.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/glib2.0/debian/patches/0001-gobject-try-to-link-with-Wl-z-nodelete.patch?rev=42331&op=file
==============================================================================
--- desktop/unstable/glib2.0/debian/patches/0001-gobject-try-to-link-with-Wl-z-nodelete.patch	(added)
+++ desktop/unstable/glib2.0/debian/patches/0001-gobject-try-to-link-with-Wl-z-nodelete.patch	[utf-8] Fri Aug 29 02:17:03 2014
@@ -0,0 +1,75 @@
+From 3662eb9759fe225d1c214db6927c667a1b733e8a Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino at 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        | 34 ++++++++++++++++++++++++++++++++++
+ gobject/Makefile.am |  1 +
+ 2 files changed, 35 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index a01e58d..bdf34b0 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -3465,6 +3465,40 @@ 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 Since ld.bfd does not treat wrong -z options as fatal by default,
++dnl we also try to check for the --fatal-warnings linker flag if
++dnl auto-detecting.
++dnl
++
++AC_ARG_ENABLE([znodelete],
++              [AS_HELP_STRING([--disable-znodelete],
++                              [avoid linking with -z,nodelete])],,
++              [SAVED_LDFLAGS="${LDFLAGS}"
++               AC_MSG_CHECKING([for --fatal-warnings linker flag])
++               LDFLAGS=-Wl,--fatal-warnings
++               AC_TRY_LINK([], [int main (void) { return 0; }],
++                           AC_MSG_RESULT(yes)
++                           [ldflags_fatal=-Wl,--fatal-warnings],
++                           AC_MSG_RESULT(no)
++                           ldflags_fatal=)
++               AC_MSG_CHECKING([for -z,nodelete linker flag])
++               LDFLAGS="$ldflags_fatal -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 c683e84..02e9c25 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)
+-- 
+2.1.0
+

Modified: desktop/unstable/glib2.0/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/glib2.0/debian/patches/series?rev=42331&op=diff
==============================================================================
--- desktop/unstable/glib2.0/debian/patches/series	[utf-8] (original)
+++ desktop/unstable/glib2.0/debian/patches/series	[utf-8] Fri Aug 29 02:17:03 2014
@@ -21,3 +21,4 @@
 regex-test-do-not-assert-that-system-PCRE-allows-P-1.patch
 regex-test-do-not-assert-that-system-PCRE-still-has-.patch
 gvariant-tests-workaround-libc-compiler-issue.patch
+0001-gobject-try-to-link-with-Wl-z-nodelete.patch




More information about the pkg-gnome-commits mailing list