Commit | Line | Data |
---|---|---|
252b5132 RH |
1 | test -z "${BIG_OUTPUT_FORMAT}" && BIG_OUTPUT_FORMAT=${OUTPUT_FORMAT} |
2 | test -z "${LITTLE_OUTPUT_FORMAT}" && LITTLE_OUTPUT_FORMAT=${OUTPUT_FORMAT} | |
3 | test -z "${ALIGNMENT}" && ALIGNMENT="4" | |
4 | ||
5 | cat <<EOF | |
6 | OUTPUT_FORMAT("${OUTPUT_FORMAT}", "${BIG_OUTPUT_FORMAT}", | |
7 | "${LITTLE_OUTPUT_FORMAT}") | |
8 | OUTPUT_ARCH(${ARCH}) | |
9 | ||
10 | ${RELOCATING+${LIB_SEARCH_DIRS}} | |
11 | ${STACKZERO+${RELOCATING+${STACKZERO}}} | |
12 | ${SHLIB_PATH+${RELOCATING+${SHLIB_PATH}}} | |
13 | ${RELOCATING+${EXECUTABLE_SYMBOLS}} | |
14 | ${RELOCATING+PROVIDE (__stack = 0);} | |
15 | SECTIONS | |
16 | { | |
17 | ${RELOCATING+. = ${TEXT_START_ADDR};} | |
18 | .text : | |
19 | { | |
20 | CREATE_OBJECT_SYMBOLS | |
21 | *(.text) | |
22 | /* The next six sections are for SunOS dynamic linking. The order | |
23 | is important. */ | |
24 | *(.dynrel) | |
25 | *(.hash) | |
26 | *(.dynsym) | |
27 | *(.dynstr) | |
28 | *(.rules) | |
29 | *(.need) | |
30 | ${RELOCATING+_etext = .;} | |
31 | ${RELOCATING+__etext = .;} | |
32 | ${PAD_TEXT+${RELOCATING+. = ${DATA_ALIGNMENT};}} | |
33 | } | |
34 | ${RELOCATING+. = ${DATA_ALIGNMENT};} | |
35 | .data : | |
36 | { | |
37 | /* The first three sections are for SunOS dynamic linking. */ | |
38 | *(.dynamic) | |
39 | *(.got) | |
40 | *(.plt) | |
41 | *(.data) | |
42 | *(.linux-dynamic) /* For Linux dynamic linking. */ | |
43 | ${CONSTRUCTING+CONSTRUCTORS} | |
44 | ${RELOCATING+_edata = .;} | |
45 | ${RELOCATING+__edata = .;} | |
46 | } | |
47 | .bss : | |
48 | { | |
49 | ${RELOCATING+ __bss_start = .}; | |
50 | *(.bss) | |
51 | *(COMMON) | |
52 | ${RELOCATING+. = ALIGN(${ALIGNMENT});} | |
53 | ${RELOCATING+_end = . }; | |
54 | ${RELOCATING+__end = . }; | |
55 | } | |
56 | } | |
57 | EOF |