From 9a580d9af6169d6b6e9f90abe70bebb26e912bb3 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Mon, 12 Feb 2001 00:21:59 +0000 Subject: 2001-02-11 H.J. Lu * config/default.exp: Set up gcc_gas_flag. * binutils-all/objcopy.exp (copy_setup): Process gcc_gas_flag for Linux only. * binutils-all/testprog.c: Include and don't use exit (). --- binutils/testsuite/ChangeLog | 10 ++++++++++ binutils/testsuite/binutils-all/objcopy.exp | 6 ++++++ binutils/testsuite/binutils-all/testprog.c | 5 +++-- binutils/testsuite/config/default.exp | 14 ++++++++++++++ 4 files changed, 33 insertions(+), 2 deletions(-) diff --git a/binutils/testsuite/ChangeLog b/binutils/testsuite/ChangeLog index 5f12ea7..ae14227 100644 --- a/binutils/testsuite/ChangeLog +++ b/binutils/testsuite/ChangeLog @@ -1,3 +1,13 @@ +2001-02-11 H.J. Lu + + * config/default.exp: Set up gcc_gas_flag. + + * binutils-all/objcopy.exp (copy_setup): Process gcc_gas_flag + for Linux only. + + * binutils-all/testprog.c: Include and don't use + exit (). + 2001-01-16 Matthew Green * binutils-all/readelf.s-64: Match readelf -S output. diff --git a/binutils/testsuite/binutils-all/objcopy.exp b/binutils/testsuite/binutils-all/objcopy.exp index 430b7fe..85a320b 100644 --- a/binutils/testsuite/binutils-all/objcopy.exp +++ b/binutils/testsuite/binutils-all/objcopy.exp @@ -398,6 +398,7 @@ strip_test_with_saving_a_symbol proc copy_setup { } { global srcdir global subdir + global gcc_gas_flag set res [build_wrapper testglue.o]; set flags { debug }; @@ -409,6 +410,11 @@ proc copy_setup { } { set add_libs ""; } + if { [istarget *-*-linux*] } { + foreach i $gcc_gas_flag { + set flags "additional_flags=$i $flags" + } + } if { [target_compile "$srcdir/$subdir/testprog.c $add_libs" tmpdir/testprog executable $flags] != "" } { return 2 } diff --git a/binutils/testsuite/binutils-all/testprog.c b/binutils/testsuite/binutils-all/testprog.c index c2b1856..57de461 100644 --- a/binutils/testsuite/binutils-all/testprog.c +++ b/binutils/testsuite/binutils-all/testprog.c @@ -1,6 +1,7 @@ /* This program is used to test objcopy and strip. */ #include +#include int common; int global = 1; @@ -22,9 +23,9 @@ main () || strcmp (string, "string") != 0) { printf ("failed\n"); - exit (1); + return (1); } printf ("ok\n"); - exit (0); + return (0); } diff --git a/binutils/testsuite/config/default.exp b/binutils/testsuite/config/default.exp index 2a2802e..6b0039a 100644 --- a/binutils/testsuite/config/default.exp +++ b/binutils/testsuite/config/default.exp @@ -70,6 +70,20 @@ if ![info exists READELFFLAGS] then { if ![file isdirectory tmpdir] {catch "exec mkdir tmpdir" status} +# Make a symlink from tmpdir/gas/as and tmpdir/gas/ld to the assembler +# and linker in the build tree, so that we can use a -B option to gcc +# to force it to use the newly built assembler/linker. +if {![file isdirectory tmpdir/gas]} then { + catch "exec mkdir tmpdir/gas" status + if {[file isfile ../gas/as-new]} then { + catch "exec ln -s ../../../gas/as-new tmpdir/gas/as" status + } + if {[file isfile ../ld/ld-new]} then { + catch "exec ln -s ../../../ld/ld-new tmpdir/gas/ld" status + } +} +set gcc_gas_flag "-B[pwd]/tmpdir/gas/" + # # binutils_run # run a program, returning the output -- cgit v1.1