]>
Commit | Line | Data |
---|---|---|
48cc5ecd | 1 | --- binutils-2.13.90.0.16/ld/scripttempl/elf.sc.array-sects-compat~ 2003-01-03 22:21:16.000000000 -0200 |
2 | +++ binutils-2.13.90.0.16/ld/scripttempl/elf.sc 2003-01-03 22:27:42.000000000 -0200 | |
3 | @@ -288,6 +288,17 @@ | |
4 | ${CREATE_SHLIB-${RELOCATING+. = ${DATA_ADDR-${DATA_SEGMENT_ALIGN}};}} | |
5 | ${CREATE_SHLIB+${RELOCATING+. = ${SHLIB_DATA_ADDR-${DATA_SEGMENT_ALIGN}};}} | |
6 | ||
7 | + /* For backward-compatibility with tools that don't support the | |
8 | + *_array_* sections below, our glibc's crt files contain weak | |
9 | + definitions of symbols that they reference. We don't want to use | |
10 | + them, though, unless they're strictly necessary, because they'd | |
11 | + bring us empty sections, unlike PROVIDE below, so we drop the | |
12 | + sections from the crt files here. */ | |
13 | + /DISCARD/ : { | |
14 | + */crti.o(.init_array .fini_array .preinit_array) | |
15 | + */crtn.o(.init_array .fini_array .preinit_array) | |
16 | + } | |
17 | + | |
18 | /* Ensure the __preinit_array_start label is properly aligned. We | |
19 | could instead move the label definition inside the section, but | |
20 | the linker would then create the section even if it turns out to |