[Top][All Lists]

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

Re: Autoconf 2.60a on UnixWare 7.1.4

From: Paul Eggert
Subject: Re: Autoconf 2.60a on UnixWare 7.1.4
Date: Mon, 11 Sep 2006 08:38:51 -0700
User-agent: Gnus/5.1008 (Gnus v5.10.8) Emacs/21.4 (gnu/linux)

Ralf Wildenhues <address@hidden> writes:

> here-documents.  Let's see: the problem occurs on line 256 of the
> generated config.status script, near byte 6524.  This part is completely
> generated from the first here-document that contains config.status; it's
> delimited by \_ACEOF (thus no variable expansion within).

If you look at the 'configure' script, the mishandled word starts at
byte offset 57342, i.e., the last two bytes of an 8 KiB input buffer.
And the first two bytes of the word are those that are mishandled --
they are duplicated from the first two bytes following the bad bytes.

So this very much looks like the same sort of problem that we already
know that ksh has with here-documents and variables.  He might try
uniformly replacing _ASEOF with FOOEOF (without making any other
changes) and see whether the word gets munged to OEOEOF.

If Autoconf were modified to never generate here-documents longer than
8 KiB, this would work around my hypothesized problem.  But that'd be
a real pain.  I think a better fix is to ask Tim Rice to get a working
shell on his platform.  For lack of better info, I installed this:

2006-09-11  Paul Eggert  <address@hidden>

        * doc/autoconf.texi (Here-Documents): Document bug in UnixWare
        7.1.4 /usr/bin/posix/sh described by Tim Rice in

--- doc/autoconf.texi   5 Sep 2006 23:27:54 -0000       1.1081
+++ doc/autoconf.texi   11 Sep 2006 15:37:27 -0000      1.1082
@@ -11103,6 +11103,10 @@ be worked around by omitting the braces:
 @samp{ksh93g} (1998-04-30) but as of 2006 many operating systems were
 still shipping older versions with the bug.
+The UnixWare 7.1.4 @command{/usr/bin/posix/sh} can mishandle words in
+here-documents that cross 8 KiB buffer boundaries.  The usual workaround
+for this bug is to use another shell.
 Many older shells (including the Bourne shell) implement here-documents
 inefficiently.  In particular, some shells can be extremely inefficient when
 a single statement contains many here-documents.  For instance if your

reply via email to

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