Browse Source

Fix the creation of archives for Sparc Solaris2 targets by eliminating the support for generic SPARC ELF files.

PR 27666
bfd	* config.bfd: Do not add the sparc_elf32_vec or sparc_elf64_vec
	vectors to Sparc Solaris2 targets.

ld	* testsuite/ld-sparc/sparc.exp: Do not run the sparctests or
	sparc64tests for Solaris2 targets.
binutils-2_37-branch
Nick Clifton 5 years ago
parent
commit
f75bcf7e57
  1. 6
      bfd/ChangeLog
  2. 5
      bfd/config.bfd
  3. 6
      ld/ChangeLog
  4. 19
      ld/testsuite/ld-sparc/sparc.exp

6
bfd/ChangeLog

@ -1,3 +1,9 @@
2021-06-09 Nick Clifton <nickc@redhat.com>
PR 27666
* config.bfd: Do not add the sparc_elf32_vec or sparc_elf64_vec
vectors to Sparc Solaris2 targets.
2021-06-08 Michael Matz <matz@suse.de>
* elf.c (bfd_section_from_shdr): Set has_secondary_relocs flag.

5
bfd/config.bfd

@ -1279,13 +1279,14 @@ case "${targ}" in
;;
sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*)
# PR 27666: Do not include sparc_elf32_vec here.
targ_defvec=sparc_elf32_sol2_vec
targ_selvecs=sparc_elf32_vec
;;
#ifdef BFD64
sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*)
# PR 27666: Do not include sparc_elf32_vec or sparc_elf64_vec here.
targ_defvec=sparc_elf32_sol2_vec
targ_selvecs="sparc_elf64_sol2_vec sparc_elf32_vec sparc_elf64_vec"
targ_selvecs="sparc_elf64_sol2_vec"
want64=true
;;
sparc64-*-freebsd* | sparc64-*-kfreebsd*-gnu)

6
ld/ChangeLog

@ -1,3 +1,9 @@
2021-06-09 Nick Clifton <nickc@redhat.com>
PR 27666
* testsuite/ld-sparc/sparc.exp: Do not run the sparctests or
sparc64tests for Solaris2 targets.
2021-06-03 Alan Modra <amodra@gmail.com>
PR 2589

19
ld/testsuite/ld-sparc/sparc.exp

@ -142,14 +142,19 @@ set sparc64tests {
"libgotop64.so"}
}
if { ![istarget "sparc64-*-elf*"] } {
run_ld_link_tests $sparctests
}
# The solaris2 targets do not support the generic SPARC ELF targets,
# ie -melf32_sparc and -melf64_sparc, so we skip the next set of
# tests for them. Support could be added, but this then breaks the
# creation of archives for those targets. See PR 27666 for more
# details.
if { ![istarget "*-*-solaris2*"] } {
if { ![istarget "sparc64-*-elf*"] } {
run_ld_link_tests $sparctests
}
if { !([istarget "sparc-*-elf*"]
|| [istarget "sparc-sun-solaris2.5*"]
|| [istarget "sparc-sun-solaris2.6"]) } {
run_ld_link_tests $sparc64tests
if { ![istarget "sparc-*-elf*"] } {
run_ld_link_tests $sparc64tests
}
}
if { [istarget "sparc*-*-linux*"] && [isnative] } {

Loading…
Cancel
Save