Fix the creation of archives for Sparc Solaris2 targets by eliminating the support...
authorNick Clifton <nickc@redhat.com>
Wed, 9 Jun 2021 10:10:16 +0000 (11:10 +0100)
committerNick Clifton <nickc@redhat.com>
Wed, 9 Jun 2021 10:10:16 +0000 (11:10 +0100)
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.

bfd/ChangeLog
bfd/config.bfd
ld/ChangeLog
ld/testsuite/ld-sparc/sparc.exp

index d1192e3acc82ab2cd645a73e8806af3e106a68d0..d1a92dc594d086812360b77f31c838e0ff89eec2 100644 (file)
@@ -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.
index 9434fd6c7e43af7e8422762cee69bb07e52248bd..57b513c7c7313cc1734ad59a1413c02b4b809fe6 100644 (file)
@@ -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)
index 3c2aa269b2bc044b1975f1a3a09ec2851a28fa2a..7ae7613dc7724f2b38c98175cebd81081f302c04 100644 (file)
@@ -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
index 5621d077361bd2224a6164ea7e642421be601bbc..3b65779c07f74bd634fbbdc48dbab1d78db250fa 100644 (file)
@@ -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] } {