diff options
-rw-r--r-- | gdb/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gdb/testsuite/lib/gdb.exp | 12 |
2 files changed, 15 insertions, 1 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index ddac7ca..1bb8743 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2009-04-22 Joseph Myers <joseph@codesourcery.com> + + * lib/gdb.exp (get_compiler_info): Use -E -o in remote-host case. + 2009-04-15 Tom Tromey <tromey@redhat.com> * gdb.base/charset.exp: Add regression test. diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp index 8b8e7c6..6f7c351 100644 --- a/gdb/testsuite/lib/gdb.exp +++ b/gdb/testsuite/lib/gdb.exp @@ -1539,7 +1539,17 @@ proc get_compiler_info {binfile args} { # Run $ifile through the right preprocessor. # Toggle gdb.log to keep the compiler output out of the log. log_file - set cppout [ gdb_compile "${ifile}" "" preprocess [list "$args" quiet] ] + if [is_remote host] { + # We have to use -E and -o together, despite the comments + # above, because of how DejaGnu handles remote host testing. + set ppout "$outdir/compiler.i" + gdb_compile "${ifile}" "$ppout" preprocess [list "$args" quiet] + set file [open $ppout r] + set cppout [read $file] + close $file + } else { + set cppout [ gdb_compile "${ifile}" "" preprocess [list "$args" quiet] ] + } log_file -a "$outdir/$tool.log" # Eval the output. |