From: Nick Clifton Date: Fri, 16 Oct 2009 10:32:51 +0000 (+0000) Subject: * bootstrap.exp: Detect if plugins are enabled. Skip the static X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ed94852035eae25aaf396e9299cff8317cb3e589;p=binutils-gdb.git * bootstrap.exp: Detect if plugins are enabled. Skip the static link test and add -ldl to the remaining tests if they are. --- diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index 6ace2770d3a..a0387629476 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 96bd70684b3..ecc760a0d44 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"} {