From 3c5fce9bc29b216af7d10f8d6e4d8c3f11a48359 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Fri, 21 Apr 2017 12:00:55 -0700 Subject: Require --no-dynamic-linker with -static -E/--dynamic-list When -static -E/--dynamic-list are passed to linker, linker may create executable with dynamic sections which aren't supported by run-time. We require --no-dynamic-linker together with -static -E/--dynamic-list before adding dynamic symbol table to static executable. bfd/ PR ld/19617 PR ld/21086 * elflink.c (elf_link_add_object_symbols): Require --no-dynamic-linker with -E/--dynamic-list when creating dynamic sections. ld/ PR ld/19617 PR ld/21086 * testsuite/ld-elf/pr19617a.d: Pass --no-dynamic-linker to ld. * testsuite/ld-elf/pr19617b.d: Likewise. * testsuite/ld-elf/pr19617c.d: Likewise. *testsuite/ld-i386/pr19636-4d.d: Likewise. * testsuite/ld-elf/readelf.exp: Pass --no-dynamic-linker to ld with --export-dynamic. * testsuite/ld-elf/shared.exp: Pass --no-dynamic-linker to ld with -E. --- ld/testsuite/ld-elf/readelf.exp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'ld/testsuite/ld-elf/readelf.exp') diff --git a/ld/testsuite/ld-elf/readelf.exp b/ld/testsuite/ld-elf/readelf.exp index 92ca1c508a5..6831c191865 100644 --- a/ld/testsuite/ld-elf/readelf.exp +++ b/ld/testsuite/ld-elf/readelf.exp @@ -43,7 +43,7 @@ if [check_shared_lib_support] { run_ld_link_tests [list \ [list \ "readelf version information" \ - "$LFLAGS -e 0 --export-dynamic -T ver_def.ld\ + "$LFLAGS --no-dynamic-linker -e 0 --export-dynamic -T ver_def.ld\ --version-script=ver_def.ver" \ "" "" \ {ver_def.s} \ -- cgit v1.2.3-65-gdbad