[PATCH 1 of 3] patches/eglibc: Split changeset 3052:06b663f297 into eglibc/libc and eglibc/ports patches

graycells@gmail.com graycells@gmail.com
Sun Sep 23 03:30:00 GMT 2012


# HG changeset patch
# User Jang, Bongseo <graycells@gmail.com>
# Date 1348366710 -32400
# Node ID 5040c8e83e35618361dc0f8470ff06abebab3e02
# Parent  b60b008ab49cc1b8623ba2623fb0467ef479b7a4
patches/eglibc: Split changeset 3052:06b663f297 into eglibc/libc and eglibc/ports patches

crosstool-ng's glibc patche is made against glibc/libc sub-dir.
changeset 3052:06b663f297 is against glibc top-dir. it needs to split.

Signed-off-by: "Jang, Bongseo" <graycells@gmail.com>

diff -r b60b008ab49c -r 5040c8e83e35 patches/eglibc/2_16/001-Avoid-use-of-libgcc_s-and-libgcc_eh-when-building-gl.patch
--- a/patches/eglibc/2_16/001-Avoid-use-of-libgcc_s-and-libgcc_eh-when-building-gl.patch	Fri Sep 21 16:38:18 2012 +0200
+++ b/patches/eglibc/2_16/001-Avoid-use-of-libgcc_s-and-libgcc_eh-when-building-gl.patch	Sun Sep 23 11:18:30 2012 +0900
@@ -17,10 +17,10 @@
  7 files changed, 206 insertions(+), 21 deletions(-)
  create mode 100644 elf/static-stubs.c
 
-Index: a/libc/Makeconfig
+Index: a/Makeconfig
 ===================================================================
---- a/libc/Makeconfig	2012-07-04 18:26:22.000000000 -0700
-+++ b/libc/Makeconfig	2012-08-14 20:16:10.197093639 -0700
+--- a/Makeconfig	2012-07-04 18:26:22.000000000 -0700
++++ b/Makeconfig	2012-08-14 20:16:10.197093639 -0700
 @@ -415,9 +415,9 @@
  LDFLAGS-rtld += $(hashstyle-LDFLAGS)
  endif
@@ -150,10 +150,10 @@
  libc.so-gnulib := -lgcc
  endif
  +preinit = $(addprefix $(csu-objpfx),crti.o)
-Index: a/libc/Rules
+Index: a/Rules
 ===================================================================
---- a/libc/Rules	2012-07-04 18:25:47.000000000 -0700
-+++ b/libc/Rules	2012-08-14 20:16:10.197093639 -0700
+--- a/Rules	2012-07-04 18:25:47.000000000 -0700
++++ b/Rules	2012-08-14 20:16:10.197093639 -0700
 @@ -1,5 +1,4 @@
 -# Copyright (C) 1991-2000,2002,2003,2004,2005,2006,2011
 -#	Free Software Foundation, Inc.
@@ -238,10 +238,10 @@
  ifeq ($(build-bounded),yes)
  binaries-bounded = $(addsuffix -bp,$(tests) $(xtests) $(test-srcs))
  $(addprefix $(objpfx),$(binaries-bounded)): %-bp: %.ob \
-Index: a/libc/elf/Makefile
+Index: a/elf/Makefile
 ===================================================================
---- a/libc/elf/Makefile	2012-07-04 18:26:34.000000000 -0700
-+++ b/libc/elf/Makefile	2012-08-14 20:16:10.197093639 -0700
+--- a/elf/Makefile	2012-07-04 18:26:34.000000000 -0700
++++ b/elf/Makefile	2012-08-14 20:16:10.197093639 -0700
 @@ -71,6 +71,8 @@
  install-bin	= sprof pldd
  others-static   = sln
@@ -269,10 +269,10 @@
  $(objpfx)ldconfig: $(ldconfig-modules:%=$(objpfx)%.o)
  
  $(objpfx)pldd: $(pldd-modules:%=$(objpfx)%.o)
