]> git.pld-linux.org Git - packages/binutils.git/blobdiff - binutils-array-sects-compat.patch
This commit was manufactured by cvs2git to create branch 'AC-branch'.
[packages/binutils.git] / binutils-array-sects-compat.patch
diff --git a/binutils-array-sects-compat.patch b/binutils-array-sects-compat.patch
new file mode 100644 (file)
index 0000000..a45e14b
--- /dev/null
@@ -0,0 +1,20 @@
+--- binutils-2.13.90.0.16/ld/scripttempl/elf.sc.array-sects-compat~    2003-01-03 22:21:16.000000000 -0200
++++ binutils-2.13.90.0.16/ld/scripttempl/elf.sc        2003-01-03 22:27:42.000000000 -0200
+@@ -288,6 +288,17 @@
+   ${CREATE_SHLIB-${RELOCATING+. = ${DATA_ADDR-${DATA_SEGMENT_ALIGN}};}}
+   ${CREATE_SHLIB+${RELOCATING+. = ${SHLIB_DATA_ADDR-${DATA_SEGMENT_ALIGN}};}}
++  /* For backward-compatibility with tools that don't support the
++     *_array_* sections below, our glibc's crt files contain weak
++     definitions of symbols that they reference.  We don't want to use
++     them, though, unless they're strictly necessary, because they'd
++     bring us empty sections, unlike PROVIDE below, so we drop the
++     sections from the crt files here.  */
++  /DISCARD/ : {
++      */crti.o(.init_array .fini_array .preinit_array)
++      */crtn.o(.init_array .fini_array .preinit_array)
++  }
++
+   /* Ensure the __preinit_array_start label is properly aligned.  We
+      could instead move the label definition inside the section, but
+      the linker would then create the section even if it turns out to
This page took 0.055468 seconds and 4 git commands to generate.