binutils-gdb/ld/testsuite/ld-elf/note-3.t
Nick Clifton 894891db7f * elflink.c (_bfd_elf_link_create_dynamic_sections): If the
backend does not provide a function for creating dynamic sections
	then fail.
	(bfd_elf_final_link): Issue a warning message if a dynamic section
	has the SHT_NOTE type.
	(bfd_elf_final_link): Do not look for dynamic strings in a section
	that does not have the SHT_STRTAB type or the name .dynstr.
	* elf32-arm.c (elf32_arm_finish_dynamic_sections): Fail if the got
	section is not in the output binary.
	* elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Likewise.

	* ld-elf/elf.exp: Add test for linking a shared library with a
	broken linker script that marks dynamic sections as being notes.
	* ld-elf/note-3.s: New test source file.
	* ld-elf/note-3.t: New test linker script.
	* ld-elf/note-3.l: Expected output from the linker.
	* lib/ld-lib.exp (run_ld_link_tests): Improve description.
2011-06-10 14:04:25 +00:00

23 lines
483 B
Raku

PHDRS
{
text PT_LOAD FILEHDR PHDRS ;
note PT_NOTE;
}
SECTIONS
{
. = . + SIZEOF_HEADERS ;
.text : { *(.text) *(.rodata) } :text
.note : { *(.note) } :note :text
/* BUG: This linker script is broken here. It has not reset the
output segment for the following sections, so they are all
treated as notes... */
.hash : { *(.hash) }
.dynstr : { *(.dynstr) }
.dynsym : { *(.dynsym) }
.got.plt : { *(.got.plt) *(.igot.plt) }
/DISCARD/ : { *(*) }
}