From 1284e99a6ce362d342d6468e5caa39ddab574721 Mon Sep 17 00:00:00 2001 From: "Maciej W. Rozycki" Date: Tue, 27 Jun 2017 02:58:27 +0100 Subject: [PATCH] MIPS/LD/testsuite: mips-elf-flags: Use `remote_exec' to call `readelf' For ELF file header flag verification done in `good_combination' in the `mips-elf-flags.exp' test script the version of `readelf' built along with the rest of binutils has to be used rather than any such executable already present on the build system, so that flags recognized by the tool match those supported by LD being tested. Use `remote_exec' as elsewhere in the LD test framework and also with GAS and LD used here, getting and arranging for extra reporting of `readelf' calls included in test logs on this occasion as well. ld/ * testsuite/ld-mips-elf/mips-elf-flags.exp (good_combination): Use `remote_exec' to call `readelf'. Log the command issued. --- ld/ChangeLog | 5 +++++ ld/testsuite/ld-mips-elf/mips-elf-flags.exp | 9 +++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/ld/ChangeLog b/ld/ChangeLog index 0bc18760b50..529850d4599 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,8 @@ +2017-06-27 Maciej W. Rozycki + + * testsuite/ld-mips-elf/mips-elf-flags.exp (good_combination): + Use `remote_exec' to call `readelf'. Log the command issued. + 2017-06-27 Maciej W. Rozycki * testsuite/ld-mips-elf/mips-elf-flags.exp (good_combination): diff --git a/ld/testsuite/ld-mips-elf/mips-elf-flags.exp b/ld/testsuite/ld-mips-elf/mips-elf-flags.exp index cea2774b52a..9461cb600e3 100644 --- a/ld/testsuite/ld-mips-elf/mips-elf-flags.exp +++ b/ld/testsuite/ld-mips-elf/mips-elf-flags.exp @@ -70,8 +70,13 @@ proc good_combination {arglist flags} { } elseif {![ld_link "$ld $ldemul" $finalobj "-r $objs"]} { fail $testname } else { - catch "exec $READELF -h $finalobj" output - if {![regexp "Flags: *(\[^\n\]*)" $output full gotflags]} { + set cmd "$READELF -h $finalobj" + send_log "$cmd\n" + set cmdret [remote_exec host [concat sh -c [list "$cmd 2>&1"]]] + set output [lindex $cmdret 1] + set cmdret [lindex $cmdret 0] + if {$cmdret != 0 \ + || ![regexp "Flags: *(\[^\n\r\]*)" $output full gotflags]} { unresolved $testname } else { set failed 0 -- 2.30.2