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