summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/binutils/ld/scripttempl/delta68.sc
blob: d9963054e76db3ae7ec0c4a452ed62064614010b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
cat <<EOF
OUTPUT_FORMAT("${OUTPUT_FORMAT}")
OUTPUT_ARCH(${ARCH})
ENTRY(_start)
${RELOCATING+${LIB_SEARCH_DIRS}}

SECTIONS
{
  .text ${RELOCATING+ 0x2000 + SIZEOF_HEADERS} :
    {
      ${RELOCATING+ __.text.start = .};
      *(.text)
      ${RELOCATING+ etext  =  .;}
      ${RELOCATING+ _etext  =  .;}
      ${RELOCATING+ __.text.end = .};
      ${CONSTRUCTING+ __CTOR_LIST__ = .;}
      ${CONSTRUCTING+ LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2)}
      ${CONSTRUCTING+ *(.ctors)}
      ${CONSTRUCTING+ LONG(0)}
      ${CONSTRUCTING+ __CTOR_END__ = .;}
      ${CONSTRUCTING+ __DTOR_LIST__ = .;}
      ${CONSTRUCTING+ LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2)}
      ${CONSTRUCTING+ *(.dtors)}
      ${CONSTRUCTING+ LONG(0)}
      ${CONSTRUCTING+ __DTOR_END__ = .;}
    }
  .data ${RELOCATING+ SIZEOF(.text) + ADDR(.text) + 0x400000} :
    {
      ${RELOCATING+ __.data.start = .};
      *(.data)
      ${RELOCATING+ edata  =  .};
      ${RELOCATING+ _edata  =  .};
      ${RELOCATING+ __.data.end = .};
    }
  .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} :
    { 					
      ${RELOCATING+ __.bss.start = .};
      *(.bss)
      *(COMMON)
      ${RELOCATING+ __.bss.end = .};
      ${RELOCATING+ end = ALIGN(0x8)};
      ${RELOCATING+ _end = ALIGN(0x8)};
    }
  .comment ${RELOCATING+ 0} :
    {
      *(.comment)
    }
}
EOF