summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/gcc/gcc-4.7/0001-crtstuff.c-USE_PT_GNU_EH_FRAME-Define-for-systems-us.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-4.7/0001-crtstuff.c-USE_PT_GNU_EH_FRAME-Define-for-systems-us.patch')
-rw-r--r--meta/recipes-devtools/gcc/gcc-4.7/0001-crtstuff.c-USE_PT_GNU_EH_FRAME-Define-for-systems-us.patch49
1 files changed, 49 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.7/0001-crtstuff.c-USE_PT_GNU_EH_FRAME-Define-for-systems-us.patch b/meta/recipes-devtools/gcc/gcc-4.7/0001-crtstuff.c-USE_PT_GNU_EH_FRAME-Define-for-systems-us.patch
new file mode 100644
index 0000000000..15034f7da2
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.7/0001-crtstuff.c-USE_PT_GNU_EH_FRAME-Define-for-systems-us.patch
@@ -0,0 +1,49 @@
1From 935475158f45b9c55a54647543c0402b4b3043ae Mon Sep 17 00:00:00 2001
2From: jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>
3Date: Sun, 19 Aug 2012 15:11:40 +0000
4Subject: [PATCH] * crtstuff.c (USE_PT_GNU_EH_FRAME): Define for
5 systems using glibc even if inhibit_libc.
6
7git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190517 138bc75d-0d04-0410-961f-82ee72b054a4
8---
9 libgcc/ChangeLog | 5 +++++
10 libgcc/crtstuff.c | 16 +++++++++++++++-
11 2 files changed, 20 insertions(+), 1 deletion(-)
12
13Upstream-Status: Backport
14
15-Khem 05-Sep-2012
16Index: gcc-4_7-branch/libgcc/crtstuff.c
17===================================================================
18--- gcc-4_7-branch.orig/libgcc/crtstuff.c 2012-08-21 22:33:20.000000000 -0700
19+++ gcc-4_7-branch/libgcc/crtstuff.c 2012-09-05 17:28:49.248994968 -0700
20@@ -1,7 +1,7 @@
21 /* Specialized bits of code needed to support construction and
22 destruction of file-scope objects in C++ code.
23 Copyright (C) 1991, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
24- 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2011
25+ 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2011, 2012
26 Free Software Foundation, Inc.
27 Contributed by Ron Guilmette (rfg@monkeys.com).
28
29@@ -113,6 +113,20 @@
30 # define USE_PT_GNU_EH_FRAME
31 # endif
32 #endif
33+
34+#if defined(OBJECT_FORMAT_ELF) \
35+ && !defined(OBJECT_FORMAT_FLAT) \
36+ && defined(HAVE_LD_EH_FRAME_HDR) \
37+ && !defined(CRTSTUFFT_O) \
38+ && defined(inhibit_libc) \
39+ && (defined(__GLIBC__) || defined(__gnu_linux__) || defined(__GNU__))
40+/* On systems using glibc, an inhibit_libc build of libgcc is only
41+ part of a bootstrap process. Build the same crt*.o as would be
42+ built with headers present, so that it is not necessary to build
43+ glibc more than once for the bootstrap to converge. */
44+# define USE_PT_GNU_EH_FRAME
45+#endif
46+
47 #if defined(EH_FRAME_SECTION_NAME) && !defined(USE_PT_GNU_EH_FRAME)
48 # define USE_EH_FRAME_REGISTRY
49 #endif