1OUTPUT_ARCH(powerpc) 2SEARCH_DIR(/lib); SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/local/lib); SEARCH_DIR(/usr/local/powerpc-any-elf/lib); 3/* Do we need any of these for elf? 4 __DYNAMIC = 0; */ 5SECTIONS 6{ 7 /* Read-only sections, merged into text segment: */ 8 . = + SIZEOF_HEADERS; 9 .interp : { *(.interp) } 10 .hash : { *(.hash) } 11 .dynsym : { *(.dynsym) } 12 .dynstr : { *(.dynstr) } 13 .rel.text : { *(.rel.text) } 14 .rela.text : { *(.rela.text) } 15 .rel.data : { *(.rel.data) } 16 .rela.data : { *(.rela.data) } 17 .rel.rodata : { *(.rel.rodata) } 18 .rela.rodata : { *(.rela.rodata) } 19 .rel.got : { *(.rel.got) } 20 .rela.got : { *(.rela.got) } 21 .rel.ctors : { *(.rel.ctors) } 22 .rela.ctors : { *(.rela.ctors) } 23 .rel.dtors : { *(.rel.dtors) } 24 .rela.dtors : { *(.rela.dtors) } 25 .rel.bss : { *(.rel.bss) } 26 .rela.bss : { *(.rela.bss) } 27 .rel.plt : { *(.rel.plt) } 28 .rela.plt : { *(.rela.plt) } 29/* .init : { *(.init) } =0*/ 30 .plt : { *(.plt) } 31 .text : 32 { 33 *(.text) 34 *(.fixup) 35 *(.got1) 36 __got2_start = .; 37 *(.got2) 38 __got2_end = .; 39 } 40 _etext = .; 41 PROVIDE (etext = .); 42 .rodata : 43 { 44 *(.rodata) 45 *(.rodata.*) 46 *(.rodata1) 47 } 48 .kstrtab : { *(.kstrtab) } 49 .fini : { *(.fini) } =0 50 .ctors : { *(.ctors) } 51 .dtors : { *(.dtors) } 52 /* Read-write section, merged into data segment: */ 53 . = (. + 0x0FFF) & 0xFFFFF000; 54 .data : 55 { 56 *(.data) 57 *(.data1) 58 *(.sdata) 59 *(.sdata2) 60 *(.got.plt) *(.got) 61 *(.dynamic) 62 CONSTRUCTORS 63 } 64 _edata = .; 65 PROVIDE (edata = .); 66 67 . = ALIGN(8); 68 .fixup : { *(.fixup) } 69 __start___ex_table = .; 70 __ex_table : { *(__ex_table) } 71 __stop___ex_table = .; 72 73 __start___ksymtab = .; /* Kernel symbol table */ 74 __ksymtab : { *(__ksymtab) } 75 __stop___ksymtab = .; 76 77 . = ALIGN(8); 78 __start___ftr_fixup = .; 79 __ftr_fixup : { *(__ftr_fixup) } 80 __stop___ftr_fixup = .; 81 82 . = ALIGN(32); 83 .data.cacheline_aligned : { *(.data.cacheline_aligned) } 84 85 . = ALIGN(4096); 86 __init_begin = .; 87 .text.init : { *(.text.init) } 88 .data.init : { 89 *(.data.init); 90 __vtop_table_begin = .; 91 *(.vtop_fixup); 92 __vtop_table_end = .; 93 __ptov_table_begin = .; 94 *(.ptov_fixup); 95 __ptov_table_end = .; 96 } 97 . = ALIGN(16); 98 __setup_start = .; 99 .setup.init : { *(.setup.init) } 100 __setup_end = .; 101 __initcall_start = .; 102 .initcall.init : { *(.initcall.init) } 103 __initcall_end = .; 104 . = ALIGN(4096); 105 __init_end = .; 106 107 . = ALIGN(4096); 108 __pmac_begin = .; 109 .text.pmac : { *(.text.pmac) } 110 .data.pmac : { *(.data.pmac) } 111 . = ALIGN(4096); 112 __pmac_end = .; 113 114 . = ALIGN(4096); 115 __prep_begin = .; 116 .text.prep : { *(.text.prep) } 117 .data.prep : { *(.data.prep) } 118 . = ALIGN(4096); 119 __prep_end = .; 120 121 . = ALIGN(4096); 122 __chrp_begin = .; 123 .text.chrp : { *(.text.chrp) } 124 .data.chrp : { *(.data.chrp) } 125 . = ALIGN(4096); 126 __chrp_end = .; 127 128 . = ALIGN(4096); 129 __openfirmware_begin = .; 130 .text.openfirmware : { *(.text.openfirmware) } 131 .data.openfirmware : { *(.data.openfirmware) } 132 . = ALIGN(4096); 133 __openfirmware_end = .; 134 135 __bss_start = .; 136 .bss : 137 { 138 *(.sbss) *(.scommon) 139 *(.dynbss) 140 *(.bss) 141 *(COMMON) 142 } 143 . = ALIGN(4); 144 _end = . ; 145 PROVIDE (end = .); 146} 147