[PATCH v2] ld/testsuite: don't output to /dev/null

Clément Chigot chigot@adacore.com
Mon Feb 20 14:43:02 GMT 2023


Mingw doesn't have /dev/null and thus "-o /dev/null" will fail.
Currently, all the options are checked using this "-o /dev/null",
resulting in them being disabled on mingw hosts.
Fix that by outputting to a real file for all targets.

ld/ChangeLog:

	* testsuite/config/default.exp: Replace "-o /dev/null" by a
	file.
---
 ld/testsuite/config/default.exp | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/ld/testsuite/config/default.exp b/ld/testsuite/config/default.exp
index 257fd4ba985..1b568b6f8bb 100644
--- a/ld/testsuite/config/default.exp
+++ b/ld/testsuite/config/default.exp
@@ -383,6 +383,7 @@ proc compiler_supports { flag args } {
 	    append flags " [board_info [target_info name] ldflags]"
 	}
 	set fn "cs[pid].c"
+	set fno "cs[pid].exe"
 	set f [open $fn "w"]
 	if { [llength $args] > 0 } {
 	    puts $f [lindex $args 0]
@@ -391,7 +392,8 @@ proc compiler_supports { flag args } {
 	}
 	close $f
 	set rfn [remote_download host $fn]
-	set avail [run_host_cmd_yesno "$CC_FOR_TARGET" "$flags $flag $rfn -o /dev/null"]
+	set avail [run_host_cmd_yesno "$CC_FOR_TARGET" "$flags $flag $rfn -o $fno"]
+	file delete $fno
 	remote_file host delete $rfn
 	file delete $fn
 	return $avail
-- 
2.25.1



More information about the Binutils mailing list