From ed94852035eae25aaf396e9299cff8317cb3e589 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Fri, 16 Oct 2009 10:32:51 +0000 Subject: [PATCH] * bootstrap.exp: Detect if plugins are enabled. Skip the static link test and add -ldl to the remaining tests if they are. --- ld/testsuite/ChangeLog | 5 +++++ ld/testsuite/ld-bootstrap/bootstrap.exp | 24 +++++++++++++++++++++++- 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index 6ace277..a038762 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2009-10-16 Rafael Avila de Espindola + + * bootstrap.exp: Detect if plugins are enabled. Skip the static + link test and add -ldl to the remaining tests if they are. + 2009-10-14 Joseph Myers * ld-scripts/phdrs3.d: Allow colon in name of linker binary. diff --git a/ld/testsuite/ld-bootstrap/bootstrap.exp b/ld/testsuite/ld-bootstrap/bootstrap.exp index 96bd706..ecc760a 100644 --- a/ld/testsuite/ld-bootstrap/bootstrap.exp +++ b/ld/testsuite/ld-bootstrap/bootstrap.exp @@ -30,6 +30,16 @@ if ![isnative] { return } +# Determine if plugin support is present. +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 @@ -61,8 +71,15 @@ foreach flags {"" "strip" "--static" "--traditional-format" continue } + # Plugin support requires linking with a dynamic library which + # means that these + if { $flags == "--static" && $plugins == "yes" } then { + untested $testname + continue + } + # If we only have a shared libbfd, we probably can't run the - # --static test. + # --static test.will fail. if { $flags == "--static" && ! [string match "*libbfd.a*" $BFDLIB] } then { untested $testname continue @@ -91,6 +108,11 @@ foreach flags {"" "strip" "--static" "--traditional-format" } } + # Plugin support requires linking with libdl. + 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"} { -- 2.7.4