bug-autoconf
[Top][All Lists]
Advanced

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

Re: autoconf-2.65 on UnixWare 7.1.4


From: Tim Rice
Subject: Re: autoconf-2.65 on UnixWare 7.1.4
Date: Tue, 12 Jan 2010 18:28:49 -0800 (PST)

Hi Ralf,

On Tue, 12 Jan 2010, Ralf Wildenhues wrote:

> * Tim Rice wrote on Tue, Jan 12, 2010 at 01:48:43AM CET:
> > On Mon, 11 Jan 2010, Ralf Wildenhues wrote:
> > [snip]
> > > > > 1. micro-suite.at:2: 1. pass: no trailing newline (micro-suite.at:2): 
> > > > > FAILED (micro-suite.at:3)
> > > > 127. autotest.at:397: 127. Binary output (autotest.at:397): FAILED 
> > > > (autotest.at:397)
> > > 
> > > Apparently your shell has a bug with output not ending in a newline: it
> > > appears that some string has not been suitably \0-terminated or so.
> > > 
> > > I'm not sure whether it is useful to let configure avoid such a shell,
> > > but you might want to try
> > >   make check TESTSUITEFLAGS='-v -d -x 127 CONFIG_SHELL=/bin/bash'
> > > instead of using /bin/ksh, to see whether that makes the test pass.
> > 
> > Unfortunatly these systems do not ship with a bash.
> 
> Do they ship with any shell that passes this test and is otherwise
> reasonable?

Unfortunatly we're already selecting the best (least tests fail) shell
that ships with the system.
/bin/sh will pass test 127 (and 226) but fails 123 133 134 and 211.

> > I have built one here and test 127 does pass with CONFIG_SHELL=/opt/bin/bash
> > so it looks like yet another ksh bug. Hopefully the UnixWare engineers
> > will find some time to work on my support call about the ksh bugs.
> 
> OK, so one suitable recommendation for users of this system is to
> install bash first.  Which bash version did you use, and does it pass
> all of its testsuite and does
>   make check TESTSUITEFLAGS=CONFIG_SHELL=/path/to/bash
> 
> pass all of Autoconf's test suite?
 
The bash I built back in 2006 was version 3.1.17(1)-release
With that we get testsuite: 74 211 failed
I started working on building bash-4.1 last night.
When I get that built, I'll see if it works any better.


> > > > 226. torture.at:1351: testing ...
> > > [...]
> > > > ./torture.at:1432: ./configure $configure_options INNERMOST=tsomrenni
> > > > 0a1,2
> > > > > ./config.status: line 500: syntax error at line 503: `<<' unmatched
> > > > > configure: error: ./configure failed for inner
> [...]
> > > > 226. torture.at:1351: 226. Deep Package (torture.at:1351): FAILED 
> > > > (torture.at:1432)
> > > 
> > > There seems to be some mismatch in here-document EOF marker handling, or
> > > some other shell bug lingering here; _ASBOX is used as EOF marker both
> > > for here-documents in configure, as well as for here-documents inside
> > > config.status whose text already appears in configure here-documents.
> > > Can you post
> > >   
> > > /usr/local/src/gnu/autoconf-2.65/tests/testsuite.dir/226/inner/config.status
> > > 
> > > please?
> > Sure.
> > I've attached the full config.status but the interesting part is here.
> 
> It seems you've attached the file after applying your proposed patch
> below.  Please attach the file for the original 2.65 code, unmodified
> (gzip'ed is probably best to avoid transmission mangling).  It is
> otherwise difficult to find out whether there might be another bug
> lingering like the 1024-byte boundary ${var} expansion problem seen with
> some older ksh versions.  Thanks.

Sorry about that. I thought my mail client had read in the attachment
before I went and tested the changes. 
Note to self: When using pine, postpone the message and then open again
before modifying any attached documents.
 
> > ......
> > exec 5>>config.log
> > {
> >   echo
> >   sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
> > ## Running $as_me. ##
> > iASBOX
> >   $as_echo "$ac_log"
> > } >&5
> > ......
> > 
> > I've seen this before back in autoconf-2.59.
> 
> At this very same spot only, or with other here-documents or other code
> lines as well?

I remember having problems with OpenSSH's configure back when we used
autoconf-2.59 to generate it.

> But what is the problem really?  Is it here-doc EOF markers used both in
> a shell script as well as in a here-doc in that shell script?  Or is it
> here-docs of a certain size, or with certain contents?  Without
> understanding that, we cannot know if the workaround is effective or
> we'll introduce another similar issue in 2.66.

I've also attached the config.status from autoconf-2.59 test 063 that
shows the problem.

I don't really know what the problem is. It seems to be if there are
here-doc within a here-doc in a shell script of a certain size
with certain contents.
I can add or subtract a space and get different results. Take the chunk 
......
exec 5>>config.log
{
  echo
  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
## Running $as_me. ##
_ASBOX
  $as_echo "$ac_log"
} >&5
......
of /usr/local/src/gnu/autoconf-2.65/tests/testsuite.dir/226/inner/configure.
If we "ksh configure" and "grep BOX config.status" we get
  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
iASBOX
remove a space before the echo and we get
  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
x"SBOX
remove another space (or add one to the original or add a blank line
above the original) and it works.

This seems too strange to to be able to figure out for future
versions (without testing the future version).
Until we get a good ksh for UnixWare, don't waste any more time on this one.

> 
> Cheers,
> Ralf

-- 
Tim Rice                                Multitalents    (707) 887-1469
address@hidden

Attachment: config.status.gz
Description: Binary data

Attachment: autoconf-2.59-test063-config.status.gz
Description: Binary data


reply via email to

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