Patchwork [build] PR bootstrap/44621: fix unportable shell quoting

login
register
mail settings
Submitter Ralf Wildenhues
Date Sept. 26, 2010, 1:15 p.m.
Message ID <20100926131538.GY17516@gmx.de>
Download mbox | patch
Permalink /patch/65781/
State New
Headers show

Comments

Ralf Wildenhues - Sept. 26, 2010, 1:15 p.m.
This fixes known portability issues with nested double- and backquotes
in the configury code and helper scripts.  Close to obvious, I'd say,
but I'd like an OK for trunk, and backporting of the configure-related
bits to 4.5 and 4.4 (when respective branches are open for regression
fixes of course).

The config/po.m4 resp. intl/configure change has been fixed upstream.

Thanks,
Ralf

Fix unportable shell quoting.

ChangeLog:
2010-06-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	PR bootstrap/44621
	* configure.ac: Fix unportable shell quoting.
	* configure: Regenerate.

config/ChangeLog:
2010-06-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* po.m4 (AM_PO_SUBDIRS): Fix unportable shell quoting.

contrib/reghunt/ChangeLog:
2010-06-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* bin/gcc-svn-ids: Fix unportable shell quoting.
	* date_based/reg_periodic: Likewise.
	* date_based/reg_search: Likewise.

intl/ChangeLog:
2010-06-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	PR bootstrap/44621
	* configure: Regenerate.
Richard Guenther - Sept. 27, 2010, 9:43 a.m.
On Sun, Sep 26, 2010 at 3:15 PM, Ralf Wildenhues <Ralf.Wildenhues@gmx.de> wrote:
> This fixes known portability issues with nested double- and backquotes
> in the configury code and helper scripts.  Close to obvious, I'd say,
> but I'd like an OK for trunk, and backporting of the configure-related
> bits to 4.5 and 4.4 (when respective branches are open for regression
> fixes of course).
>
> The config/po.m4 resp. intl/configure change has been fixed upstream.

Ok.

Richard.

> Thanks,
> Ralf
>
> Fix unportable shell quoting.
>
> ChangeLog:
> 2010-06-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
>
>        PR bootstrap/44621
>        * configure.ac: Fix unportable shell quoting.
>        * configure: Regenerate.
>
> config/ChangeLog:
> 2010-06-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
>
>        * po.m4 (AM_PO_SUBDIRS): Fix unportable shell quoting.
>
> contrib/reghunt/ChangeLog:
> 2010-06-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
>
>        * bin/gcc-svn-ids: Fix unportable shell quoting.
>        * date_based/reg_periodic: Likewise.
>        * date_based/reg_search: Likewise.
>
> intl/ChangeLog:
> 2010-06-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
>
>        PR bootstrap/44621
>        * configure: Regenerate.
>
> diff --git a/config/po.m4 b/config/po.m4
> index 861e3de..2edd5a7 100644
> --- a/config/po.m4
> +++ b/config/po.m4
> @@ -96,7 +96,7 @@ AC_DEFUN([AM_PO_SUBDIRS],
>       case "$ac_file" in */Makefile.in)
>         # Adjust a relative srcdir.
>         ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
> -        ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
> +        ac_dir_suffix=/`echo "$ac_dir"|sed 's%^\./%%'`
>         ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
>         # In autoconf-2.13 it is called $ac_given_srcdir.
>         # In autoconf-2.50 it is called $srcdir.
> diff --git a/configure.ac b/configure.ac
> index 67e79fe..ee7bfb3 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -351,7 +351,7 @@ ENABLE_GOLD=no)
>             configdirs="$configdirs gold"
>            ;;
>          *)
> -            configdirs="`echo " ${configdirs} " | sed -e 's/ ld / gold /'`"
> +            configdirs=`echo " ${configdirs} " | sed -e 's/ ld / gold /'`
>            ;;
>          esac
>          ENABLE_GOLD=yes
> diff --git a/contrib/reghunt/bin/gcc-svn-ids b/contrib/reghunt/bin/gcc-svn-ids
> index 98602cc..2953e56 100755
> --- a/contrib/reghunt/bin/gcc-svn-ids
> +++ b/contrib/reghunt/bin/gcc-svn-ids
> @@ -63,8 +63,8 @@ fi
>  ID="$1"
>
>  case ${FROM_KIND} in
> -index)  LINE="`awk -F '|' -v id="${ID}" '{if ($1 == id) print }' < ${LIST}`";;
> -rev)    LINE="`awk -F '|' -v id="${ID}" '{if ($2 == id) print }' < ${LIST}`";;
> +index)  LINE=`awk -F '|' -v id="${ID}" '{if ($1 == id) print }' < ${LIST}`;;
> +rev)    LINE=`awk -F '|' -v id="${ID}" '{if ($2 == id) print }' < ${LIST}`;;
>  *)      errmsg "unrecognized FROM kind: ${FROM_KIND}";
>         usage;;
>  esac
> diff --git a/contrib/reghunt/date_based/reg_periodic b/contrib/reghunt/date_based/reg_periodic
> index 498e6dc..a77567d 100755
> --- a/contrib/reghunt/date_based/reg_periodic
> +++ b/contrib/reghunt/date_based/reg_periodic
> @@ -25,7 +25,7 @@
>  #               is STOP in the current directory.
>  #
>  #
> -# Copyright (c) 2002, 2003, 2005, 2009 Free Software Foundation, Inc.
> +# Copyright (c) 2002, 2003, 2005, 2009, 2010 Free Software Foundation, Inc.
>  #
>  # This file is free software; you can redistribute it and/or modify
>  # it under the terms of the GNU General Public License as published by
> @@ -70,7 +70,7 @@ error() {
>  # control tools and report to the user.
>
>  make_date() {
> -  MADE_DATE="`${DATE} -u +\"%Y-%m-%d %H:%M %Z\" --date \"1970-01-01 ${1} seconds\"`" \
> +  MADE_DATE=`${DATE} -u +"%Y-%m-%d %H:%M %Z" --date "1970-01-01 ${1} seconds"` \
>     || error "make_date: date command failed"
>  }
>
> diff --git a/contrib/reghunt/date_based/reg_search b/contrib/reghunt/date_based/reg_search
> index 75cb214..4660205 100755
> --- a/contrib/reghunt/date_based/reg_search
> +++ b/contrib/reghunt/date_based/reg_search
> @@ -45,7 +45,7 @@
>  #
>  #
>  #
> -# Copyright (c) 2002, 2003, 2005, 2009 Free Software Foundation, Inc.
> +# Copyright (c) 2002, 2003, 2005, 2009, 2010 Free Software Foundation, Inc.
>  #
>  # This file is free software; you can redistribute it and/or modify
>  # it under the terms of the GNU General Public License as published by
> @@ -96,7 +96,7 @@ error() {
>  # control tools and report to the user.
>
>  make_date() {
> -  MADE_DATE="`${DATE} -u +\"%Y-%m-%d %H:%M %Z\" --date \"1970-01-01 ${1} seconds\"`" \
> +  MADE_DATE=`${DATE} -u +"%Y-%m-%d %H:%M %Z" --date "1970-01-01 ${1} seconds"` \
>     || error "make_date: date command failed"
>  }
>
>

Patch

diff --git a/config/po.m4 b/config/po.m4
index 861e3de..2edd5a7 100644
--- a/config/po.m4
+++ b/config/po.m4
@@ -96,7 +96,7 @@  AC_DEFUN([AM_PO_SUBDIRS],
       case "$ac_file" in */Makefile.in)
         # Adjust a relative srcdir.
         ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
-        ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
+        ac_dir_suffix=/`echo "$ac_dir"|sed 's%^\./%%'`
         ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
         # In autoconf-2.13 it is called $ac_given_srcdir.
         # In autoconf-2.50 it is called $srcdir.
diff --git a/configure.ac b/configure.ac
index 67e79fe..ee7bfb3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -351,7 +351,7 @@  ENABLE_GOLD=no)
             configdirs="$configdirs gold"
 	    ;;
 	  *)
