Description: Fix ld-bootstrap testsuite when configured with --enable-plugins
authorMatthias Klose <doko@debian.org>
Sun, 2 Jan 2022 08:17:30 +0000 (08:17 +0000)
committerBastian Blank <waldi@debian.org>
Sun, 2 Jan 2022 08:17:30 +0000 (08:17 +0000)
Upstream status: proposed patch

Upstream status: proposed patch

Gbp-Pq: Name 131_ld_bootstrap_testsuite.patch

ld/testsuite/ld-bootstrap/bootstrap.exp

index b21b48ab20ed19307458fdefdf6188076b8ae8c7..99c0d75bc7a6aeba391cb5e941aa865d68b0ae3d 100644 (file)
@@ -50,6 +50,15 @@ if [check_plugin_api_available] {
     set plugins "yes"
 }
 
+remote_exec host "$nm --help" "" "/dev/null" "plugin-support"
+set tmp [file_contents "plugin-support"]
+regexp ".*\(--plugin\).*\n" $tmp foo plugins
+if [info exists plugins] then {
+    set plugins "yes"
+} else {
+    set plugins "no"
+}
+
 # Bootstrap ld.  First link the object files together using -r, in
 # order to test -r.  Then link the result into an executable, ld1, to
 # really test -r.  Use ld1 to link a fresh ld, ld2.  Use ld2 to link a
@@ -117,6 +126,11 @@ foreach flags $test_flags {
        continue
     }
 
+    if { $flags == "--static" && $plugins == "yes" } then {
+       untested $testname
+       continue
+    }
+
     # If we only have a shared libbfd, we probably can't run the
     # --static test.
     if { $flags == "--static" && ! [string match "*libbfd.a*" $BFDLIB] } then {
@@ -161,6 +175,10 @@ foreach flags $test_flags {
        }
     }
 
+    if { $plugins == "yes" } {
+       set extralibs "$extralibs -ldl"
+    }
+
     # On Irix 5, linking with --static only works if all the files are
     # compiled using -non_shared.
     if {"$flags" == "--static"} {