| 1 | cat <<EOF
 | 
|---|
| 2 | OUTPUT_FORMAT(${OUTPUT_FORMAT})
 | 
|---|
| 3 | OUTPUT_ARCH(${ARCH})
 | 
|---|
| 4 | ${RELOCATING+${LIB_SEARCH_DIRS}}
 | 
|---|
| 5 | 
 | 
|---|
| 6 | SECTIONS
 | 
|---|
| 7 | {
 | 
|---|
| 8 |   .text ${RELOCATING:-0} ${RELOCATING+${TEXT_START_ADDR}} : {
 | 
|---|
| 9 |     ${RELOCATING+ start = DEFINED(_START) ? _START : DEFINED(_start) ? _start : .;}
 | 
|---|
| 10 |     ${RELOCATING+ PROVIDE(__text = .);}
 | 
|---|
| 11 |     *(.text);
 | 
|---|
| 12 |     *(code);
 | 
|---|
| 13 |     *(const);
 | 
|---|
| 14 |     *(strings);
 | 
|---|
| 15 |     *(pSOS);
 | 
|---|
| 16 |     *(pROBE);
 | 
|---|
| 17 |     *(pNA);
 | 
|---|
| 18 |     *(pHILE);
 | 
|---|
| 19 |     *(pREPC);
 | 
|---|
| 20 |     *(pRPC);
 | 
|---|
| 21 |     ${CONSTRUCTING+ ___CTOR_LIST__ = .;}
 | 
|---|
| 22 |     ${CONSTRUCTING+ LONG((___CTOR_END__ - ___CTOR_LIST__) / 4 - 2)}
 | 
|---|
| 23 |     ${CONSTRUCTING+ *(.ctors)}
 | 
|---|
| 24 |     ${CONSTRUCTING+ LONG(0);}
 | 
|---|
| 25 |     ${CONSTRUCTING+ ___CTOR_END__ = .;}
 | 
|---|
| 26 |     ${CONSTRUCTING+ ___DTOR_LIST__ = .;}
 | 
|---|
| 27 |     ${CONSTRUCTING+ LONG((___DTOR_END__ - ___DTOR_LIST__) / 4 - 2);}
 | 
|---|
| 28 |     ${CONSTRUCTING+ *(.dtors);}
 | 
|---|
| 29 |     ${CONSTRUCTING+ LONG(0);}
 | 
|---|
| 30 |     ${CONSTRUCTING+ ___DTOR_END__ = .;}
 | 
|---|
| 31 |     ${RELOCATING+ PROVIDE(__etext = .);}
 | 
|---|
| 32 |     ${RELOCATING+ PROVIDE(_etext = .);}
 | 
|---|
| 33 |   }
 | 
|---|
| 34 |   .data ${RELOCATING:-0} : ${RELOCATING+ AT(ADDR(.text) + SIZEOF(.text))} {
 | 
|---|
| 35 |     ${RELOCATING+ PROVIDE(__data = .);}
 | 
|---|
| 36 |     *(.data);
 | 
|---|
| 37 |     *(vars);
 | 
|---|
| 38 |     ${RELOCATING+ PROVIDE(__edata = .);}
 | 
|---|
| 39 |     ${RELOCATING+ PROVIDE(_edata = .);}
 | 
|---|
| 40 |   }
 | 
|---|
| 41 |   .bss ${RELOCATING:-0} :
 | 
|---|
| 42 |   {                                     
 | 
|---|
| 43 |     ${RELOCATING+ PROVIDE(__bss = .);}
 | 
|---|
| 44 |     *(.bss);
 | 
|---|
| 45 |     *(zerovars);
 | 
|---|
| 46 |     *(COMMON);
 | 
|---|
| 47 |     ${RELOCATING+ PROVIDE(__ebss = .);}
 | 
|---|
| 48 |     ${RELOCATING+ PROVIDE(__end = .);}
 | 
|---|
| 49 |     ${RELOCATING+ PROVIDE(_end = .);}
 | 
|---|
| 50 |     ${RELOCATING+ PROVIDE(_FreeMemStart = .);}
 | 
|---|
| 51 |   }
 | 
|---|
| 52 |   .stab 0 ${RELOCATING+(NOLOAD)} : 
 | 
|---|
| 53 |   {
 | 
|---|
| 54 |     *(.stab);
 | 
|---|
| 55 |   }
 | 
|---|
| 56 |   .stabstr 0 ${RELOCATING+(NOLOAD)} :
 | 
|---|
| 57 |   {
 | 
|---|
| 58 |     *(.stabstr);
 | 
|---|
| 59 |   }
 | 
|---|
| 60 | }
 | 
|---|
| 61 | EOF
 | 
|---|