1 # The PLT-agnostic parts of a generic 32-bit ELF PowerPC target. Included by: 2 # elf32ppc.sh elf32ppcvxworks.sh elf64ppc.sh 3 TEMPLATE_NAME=elf32 4 GENERATE_SHLIB_SCRIPT=yes 5 GENERATE_PIE_SCRIPT=yes 6 SCRIPT_NAME=elf 7 OUTPUT_FORMAT="elf32-powerpc" 8 NO_REL_RELOCS=yes 9 TEXT_START_ADDR=0x01800000 10 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)" 11 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)" 12 ARCH=powerpc:common 13 MACHINE= 14 EXECUTABLE_SYMBOLS='PROVIDE (__stack = 0); PROVIDE (___stack = 0);' 15 if test -z "${CREATE_SHLIB}"; then 16 SBSS_START_SYMBOLS="PROVIDE (__sbss_start = .); PROVIDE (___sbss_start = .);" 17 SBSS_END_SYMBOLS="PROVIDE (__sbss_end = .); PROVIDE (___sbss_end = .);" 18 else 19 unset SDATA_START_SYMBOLS 20 unset SDATA2_START_SYMBOLS 21 unset SBSS_START_SYMBOLS 22 unset SBSS_END_SYMBOLS 23 fi 24 OTHER_END_SYMBOLS="__end = .;" 25 OTHER_RELRO_SECTIONS=" 26 .fixup ${RELOCATING-0} : { *(.fixup) } 27 .got1 ${RELOCATING-0} : { *(.got1) } 28 .got2 ${RELOCATING-0} : { *(.got2) } 29 " 30 OTHER_GOT_RELOC_SECTIONS=" 31 .rela.got1 ${RELOCATING-0} : { *(.rela.got1) } 32 .rela.got2 ${RELOCATING-0} : { *(.rela.got2) } 33 " 34 35 # Treat a host that matches the target with the possible exception of "64" 36 # in the name as if it were native. 37 if test `echo "$host" | sed -e s/64//` = `echo "$target" | sed -e s/64//`; then 38 case " $EMULATION_LIBPATH " in 39 *" ${EMULATION_NAME} "*) 40 NATIVE=yes 41 ;; 42 esac 43 fi 44 45 # Look for 64 bit target libraries in /lib64, /usr/lib64 etc., first. 46 # Similarly, look for 32 bit libraries in /lib32, /usr/lib32 etc. 47 case "$host":"$EMULATION_NAME" in 48 *le-*:*64lppc*) LIBPATH_SUFFIX=64 ;; 49 *le-*:*32lppc*) LIBPATH_SUFFIX=32 ;; 50 *le-*:*64*) LIBPATH_SUFFIX=64be ;; 51 *le-*:*32*) LIBPATH_SUFFIX=32be ;; 52 *:*64lppc*) LIBPATH_SUFFIX=64le ;; 53 *:*32lppc*) LIBPATH_SUFFIX=32le ;; 54 *:*64*) LIBPATH_SUFFIX=64 ;; 55 *:*32*) LIBPATH_SUFFIX=32 ;; 56 esac 57