[PATCH] configure.ac: Also quote '$' in tbaseargs

Maciej W. Rozycki macro@codesourcery.com
Tue May 1 20:17:00 GMT 2012


Hi,

 While working on some GDB changes I have stumbled across this, which 
looks like a buglet in the top-level configure.  Perhaps a three-way merge 
error from the past.  Unfortunately there is nothing in ChangeLog that 
would indicate when these bits were introduced.

 We have these two variables, $baseargs and $tbaseargs, that we handle 
almost identically, except some bits are omitted from $tbaseargs only, 
based on $skip_targ.  However, at the point we decide to quote '$' in any 
of the options collected we only do so for $baseargs.  As a result, '$' 
won't be escaped correctly in $tbaseargs and will break in sub-makes used 
for the target.  Have I missed anything?

 If not, then here's an obvious fix.  Found by inspection, I don't have a 
test case handy.  OK to apply?

2012-05-01  Maciej W. Rozycki  <macro@codesourcery.com>

	* configure.ac: Also quote '$' in tbaseargs.
	* configure: Regenerate.

  Maciej

gcc-ac-fix.diff
Index: gcc-fsf-trunk-quilt/configure
===================================================================
--- gcc-fsf-trunk-quilt.orig/configure	2012-05-01 20:44:33.995609891 +0100
+++ gcc-fsf-trunk-quilt/configure	2012-05-01 20:52:00.345564017 +0100
@@ -7267,6 +7267,7 @@ done
 # Remove the initial space we just introduced and, as these will be
 # expanded by make, quote '$'.
 baseargs=`echo "x$baseargs" | sed -e 's/^x *//' -e 's,\\$,$$,g'`
+tbaseargs=`echo "x$tbaseargs" | sed -e 's/^x *//' -e 's,\\$,$$,g'`
 
 # Add in --program-transform-name, after --program-prefix and
 # --program-suffix have been applied to it.  Autoconf has already
Index: gcc-fsf-trunk-quilt/configure.ac
===================================================================
--- gcc-fsf-trunk-quilt.orig/configure.ac	2012-05-01 20:44:33.995609891 +0100
+++ gcc-fsf-trunk-quilt/configure.ac	2012-05-01 20:52:00.345564017 +0100
@@ -2721,6 +2721,7 @@ done
 # Remove the initial space we just introduced and, as these will be
 # expanded by make, quote '$'.
 baseargs=`echo "x$baseargs" | sed -e 's/^x *//' -e 's,\\$,$$,g'`
+tbaseargs=`echo "x$tbaseargs" | sed -e 's/^x *//' -e 's,\\$,$$,g'`
 
 # Add in --program-transform-name, after --program-prefix and
 # --program-suffix have been applied to it.  Autoconf has already



More information about the Binutils mailing list