"tail +140" no longer works.

Alan Modra amodra@bigpond.net.au
Tue Mar 17 05:34:00 GMT 2009


On Mon, Mar 16, 2009 at 11:18:12PM +0000, Dave Korn wrote:
>   Verified on Cygwin, thanks for the patch!

Committed with a small change.  The concat wasn't really necessary.

While poking in this area I found another problem.  ld/Makefile uses
HOSTING_LIBS and HOSTING_CRT to perform a ld bootstrap.  This hasn't
worked for a very long time.

ld/
	* configure.host (HOSTING_LIBS): Two dollars on shell variable
	expansion to suit make.
ld/testsuite
	* config/default.exp (get_link_files): Replace double dollars with
	single dollars.

Index: ld/configure.host
===================================================================
RCS file: /cvs/src/src/ld/configure.host,v
retrieving revision 1.46
diff -u -p -r1.46 configure.host
--- ld/configure.host	28 Aug 2007 11:02:55 -0000	1.46
+++ ld/configure.host	17 Mar 2009 05:01:44 -0000
@@ -10,7 +10,7 @@
 
 HDEFINES=
 HOSTING_CRT0=/lib/crt0.o
-HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ]; then libgcc=../gcc/libgcc.a; else libgcc=\`${CC} -print-libgcc-file-name\`; fi; if [ -f ../gcc/libgcc_eh.a ]; then libgcc="$libgcc ../gcc/libgcc_eh.a"; else libgcc_eh=\`${CC} -print-file-name=libgcc_eh.a\`; if [ x"$libgcc_eh" != xlibgcc_eh.a ]; then libgcc="$libgcc $libgcc_eh"; fi; fi; if [ -f ../gcc/libunwind.a ]; then libgcc="$libgcc ../gcc/libunwind.a"; else libunwind=\`${CC} -print-file-name=libunwind.a\`; if [ x"$libunwind" != xlibunwind.a ]; then libgcc="$libgcc $libunwind"; fi; fi; echo --start-group $libgcc -lc --end-group`'
+HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ]; then libgcc=../gcc/libgcc.a; else libgcc=\`${CC} -print-libgcc-file-name\`; fi; if [ -f ../gcc/libgcc_eh.a ]; then libgcc="$$libgcc ../gcc/libgcc_eh.a"; else libgcc_eh=\`${CC} -print-file-name=libgcc_eh.a\`; if [ x"$$libgcc_eh" != xlibgcc_eh.a ]; then libgcc="$$libgcc $$libgcc_eh"; fi; fi; if [ -f ../gcc/libunwind.a ]; then libgcc="$$libgcc ../gcc/libunwind.a"; else libunwind=\`${CC} -print-file-name=libunwind.a\`; if [ x"$$libunwind" != xlibunwind.a ]; then libgcc="$$libgcc $$libunwind"; fi; fi; echo --start-group $$libgcc -lc --end-group`'
 
 #
 #	Generic configurations:
Index: ld/testsuite/config/default.exp
===================================================================
RCS file: /cvs/src/src/ld/testsuite/config/default.exp,v
retrieving revision 1.13
diff -u -p -r1.13 default.exp
--- ld/testsuite/config/default.exp	28 Aug 2007 13:21:57 -0000	1.13
+++ ld/testsuite/config/default.exp	17 Mar 2009 05:01:45 -0000
@@ -115,9 +115,17 @@ proc get_link_files {varname} {
     global srcdir
     global CC
     if ![info exists $varname] {
-	set status [catch "exec sh -c \"host='$target_triplet' && CC='$CC' && . $srcdir/../configure.host && eval echo \\$$varname\"" result]
+	#configure.host returns variables that can be substituted into
+	#makefile rules, with embedded shell variable expansions.
+	#make wants $$shell_var, we want $shell_var ...
+	set cmd "host='$target_triplet' && . $srcdir/../configure.host && sed -e 's,\\\$\\\$,\$,g' <<EOF\n\$$varname\nEOF"
+	set status [catch "exec sh -c [list $cmd]" result]
+	if $status { error "Error getting native link files: $result" }
+	set cmd "CC='$CC' && eval echo \"$result\""
+	set status [catch "exec sh -c [list $cmd]" result]
 	if $status { error "Error getting native link files: $result" }
 	set $varname $result
+	send_log "$varname = $result\n"
     }
 }
 

-- 
Alan Modra
Australia Development Lab, IBM



More information about the Binutils mailing list