1cat <<EOF 2OUTPUT_FORMAT("${OUTPUT_FORMAT}") 3${LIB_SEARCH_DIRS} 4PROVIDE (__stack = 0); 5SECTIONS 6{ 7 .text ${RELOCATING+ 0x1000000} : { 8 *(.text) 9 ${CONSTRUCTING+ . = ALIGN(4);} 10 ${RELOCATING+ etext = .;} 11 ${CONSTRUCTING+ __CTOR_LIST__ = .;} 12 ${CONSTRUCTING+ LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2)} 13 ${CONSTRUCTING+ *(.ctors)} 14 ${CONSTRUCTING+ LONG(0)} 15 ${CONSTRUCTING+ __CTOR_END__ = .;} 16 ${CONSTRUCTING+ __DTOR_LIST__ = .;} 17 ${CONSTRUCTING+ LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2)} 18 ${CONSTRUCTING+ *(.dtors)} 19 ${CONSTRUCTING+ LONG(0)} 20 ${CONSTRUCTING+ __DTOR_END__ = .;} 21 } 22 .data : { 23 *(.data) 24 ${RELOCATING+ edata = .}; 25 } 26 .bss : { 27 ${RELOCATING+ __bss_start = .}; 28 *(.bss) 29 *(COMMON) 30 ${RELOCATING+ end = ALIGN(0x8)}; 31 ${RELOCATING+ _end = ALIGN(0x8)}; 32 } 33 .stab 0 ${RELOCATING+(NOLOAD)} : 34 { 35 [ .stab ] 36 } 37 .stabstr 0 ${RELOCATING+(NOLOAD)} : 38 { 39 [ .stabstr ] 40 } 41} 42EOF 43