-Index: a/libc/elf/static-stubs.c
+Index: a/elf/static-stubs.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ a/libc/elf/static-stubs.c	2012-08-14 20:16:10.197093639 -0700
++++ a/elf/static-stubs.c	2012-08-14 20:16:10.197093639 -0700
 @@ -0,0 +1,46 @@
 +/* Stub implementations of functions to link into statically linked
 +   programs without needing libgcc_eh.
@@ -320,24 +320,3 @@
 +{
 +  abort ();
 +}
-Index: a/ports/sysdeps/arm/Makefile
-===================================================================
---- a/ports/sysdeps/arm/Makefile	2012-07-04 18:25:41.000000000 -0700
-+++ b/ports/sysdeps/arm/Makefile	2012-08-14 20:16:10.201093638 -0700
-@@ -1,8 +1,16 @@
-+gnulib-arch = $(elfobjdir)/libgcc-stubs.a
-+static-gnulib-arch = $(elfobjdir)/libgcc-stubs.a
-+
- ifeq ($(subdir),elf)
- sysdep-dl-routines += tlsdesc dl-tlsdesc
- sysdep_routines += aeabi_unwind_cpp_pr1 find_exidx tlsdesc dl-tlsdesc
- sysdep-rtld-routines += aeabi_unwind_cpp_pr1 tlsdesc dl-tlsdesc
- shared-only-routines += aeabi_unwind_cpp_pr1
-+
-+$(objpfx)libgcc-stubs.a: $(objpfx)aeabi_unwind_cpp_pr1.os
-+	$(build-extra-lib)
-+
-+lib-noranlib: $(objpfx)libgcc-stubs.a
- endif
- 
- ifeq ($(subdir),csu)
diff -r b60b008ab49c -r 5040c8e83e35 patches/eglibc/2_16/002-Add-ARM-specific-static-stubs.c.patch
--- a/patches/eglibc/2_16/002-Add-ARM-specific-static-stubs.c.patch	Fri Sep 21 16:38:18 2012 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-Upstream-Status: Backport
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-From c57a67e03368687fc0d2ae8354cd1b347a61ea44 Mon Sep 17 00:00:00 2001
-From: Joseph Myers <joseph@codesourcery.com>
-Date: Thu, 5 Jul 2012 22:16:03 +0000
-Subject: [PATCH] Add ARM-specific static-stubs.c.
-
----
- ports/ChangeLog.arm              |    4 ++++
- ports/sysdeps/arm/static-stubs.c |    7 +++++++
- 2 files changed, 11 insertions(+)
- create mode 100644 ports/sysdeps/arm/static-stubs.c
-
-Index: a/ports/sysdeps/arm/static-stubs.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ b/ports/sysdeps/arm/static-stubs.c	2012-08-15 15:04:59.687669241 -0700
-@@ -0,0 +1,7 @@
-+/* When building with GCC with static-only libgcc, the dummy
-+   _Unwind_Resume from static-stubs.c needs to be used together with
-+   the dummy __aeabi_unwind_cpp_pr* from aeabi_unwind_cpp_pr1.c
-+   instead of the copies from libgcc.  */
-+
-+#include <elf/static-stubs.c>
-+#include <aeabi_unwind_cpp_pr1.c>
diff -r b60b008ab49c -r 5040c8e83e35 patches/eglibc/2_16/003-mips-rld-map-check.patch
--- a/patches/eglibc/2_16/003-mips-rld-map-check.patch	Fri Sep 21 16:38:18 2012 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +0,0 @@
-
-On mips target, binutils currently sets DT_MIPS_RLD_MAP to 0 in dynamic
-section if a --version-script sets _RLD_MAP to local. This is apparently
-a binutils bug, but libc shouldn't segfault in this case.
-
-see also: http://sourceware.org/bugilla/show_bug.cgi?id=11615
-
-Upstream-Status: Pending
-
-9/19/2010 - added by Qing He <qing.he@intel.com>
-
-
----
-diff -ru glibc-2.10.1.orig/ports/sysdeps/mips/dl-machine.h glibc-2.10.1/ports/sysdeps/mips/dl-machine.h
---- glibc-2.10.1.orig/ports/sysdeps/mips/dl-machine.h	2009-05-16 16:36:20.000000000 +0800
-+++ glibc-2.10.1/ports/sysdeps/mips/dl-machine.h	2010-09-19 09:11:53.000000000 +0800
-@@ -70,7 +70,8 @@
- /* If there is a DT_MIPS_RLD_MAP entry in the dynamic section, fill it in
-    with the run-time address of the r_debug structure  */
- #define ELF_MACHINE_DEBUG_SETUP(l,r) \
--do { if ((l)->l_info[DT_MIPS (RLD_MAP)]) \
-+do { if ((l)->l_info[DT_MIPS (RLD_MAP)] && \
-+         (l)->l_info[DT_MIPS (RLD_MAP)]->d_un.d_ptr) \
-        *(ElfW(Addr) *)((l)->l_info[DT_MIPS (RLD_MAP)]->d_un.d_ptr) = \
-        (ElfW(Addr)) (r); \
-    } while (0)
diff -r b60b008ab49c -r 5040c8e83e35 patches/eglibc/ports-2_16/001-Avoid-use-of-libgcc_s-and-libgcc_eh-when-building-gl.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/eglibc/ports-2_16/001-Avoid-use-of-libgcc_s-and-libgcc_eh-when-building-gl.patch	Sun Sep 23 11:18:30 2012 +0900
@@ -0,0 +1,40 @@
+Upstream-Status: Backport
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+From 95f5a9a866695da4e038aa4e6ccbbfd5d9cf63b7 Mon Sep 17 00:00:00 2001
+From: Joseph Myers <joseph@codesourcery.com>
+Date: Tue, 3 Jul 2012 19:14:59 +0000
+Subject: [PATCH] Avoid use of libgcc_s and libgcc_eh when building glibc.
+
+---
+ ChangeLog                  |   47 ++++++++++++++++++++++++++++++
+ Makeconfig                 |   68 ++++++++++++++++++++++++++++++++++++++------
+ Rules                      |   45 ++++++++++++++++++++++-------
+ elf/Makefile               |    6 +++-
+ elf/static-stubs.c         |   46 ++++++++++++++++++++++++++++++
+ ports/ChangeLog.arm        |    7 +++++
+ ports/sysdeps/arm/Makefile |    8 ++++++
+ 7 files changed, 206 insertions(+), 21 deletions(-)
+ create mode 100644 elf/static-stubs.c
+
+-Index: a/sysdeps/arm/Makefile
+===================================================================
+--- a/sysdeps/arm/Makefile       2012-07-04 18:25:41.000000000 -0700
++++ b/sysdeps/arm/Makefile       2012-08-14 20:16:10.201093638 -0700
+@@ -1,8 +1,16 @@
++gnulib-arch = $(elfobjdir)/libgcc-stubs.a
++static-gnulib-arch = $(elfobjdir)/libgcc-stubs.a
++
+ ifeq ($(subdir),elf)
+ sysdep-dl-routines += tlsdesc dl-tlsdesc
+ sysdep_routines += aeabi_unwind_cpp_pr1 find_exidx tlsdesc dl-tlsdesc
+ sysdep-rtld-routines += aeabi_unwind_cpp_pr1 tlsdesc dl-tlsdesc
+ shared-only-routines += aeabi_unwind_cpp_pr1
++
++$(objpfx)libgcc-stubs.a: $(objpfx)aeabi_unwind_cpp_pr1.os
++	$(build-extra-lib)
++
++lib-noranlib: $(objpfx)libgcc-stubs.a
+ endif
+
+ ifeq ($(subdir),csu)
diff -r b60b008ab49c -r 5040c8e83e35 patches/eglibc/ports-2_16/002-Add-ARM-specific-static-stubs.c.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/eglibc/ports-2_16/002-Add-ARM-specific-static-stubs.c.patch	Sun Sep 23 11:18:30 2012 +0900
@@ -0,0 +1,27 @@
+Upstream-Status: Backport
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+From c57a67e03368687fc0d2ae8354cd1b347a61ea44 Mon Sep 17 00:00:00 2001
+From: Joseph Myers <joseph@codesourcery.com>
+Date: Thu, 5 Jul 2012 22:16:03 +0000
+Subject: [PATCH] Add ARM-specific static-stubs.c.
+
+---
+ ports/ChangeLog.arm              |    4 ++++
+ ports/sysdeps/arm/static-stubs.c |    7 +++++++
+ 2 files changed, 11 insertions(+)
+ create mode 100644 ports/sysdeps/arm/static-stubs.c
+
+Index: a/sysdeps/arm/static-stubs.c
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ b/sysdeps/arm/static-stubs.c	2012-08-15 15:04:59.687669241 -0700
+@@ -0,0 +1,7 @@
++/* When building with GCC with static-only libgcc, the dummy
++   _Unwind_Resume from static-stubs.c needs to be used together with
++   the dummy __aeabi_unwind_cpp_pr* from aeabi_unwind_cpp_pr1.c
++   instead of the copies from libgcc.  */
++
++#include <elf/static-stubs.c>
++#include <aeabi_unwind_cpp_pr1.c>
diff -r b60b008ab49c -r 5040c8e83e35 patches/eglibc/ports-2_16/003-mips-rld-map-check.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/eglibc/ports-2_16/003-mips-rld-map-check.patch	Sun Sep 23 11:18:30 2012 +0900
@@ -0,0 +1,26 @@
+
+On mips target, binutils currently sets DT_MIPS_RLD_MAP to 0 in dynamic
+section if a --version-script sets _RLD_MAP to local. This is apparently
+a binutils bug, but libc shouldn't segfault in this case.
+
+see also: http://sourceware.org/bugilla/show_bug.cgi?id=11615
+
+Upstream-Status: Pending
+
+9/19/2010 - added by Qing He <qing.he@intel.com>
+
+
+---
+diff -ru glibc-2.10.1.orig/sysdeps/mips/dl-machine.h glibc-2.10.1/sysdeps/mips/dl-machine.h
+--- glibc-2.10.1.orig/sysdeps/mips/dl-machine.h	2009-05-16 16:36:20.000000000 +0800
++++ glibc-2.10.1/sysdeps/mips/dl-machine.h	2010-09-19 09:11:53.000000000 +0800
+@@ -70,7 +70,8 @@
+ /* If there is a DT_MIPS_RLD_MAP entry in the dynamic section, fill it in
+    with the run-time address of the r_debug structure  */
+ #define ELF_MACHINE_DEBUG_SETUP(l,r) \
+-do { if ((l)->l_info[DT_MIPS (RLD_MAP)]) \
++do { if ((l)->l_info[DT_MIPS (RLD_MAP)] && \
++         (l)->l_info[DT_MIPS (RLD_MAP)]->d_un.d_ptr) \
+        *(ElfW(Addr) *)((l)->l_info[DT_MIPS (RLD_MAP)]->d_un.d_ptr) = \
+        (ElfW(Addr)) (r); \
+    } while (0)

--
For unsubscribe information see http://sourceware.org/lists.html#faq



More information about the crossgcc mailing list