xxboot.ldscript revision 1.9 1 OUTPUT_FORMAT("binary", "binary", "binary")
2 OUTPUT_ARCH(m68k)
3 ENTRY(start)
4 SEARCH_DIR(/usr/lib);
5 /*__DYNAMIC = 0; */
6 PROVIDE (__stack = 0);
7 SECTIONS
8 {
9 . = TEXTADDR;
10 .text :
11 ALIGN(2)
12 SUBALIGN(2)
13 {
14 CREATE_OBJECT_SYMBOLS
15 *(.text)
16 *(.rodata)
17 /* The next six sections are for SunOS dynamic linking. The order
18 is important. */
19 *(.dynrel)
20 *(.hash)
21 *(.dynsym)
22 *(.dynstr)
23 *(.rules)
24 *(.need)
25 etext = .;
26 _etext = .;
27 }
28 .data :
29 ALIGN(2)
30 SUBALIGN(2)
31 {
32 /* The first three sections are for SunOS dynamic linking. */
33 *(.dynamic)
34 *(.got)
35 *(.plt)
36 *(.data)
37 *(.linux-dynamic) /* For Linux dynamic linking. */
38 CONSTRUCTORS
39 edata = .;
40 _edata = .;
41 }
42 . = TEXTADDR + TEXTDATASIZE;
43 .bss :
44 {
45 __bss_start = .;
46 *(.bss)
47 *(COMMON)
48 end = ALIGN(4) ;
49 _end = ALIGN(4) ;
50 }
51 /DISCARD/ : { *(.ident) *(.stab) *(.stabstr) }
52 }
53
54 ASSERT(first_kbyte - TEXTADDR <= 1024, "Error: first_kbyte exceeds 1KB");
55 ASSERT(_end <= BOOT_TEXTADDR, "Error: _end conflicts BOOT_TEXT");
56