-            configdirs="`echo " ${configdirs} " | sed -e 's/ ld / gold /'`"
+            configdirs=`echo " ${configdirs} " | sed -e 's/ ld / gold /'`
 	    ;;
 	  esac
 	  ENABLE_GOLD=yes
diff --git a/contrib/reghunt/bin/gcc-svn-ids b/contrib/reghunt/bin/gcc-svn-ids
index 98602cc..2953e56 100755
--- a/contrib/reghunt/bin/gcc-svn-ids
+++ b/contrib/reghunt/bin/gcc-svn-ids
@@ -63,8 +63,8 @@  fi
 ID="$1"
 
 case ${FROM_KIND} in
-index)  LINE="`awk -F '|' -v id="${ID}" '{if ($1 == id) print }' < ${LIST}`";;
-rev)    LINE="`awk -F '|' -v id="${ID}" '{if ($2 == id) print }' < ${LIST}`";;
+index)  LINE=`awk -F '|' -v id="${ID}" '{if ($1 == id) print }' < ${LIST}`;;
+rev)    LINE=`awk -F '|' -v id="${ID}" '{if ($2 == id) print }' < ${LIST}`;;
 *)      errmsg "unrecognized FROM kind: ${FROM_KIND}";
         usage;;
 esac
diff --git a/contrib/reghunt/date_based/reg_periodic b/contrib/reghunt/date_based/reg_periodic
index 498e6dc..a77567d 100755
--- a/contrib/reghunt/date_based/reg_periodic
+++ b/contrib/reghunt/date_based/reg_periodic
@@ -25,7 +25,7 @@ 
 #               is STOP in the current directory.
 #
 #
-# Copyright (c) 2002, 2003, 2005, 2009 Free Software Foundation, Inc.
+# Copyright (c) 2002, 2003, 2005, 2009, 2010 Free Software Foundation, Inc.
 #
 # This file is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -70,7 +70,7 @@  error() {
 # control tools and report to the user.
 
 make_date() {
-  MADE_DATE="`${DATE} -u +\"%Y-%m-%d %H:%M %Z\" --date \"1970-01-01 ${1} seconds\"`" \
+  MADE_DATE=`${DATE} -u +"%Y-%m-%d %H:%M %Z" --date "1970-01-01 ${1} seconds"` \
     || error "make_date: date command failed"
 }
 
diff --git a/contrib/reghunt/date_based/reg_search b/contrib/reghunt/date_based/reg_search
index 75cb214..4660205 100755
--- a/contrib/reghunt/date_based/reg_search
+++ b/contrib/reghunt/date_based/reg_search
@@ -45,7 +45,7 @@ 
 #
 #
 #
-# Copyright (c) 2002, 2003, 2005, 2009 Free Software Foundation, Inc.
+# Copyright (c) 2002, 2003, 2005, 2009, 2010 Free Software Foundation, Inc.
 #
 # This file is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -96,7 +96,7 @@  error() {
 # control tools and report to the user.
 
 make_date() {
-  MADE_DATE="`${DATE} -u +\"%Y-%m-%d %H:%M %Z\" --date \"1970-01-01 ${1} seconds\"`" \
+  MADE_DATE=`${DATE} -u +"%Y-%m-%d %H:%M %Z" --date "1970-01-01 ${1} seconds"` \
     || error "make_date: date command failed"
 }