This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 2/3] Define libgcc soname in make scripts and not in aheader


ping?

Reposting patch for review by the ports maintainers. If that is
unnecessary then please let me know so that I can commit this patch.

--
Siddhesh

On Fri, 13 Apr 2012 12:41:53 +0530, Siddhesh wrote:
> ugh, sorry. I once again forgot to attach the patch itself. Repeating
> ChangeLog for convenience of reviewers:
> 
> 
> ChangeLog:
> 2012-04-13  Siddhesh Poyarekar  <siddhesh@redhat.com>
> 
> 	* shlib-versions: Add libgcc_s version information.
> 	* sysdeps/generic/libgcc_s.h: Remove.
> 	* sysdeps/generic/framestate.c: Include gnu/lib-names.h
> instead of libgcc_s.h.
> 	* sysdeps/gnu/unwind-resume.c: Ditto.
> 	* scripts/test-installation.pl: Remove libgcc_s from
> link_libs.
> 
> 
> nptl/ChangeLog:
> 2012-04-13  Siddhesh Poyarekar  <siddhesh@redhat.com>
> 
> 	* sysdeps/pthread/unwind-forcedunwind.c: Include
> gnu/lib-names.h instead of libgcc_s.h.

---
 nptl/sysdeps/pthread/unwind-forcedunwind.c |    2 +-
 scripts/test-installation.pl               |    3 ++-
 shlib-versions                             |    4 ++++
 sysdeps/generic/framestate.c               |    2 +-
 sysdeps/generic/libgcc_s.h                 |    2 --
 sysdeps/gnu/unwind-resume.c                |    2 +-
 8 files changed, 23 insertions(+), 6 deletions(-)
 delete mode 100644 sysdeps/generic/libgcc_s.h

diff --git a/nptl/sysdeps/pthread/unwind-forcedunwind.c b/nptl/sysdeps/pthread/unwind-forcedunwind.c
index adce6e7..d05111b 100644
--- a/nptl/sysdeps/pthread/unwind-forcedunwind.c
+++ b/nptl/sysdeps/pthread/unwind-forcedunwind.c
@@ -21,7 +21,7 @@
 #include <unwind.h>
 #include <pthreadP.h>
 #include <sysdep.h>
-#include <libgcc_s.h>
+#include <gnu/lib-names.h>
 
 static void *libgcc_s_handle;
 static void (*libgcc_s_resume) (struct _Unwind_Exception *exc);
diff --git a/scripts/test-installation.pl b/scripts/test-installation.pl
index c4f3d6d..bc4b58d 100755
--- a/scripts/test-installation.pl
+++ b/scripts/test-installation.pl
@@ -105,9 +105,10 @@ while (<SOVERSIONS>) {
     # - libnss1_* from glibc-compat add-on
     # - libthread_db since it contains unresolved references
     # - it's just a test NSS module
+    # - We don't provide the libgcc so we don't test it
     if ($name ne "nss_ldap" && $name ne "db1"
 	&& !($name =~/^nss1_/) && $name ne "thread_db"
-	&& $name ne "nss_test1") {
+	&& $name ne "nss_test1" && $name ne "libgcc_s") {
       $link_libs .= " -l$name";
       $versions{$name} = $version;
     }
diff --git a/shlib-versions b/shlib-versions
index c530a44..429e5d9 100644
--- a/shlib-versions
+++ b/shlib-versions
@@ -124,3 +124,7 @@ sparc64.*-.*-.*		libBrokenLocale=1	GLIBC_2.2
 
 # The asynchronous name lookup library.
 .*-.*-.*		libanl=1
+
+# This defines the libgcc soname version this glibc is to be built against for
+# asynchronous cancellation to work correctly.
+.*-.*-.*		libgcc_s=1
diff --git a/sysdeps/generic/framestate.c b/sysdeps/generic/framestate.c
index 3638bbe..492ff18 100644
--- a/sysdeps/generic/framestate.c
+++ b/sysdeps/generic/framestate.c
@@ -23,7 +23,7 @@
 #define __frame_state_for fallback_frame_state_for
 #include <unwind-dw2.c>
 #undef __frame_state_for
-#include <libgcc_s.h>
+#include <gnu/lib-names.h>
 
 typedef struct frame_state * (*framesf)(void *pc, struct frame_state *);
 struct frame_state *__frame_state_for (void *pc,
diff --git a/sysdeps/generic/libgcc_s.h b/sysdeps/generic/libgcc_s.h
deleted file mode 100644
index e74a103..0000000
--- a/sysdeps/generic/libgcc_s.h
+++ /dev/null
@@ -1,2 +0,0 @@
-/* Name of libgcc_s library provided by gcc.  */
-#define LIBGCC_S_SO "libgcc_s.so.1"
diff --git a/sysdeps/gnu/unwind-resume.c b/sysdeps/gnu/unwind-resume.c
index 1d3e33f..d372039 100644
--- a/sysdeps/gnu/unwind-resume.c
+++ b/sysdeps/gnu/unwind-resume.c
@@ -19,7 +19,7 @@
 #include <dlfcn.h>
 #include <stdio.h>
 #include <unwind.h>
-#include <libgcc_s.h>
+#include <gnu/lib-names.h>
 
 static void (*libgcc_s_resume) (struct _Unwind_Exception *exc);
 static _Unwind_Reason_Code (*libgcc_s_personality)
-- 
1.7.7.6


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]