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 .fixup : { *(.fixup) } 68 __start___ex_table = .; 69 __ex_table : { *(__ex_table) } 70 __stop___ex_table = .; 71 72 __start___ksymtab = .; /* Kernel symbol table */ 73 __ksymtab : { *(__ksymtab) } 74 __stop___ksymtab = .; 75 76 __start___ftr_fixup = .; 77 __ftr_fixup : { *(__ftr_fixup) } 78 __stop___ftr_fixup = .; 79 80 . = ALIGN(32); 81 .data.cacheline_aligned : { *(.data.cacheline_aligned) } 82 83 . = ALIGN(4096); 84 __init_begin = .; 85 .text.init : { *(.text.init) } 86 .data.init : { 87 *(.data.init); 88 __vtop_table_begin = .; 89 *(.vtop_fixup); 90 __vtop_table_end = .; 91 __ptov_table_begin = .; 92 *(.ptov_fixup); 93 __ptov_table_end = .; 94 } 95 . = ALIGN(16); 96 __setup_start = .; 97 .setup.init : { *(.setup.init) } 98 __setup_end = .; 99 __initcall_start = .; 100 .initcall.init : { *(.initcall.init) } 101 __initcall_end = .; 102 . = ALIGN(4096); 103 __init_end = .; 104 105 . = ALIGN(4096); 106 __pmac_begin = .; 107 .text.pmac : { *(.text.pmac) } 108 .data.pmac : { *(.data.pmac) } 109 . = ALIGN(4096); 110 __pmac_end = .; 111 112 . = ALIGN(4096); 113 __prep_begin = .; 114 .text.prep : { *(.text.prep) } 115 .data.prep : { *(.data.prep) } 116 . = ALIGN(4096); 117 __prep_end = .; 118 119 . = ALIGN(4096); 120 __chrp_begin = .; 121 .text.chrp : { *(.text.chrp) } 122 .data.chrp : { *(.data.chrp) } 123 . = ALIGN(4096); 124 __chrp_end = .; 125 126 . = ALIGN(4096); 127 __openfirmware_begin = .; 128 .text.openfirmware : { *(.text.openfirmware) } 129 .data.openfirmware : { *(.data.openfirmware) } 130 . = ALIGN(4096); 131 __openfirmware_end = .; 132 133 __bss_start = .; 134 .bss : 135 { 136 *(.sbss) *(.scommon) 137 *(.dynbss) 138 *(.bss) 139 *(COMMON) 140 } 141 _end = . ; 142 PROVIDE (end = .); 143} 144