source: mainline/uspace/lib/c/arch/ia32/_link.ld.in@ 1b20da0

lfn serial ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since 1b20da0 was eca820c, checked in by jzr <zarevucky.jiri@…>, 8 years ago

Revert change to the way startup file is referenced.

The path is not actually referenced in the output object itself.
It is only visible in the map generated by the linker, which
does not matter for reproducibility. Also, it would be infeasible
to provide reproducible map files with a proper HelenOS-targeted
toolchain. Coastline breakage begone!

  • Property mode set to 100644
File size: 2.1 KB
RevLine 
[729f774f]1#ifndef SHLIB
[eca820c]2STARTUP(LIBC_PATH/arch/UARCH/src/entry.o)
[3eddaff]3ENTRY(__entry)
[729f774f]4#endif
[3eddaff]5
[d03e156]6PHDRS {
[54146a0]7#if defined(LOADER) || defined(DLEXE)
[c53d906]8 interp PT_INTERP;
9 text PT_LOAD FILEHDR PHDRS FLAGS(5);
10#else
[f563126]11 text PT_LOAD FLAGS(5);
[c53d906]12#endif
[a3aa1e1]13 data PT_LOAD FLAGS(6);
[6adb775f]14 tls PT_TLS;
[729f774f]15#if defined(SHLIB) || defined(DLEXE)
16 dynamic PT_DYNAMIC;
17#endif
[1e00216]18 debug PT_NOTE;
[d03e156]19}
20
[3eddaff]21SECTIONS {
[729f774f]22#ifdef LOADER
[c53d906]23 . = 0x70001000 + SIZEOF_HEADERS;
24#else
[1cc2974]25 . = 0x1000 + SIZEOF_HEADERS;
[c53d906]26#endif
[e1c0260]27
[1cc2974]28 .init : {
[a3aa1e1]29 *(.init);
30 } :text
[f563126]31
[a3aa1e1]32 .text : {
[c81e5e0]33 *(.text .text.*);
34 *(.rodata .rodata.*);
[a3aa1e1]35 } :text
[9bcdbc5]36
[729f774f]37#if defined(SHLIB) || defined(DLEXE)
38 .rel.plt : {
39 *(.rel.plt);
40 }
41 /*
42 *.rel.dyn MUST FOLLOW IMMEDIATELY after .rel.plt
43 * without alignment gap or DT_REL will be broken
44 */
45 .rel.dyn : {
46 *(.rel.*);
47 } :text
48
49 .plt : {
50 *(.plt);
51 } :text
52
53 .dynsym : {
54 *(.dynsym);
55 } :text
[f563126]56
[729f774f]57 .dynstr : {
58 *(.dynstr);
59 } :text
[54146a0]60
61 .hash : {
62 *(.hash);
63 } :text
[729f774f]64#endif
[0783634]65
66#if defined(LOADER) || defined(DLEXE)
67 .interp : {
68 *(.interp);
69 } :interp :text
70#endif
71
[1cc2974]72 . = . + 0x1000;
[f563126]73
[729f774f]74#if defined(SHLIB) || defined(DLEXE)
75 .dynamic : {
76 *(.dynamic);
77 } :data :dynamic
78#endif
79
[1cc2974]80 .data : {
[a3aa1e1]81 *(.data);
82 } :data
[f563126]83
[729f774f]84#if defined(SHLIB) || defined(DLEXE)
85 .data.rel : {
[9bcdbc5]86 *(.data.rel .data.rel.*);
[729f774f]87 } :data
[9bcdbc5]88
[729f774f]89 .got : {
[9bcdbc5]90 *(.got);
[729f774f]91 } :data
[9bcdbc5]92
[729f774f]93 .got.plt : {
[9bcdbc5]94 *(.got.plt);
[729f774f]95 } :data
96#endif
97
[c4c5de5]98 .tdata : {
99 _tdata_start = .;
100 *(.tdata);
[f563126]101 *(.gnu.linkonce.tb.*);
[c4c5de5]102 _tdata_end = .;
[6adb775f]103 } :data :tls
104 .tbss : {
[c4c5de5]105 _tbss_start = .;
106 *(.tbss);
107 _tbss_end = .;
[6adb775f]108 } :data :tls
[f563126]109
[0a981e3]110 _tls_alignment = MAX(ALIGNOF(.tdata), ALIGNOF(.tbss));
[f563126]111
[a3aa1e1]112 .bss : {
[54146a0]113 *(.dynbss);
[f563126]114 *(COMMON);
115 *(.bss);
[a3aa1e1]116 } :data
[d03e156]117
[1e00216]118#ifdef CONFIG_LINE_DEBUG
119 .comment 0 : { *(.comment); } :debug
120 .debug_abbrev 0 : { *(.debug_abbrev); } :debug
121 .debug_aranges 0 : { *(.debug_aranges); } :debug
122 .debug_info 0 : { *(.debug_info); } :debug
123 .debug_line 0 : { *(.debug_line); } :debug
124 .debug_loc 0 : { *(.debug_loc); } :debug
125 .debug_pubnames 0 : { *(.debug_pubnames); } :debug
126 .debug_pubtypes 0 : { *(.debug_pubtypes); } :debug
127 .debug_ranges 0 : { *(.debug_ranges); } :debug
128 .debug_str 0 : { *(.debug_str); } :debug
129#endif
130
[d03e156]131 /DISCARD/ : {
[a3aa1e1]132 *(*);
[d03e156]133 }
[3eddaff]134}
Note: See TracBrowser for help on using the repository browser.