elf: Add PT_GNU_PROPERTY segment type
[external/binutils.git] / ld / emulparams / elf32ppc.sh
1 # If you change this file, please also look at files which source this one:
2 # elf32lppcnto.sh elf32lppc.sh elf32ppclinux.sh elf32ppcnto.sh
3 # elf32ppcsim.sh
4
5 . ${srcdir}/emulparams/elf32ppccommon.sh
6 . ${srcdir}/emulparams/plt_unwind.sh
7 # Yes, we want duplicate .got and .plt sections.  The linker chooses the
8 # appropriate one magically in ppc_after_open
9 DATA_GOT=
10 SDATA_GOT=
11 SEPARATE_GOTPLT=0
12 BSS_PLT=
13 GOT=".got          ${RELOCATING-0} : SPECIAL { *(.got) }"
14 GOTPLT=".plt          ${RELOCATING-0} : SPECIAL { *(.plt) }"
15 PLT=".plt          ${RELOCATING-0} : SPECIAL { *(.plt) }
16   .iplt         ${RELOCATING-0} : { *(.iplt) }"
17 OTHER_TEXT_SECTIONS="*(.glink)"
18 OTHER_GOT_RELOC_SECTIONS="
19   .rela.branch_lt       ${RELOCATING-0} : { *(.rela.branch_lt) }"
20 OTHER_RELRO_SECTIONS_2="
21   .branch_lt    ${RELOCATING-0} :${RELOCATING+ ALIGN(4)} { *(.branch_lt) }"
22 EXTRA_EM_FILE=ppc32elf
23 if grep -q 'ld_elf32_spu_emulation' ldemul-list.h; then
24 # crt1.o defines data_start and __data_start.  Keep them first.
25 # Next put all the .data.spehandle sections, with a trailing zero word.
26   DATA_START_SYMBOLS="${RELOCATING+*crt1.o(.data .data.* .gnu.linkonce.d.*)
27     PROVIDE (__spe_handle = .);
28     *(.data.spehandle)
29     . += 4 * (DEFINED (__spe_handle) || . != 0);}"
30 fi