--- /dev/null
+From 6e236b92765cdafb46d19e4907471699accc8269 Mon Sep 17 00:00:00 2001
+From: Siddhesh Poyarekar <siddhesh@redhat.com>
+Date: Thu, 26 Apr 2012 09:18:48 +0530
+Subject: [PATCH] move libgcc_s soname definition to shlib-versions
+
+diff --git a/nptl/sysdeps/pthread/unwind-forcedunwind.c b/nptl/sysdeps/pthread/unwind-forcedunwind.c
+index adce6e7..60dfbe6 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..1b22086 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..840e08f 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 load for
++# asynchronous cancellation to work correctly.
++.*-.*-.* libgcc_s=1
+diff --git a/sysdeps/generic/framestate.c b/sysdeps/generic/framestate.c
+index 3638bbe..3bad5b5 100644
+--- a/sysdeps/generic/framestate.c
++++ b/sysdeps/generic/framestate.c
+@@ -1,5 +1,5 @@
+ /* __frame_state_for unwinder helper function wrapper.
+- Copyright (C) 2001, 2003 Free Software Foundation, Inc.
++ Copyright (C) 2001-2012 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Jakub Jelinek <jakub@redhat.com>, 2001.
+
+@@ -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..6afaebd 100644
+--- a/sysdeps/gnu/unwind-resume.c
++++ b/sysdeps/gnu/unwind-resume.c
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 2003 Free Software Foundation, Inc.
++/* Copyright (C) 2003-2012 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Jakub Jelinek <jakub@redhat.com>.
+
+@@ -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.3.4
+
--- /dev/null
+From 9191c04a7e19fffbea0a08523e579cd8e55142df Mon Sep 17 00:00:00 2001
+From: Ulrich Drepper <drepper@gmail.com>
+Date: Sat, 23 Jul 2011 15:28:31 -0400
+Subject: [PATCH] Adjust test for correct installation
+
+diff --git a/scripts/test-installation.pl b/scripts/test-installation.pl
+index 90cd9d7..25a919b 100755
+--- a/scripts/test-installation.pl
++++ b/scripts/test-installation.pl
+@@ -1,5 +1,5 @@
+ #! /usr/bin/perl -w
+-# Copyright (C) 1997, 1998, 1999, 2004 Free Software Foundation, Inc.
++# Copyright (C) 1997, 1998, 1999, 2004, 2011 Free Software Foundation, Inc.
+ # This file is part of the GNU C Library.
+ # Contributed by Andreas Jaeger <aj@arthur.rhein-neckar.de>, 1997.
+
+@@ -105,8 +105,10 @@ while (<SOVERSIONS>) {
+ # - libdb1 since it conflicts with libdb
+ # - libnss1_* from glibc-compat add-on
+ # - libthread_db since it contains unresolved references
++ # - it's just a test NSS module
+ if ($name ne "nss_ldap" && $name ne "db1"
+- && !($name =~/^nss1_/) && $name ne "thread_db") {
++ && !($name =~/^nss1_/) && $name ne "thread_db"
++ && $name ne "nss_test1") {
+ $link_libs .= " -l$name";
+ $versions{$name} = $version;
+ }
+--
+1.7.3.4
+