1cat <<EOF 2OUTPUT_FORMAT(${OUTPUT_FORMAT}) 3OUTPUT_ARCH(${ARCH}) 4${RELOCATING+${LIB_SEARCH_DIRS}} 5 6SECTIONS 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} 61EOF 62