autoconf-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Fix escaping of \ inside here-documents


From: Ralf Wildenhues
Subject: Fix escaping of \ inside here-documents
Date: Sun, 21 Oct 2007 21:29:08 +0200
User-agent: Mutt/1.5.16 (2007-10-11)

The manual already states
| Don't rely on `\' being preserved just because it has no special
| meaning together with the next symbol.  In the native `sh' on OpenBSD
| 2.7 `\"' expands to `"' in here-documents with unquoted delimiter.  As
| a general rule, if `\\' expands to `\' use `\\' to get `\'.

but I still got bitten by it on Tru64 4.0D which fails a few tests
without this patch.  Pushed.  Enough bugfixing for today.

Cheers,
Ralf

2007-10-21  Ralf Wildenhues  <address@hidden>

        Fix config status generation with Tru64 ksh.
        * lib/autoconf/status.m4 (_AC_OUTPUT_FILES_PREPARE): Fix
        escaping of backslash in here-documents.

diff --git a/lib/autoconf/status.m4 b/lib/autoconf/status.m4
index e7de715..350d370 100644
--- a/lib/autoconf/status.m4
+++ b/lib/autoconf/status.m4
@@ -387,7 +387,7 @@ m4_ifdef([_AC_SUBST_FILES],
 [# Create commands to substitute file output variables.
 {
   echo "cat >>$CONFIG_STATUS <<_ACEOF"
-  echo 'cat >>"\$tmp/subs1.awk" <<\_ACAWK'
+  echo 'cat >>"\$tmp/subs1.awk" <<\\_ACAWK'
   echo "$ac_subst_files" | sed 's/.*/F@<:@"&"@:>@="$&"/'
   echo "_ACAWK"
   echo "_ACEOF"
@@ -444,7 +444,7 @@ dnl - Writing `$ 0' prevents expansion by both the shell 
and m4 here.
 dnl
 dnl m4-double-quote most of the scripting for readability.
 [cat >>$CONFIG_STATUS <<_ACEOF
-cat >>"\$tmp/subs1.awk" <<\_ACAWK
+cat >>"\$tmp/subs1.awk" <<\\_ACAWK
 _ACEOF
 sed -n '
 h




reply via email to

[Prev in Thread] Current Thread [Next in Thread]