]> git.ipfire.org Git - ipfire-2.x.git/blobdiff - src/patches/glibc-remove-ctors-dtors-output-sections.patch
glibc: Update to 2.25
[ipfire-2.x.git] / src / patches / glibc-remove-ctors-dtors-output-sections.patch
diff --git a/src/patches/glibc-remove-ctors-dtors-output-sections.patch b/src/patches/glibc-remove-ctors-dtors-output-sections.patch
deleted file mode 100644 (file)
index 91155c9..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-From 4a531bb0b3b582cb693de9f76d2d97d970f9a5d5 Mon Sep 17 00:00:00 2001
-From: H.J. Lu <hongjiu.lu@intel.com>
-Date: Fri, 24 Dec 2010 20:14:37 -0500
-Subject: [PATCH] Remove `.ctors' and `.dtors' output sections
-
----
- config.h.in                            |    3 +
- configure.in                           |    2 +
- elf/sofini.c                           |    2 +
- elf/soinit.c                           |    2 +
- sysdeps/i386/init-first.c              |    2 +
- sysdeps/mach/hurd/i386/init-first.c    |    2 +-
- sysdeps/mach/hurd/powerpc/init-first.c |    2 +-
- sysdeps/sh/init-first.c                |    2 +
- sysdeps/unix/sysv/linux/init-first.c   |    2 +-
- 9 files changed, 16 insertions(+), 3 deletions(-)
-
-diff --git a/config.h.in b/config.h.in
-index 18bf01a..9e797eb 100644
---- a/config.h.in
-+++ b/config.h.in
-@@ -201,6 +201,9 @@
- /* Define if multi-arch DSOs should be generated.  */
- #undef USE_MULTIARCH
-+/* Define if `.ctors' and `.dtors' sections shouldn't be used.  */
-+#undef        NO_CTORS_DTORS_SECTIONS
-+
- /*
\f */
-diff --git a/configure.in b/configure.in
-index d8cd5f1..ad25b9b 100644
---- a/configure.in
-+++ b/configure.in
-@@ -1497,6 +1497,8 @@ EOF
-   rm -f conftest*])
-   if test $libc_cv_initfini_array != yes; then
-     AC_MSG_ERROR([Need linker with .init_array/.fini_array support.])
-+  elif AC_TRY_COMMAND([${CC-cc} -Wl,--verbose 2>&1|grep SORT_BY_INIT_PRIORITY 1>&AS_MESSAGE_LOG_FD]); then
-+    AC_DEFINE(NO_CTORS_DTORS_SECTIONS)
-   fi
-   AC_CACHE_CHECK(for libunwind-support in compiler,
-diff --git a/elf/sofini.c b/elf/sofini.c
-index 5e06f0c..13e74b7 100644
---- a/elf/sofini.c
-+++ b/elf/sofini.c
-@@ -1,12 +1,14 @@
- /* Finalizer module for ELF shared C library.  This provides terminating
-    null pointer words in the `.ctors' and `.dtors' sections.  */
-+#ifndef NO_CTORS_DTORS_SECTIONS
- static void (*const __CTOR_END__[1]) (void)
-      __attribute__ ((used, section (".ctors")))
-      = { 0 };
- static void (*const __DTOR_END__[1]) (void)
-      __attribute__ ((used, section (".dtors")))
-      = { 0 };
-+#endif
- /* Terminate the frame unwind info section with a 4byte 0 as a sentinel;
-    this would be the 'length' field in a real FDE.  */
-diff --git a/elf/soinit.c b/elf/soinit.c
-index 6fecbb5..1db676a 100644
---- a/elf/soinit.c
-+++ b/elf/soinit.c
-@@ -3,6 +3,7 @@
-    the `.ctors' and `.dtors' sections so the lists are terminated, and
-    calling those lists of functions.  */
-+#ifndef NO_CTORS_DTORS_SECTIONS
- #include <libc-internal.h>
- #include <stdlib.h>
-@@ -40,3 +41,4 @@ __libc_fini (void)
- void (*_fini_ptr) (void) __attribute__ ((section (".fini_array")))
-      = &__libc_fini;
-+#endif
-diff --git a/sysdeps/i386/init-first.c b/sysdeps/i386/init-first.c
-index c6355a8..2af042f 100644
---- a/sysdeps/i386/init-first.c
-+++ b/sysdeps/i386/init-first.c
-@@ -59,7 +59,9 @@ _init (int argc, ...)
- {
-   init (&argc);
-+#ifndef NO_CTORS_DTORS_SECTIONS
-   __libc_global_ctors ();
-+#endif
- }
- #endif
-diff --git a/sysdeps/mach/hurd/i386/init-first.c b/sysdeps/mach/hurd/i386/init-first.c
-index f9a7a58..60823bd 100644
---- a/sysdeps/mach/hurd/i386/init-first.c
-+++ b/sysdeps/mach/hurd/i386/init-first.c
-@@ -92,7 +92,7 @@ posixland_init (int argc, char **argv, char **envp)
-   __getopt_clean_environment (envp);
- #endif
--#ifdef SHARED
-+#if defined SHARED && !defined NO_CTORS_DTORS_SECTIONS
-   __libc_global_ctors ();
- #endif
- }
-diff --git a/sysdeps/mach/hurd/powerpc/init-first.c b/sysdeps/mach/hurd/powerpc/init-first.c
-index 20fa1d4..21b5054 100644
---- a/sysdeps/mach/hurd/powerpc/init-first.c
-+++ b/sysdeps/mach/hurd/powerpc/init-first.c
-@@ -82,7 +82,7 @@ posixland_init (int argc, char **argv, char **envp)
-   __getopt_clean_environment (__environ);
- #endif
--#ifdef SHARED
-+#if defined SHARED && !defined NO_CTORS_DTORS_SECTIONS
-   __libc_global_ctors ();
- #endif
- }
-diff --git a/sysdeps/sh/init-first.c b/sysdeps/sh/init-first.c
-index d816625..1f3a821 100644
---- a/sysdeps/sh/init-first.c
-+++ b/sysdeps/sh/init-first.c
-@@ -59,7 +59,9 @@ _init (int argc, ...)
- {
-   init (&argc);
-+#ifndef NO_CTORS_DTORS_SECTIONS
-   __libc_global_ctors ();
-+#endif
- }
- #endif
-diff --git a/sysdeps/unix/sysv/linux/init-first.c b/sysdeps/unix/sysv/linux/init-first.c
-index 7b2333d..a60212f 100644
---- a/sysdeps/unix/sysv/linux/init-first.c
-+++ b/sysdeps/unix/sysv/linux/init-first.c
-@@ -93,7 +93,7 @@ _init (int argc, char **argv, char **envp)
-   __getopt_clean_environment (envp);
- #endif
--#ifdef SHARED
-+#if defined SHARED && !defined NO_CTORS_DTORS_SECTIONS
-   __libc_global_ctors ();
- #endif
- }
--- 
-1.7.3.4
-