1*3d8817e4Smiodtest -z "$ENTRY" && ENTRY=_start
2*3d8817e4Smiodcat <<EOF
3*3d8817e4SmiodOUTPUT_FORMAT("${OUTPUT_FORMAT}")
4*3d8817e4Smiod${LIB_SEARCH_DIRS}
5*3d8817e4Smiod
6*3d8817e4SmiodENTRY(${ENTRY})
7*3d8817e4Smiod
8*3d8817e4SmiodSECTIONS
9*3d8817e4Smiod{
10*3d8817e4Smiod  .text ${RELOCATING+ SIZEOF_HEADERS} : {
11*3d8817e4Smiod    *(.init)
12*3d8817e4Smiod    *(.text)
13*3d8817e4Smiod    ${RELOCATING+ etext  =  .;}
14*3d8817e4Smiod    ${CONSTRUCTING+ ___CTOR_LIST__ = .;}
15*3d8817e4Smiod    ${CONSTRUCTING+ LONG((___CTOR_END__ - ___CTOR_LIST__) / 4 - 2)}
16*3d8817e4Smiod    ${CONSTRUCTING+ *(.ctors)}
17*3d8817e4Smiod    ${CONSTRUCTING+ LONG(0)}
18*3d8817e4Smiod    ${CONSTRUCTING+ ___CTOR_END__ = .;}
19*3d8817e4Smiod    ${CONSTRUCTING+ ___DTOR_LIST__ = .;}
20*3d8817e4Smiod    ${CONSTRUCTING+ LONG((___DTOR_END__ - ___DTOR_LIST__) / 4 - 2)}
21*3d8817e4Smiod    ${CONSTRUCTING+ *(.dtors)}
22*3d8817e4Smiod    ${CONSTRUCTING+ LONG(0)}
23*3d8817e4Smiod    ${CONSTRUCTING+ ___DTOR_END__ = .;}
24*3d8817e4Smiod    *(.fini)
25*3d8817e4Smiod    ${RELOCATING+ etext  =  .};
26*3d8817e4Smiod  }
27*3d8817e4Smiod  .data ${RELOCATING+ 0x400000 + (. & 0xffc00fff)} : {
28*3d8817e4Smiod    *(.data .data2)
29*3d8817e4Smiod    ${RELOCATING+ edata  =  .};
30*3d8817e4Smiod  }
31*3d8817e4Smiod  .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} :
32*3d8817e4Smiod  {
33*3d8817e4Smiod    *(.bss)
34*3d8817e4Smiod    *(COMMON)
35*3d8817e4Smiod    ${RELOCATING+ end = .};
36*3d8817e4Smiod  }
37*3d8817e4Smiod  .stab  0 ${RELOCATING+(NOLOAD)} :
38*3d8817e4Smiod  {
39*3d8817e4Smiod    [ .stab ]
40*3d8817e4Smiod  }
41*3d8817e4Smiod  .stabstr  0 ${RELOCATING+(NOLOAD)} :
42*3d8817e4Smiod  {
43*3d8817e4Smiod    [ .stabstr ]
44*3d8817e4Smiod  }
45*3d8817e4Smiod}
46*3d8817e4SmiodEOF
47