autoconf-patches
[Top][All Lists]
Advanced

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

Re: testsuite failures with dash: 80 151


From: Eric Blake
Subject: Re: testsuite failures with dash: 80 151
Date: Thu, 27 Nov 2008 06:29:22 -0700
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.18) Gecko/20081105 Thunderbird/2.0.0.18 Mnenhy/0.7.5.666

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

According to Ralf Wildenhues on 11/27/2008 12:30 AM:
> 
> $ CONFIG_SHELL=/bin/dash /bin/dash ./testsuite 80 151
> 
> seems to consistently provoke both, while with
> $ /bin/dash ./testsuite 80 151

Well, the former is supposed to work, while the latter is in the gray area
(running the file with a different shell than /bin/sh without telling the
script that you are doing so via CONFIG_SHELL should work if the alternate
shell passes all of the required/suggested tests that /bin/sh passes, but
it certainly isn't the recommended approach).

> | ../../autoconf/tests/m4sh.at:1312: ./script
> | --- -   2008-11-27 08:21:54.342435560 +0100
> | +++ /tmp/autoconf/build/tests/testsuite.dir/at-groups/80/stdout      
> 2008-11-27 08:21:54.000000000 +0100
> | @@ -1,5 +1,3 @@
> | -script: hello from parent
> | -hello1 from child
> | -child: hello2 from child
> | -child: hello3 from child
> | +hello from parent
> | +SHELL=/bin/sh

Have you inspected testsuite.dir/080/{script,child} after this failure, to
see whether the script favored /bin/sh or dash in its prologue, based on
your settings of CONFIG_SHELL?

> | ../../autoconf/tests/m4sh.at:1318: sed 's,:[0-9][0-9]*:,:0:,' log
> | --- -   2008-11-27 08:27:21.183365446 +0100
> | +++ /tmp/autoconf/build/tests/testsuite.dir/at-groups/80/stdout      
> 2008-11-27 08:27:20.000000000 +0100
> | @@ -1,3 +1,3 @@
> |  script:0: hello from parent
> | -child:0: hello3 from child
> | +child:: hello3 from child

That one is probably a LINENO issue.  Since the parent script is supposed
to detect that dash lacks LINENO, then the parent should have been rerun
as script.lineno, which in turn should generate child with a hard-coded
number in the hello3 AS_MESSAGE in the child.  But maybe we've done
something wrong, where the child script gets a literal $LINENO instead of
a pre-expanded value, which then expands to an empty string and fails the
sed substitution in the testsuite.

> OK to apply?
> 
> Thanks,
> Ralf
> 
>       Fix a couple of test failures with dash.
>       * tests/autotest.at (AT_CHECK_AT_TITLE_CHAR): Normalize
>       exit status of `cd'.
>       * tests/m4sh.at (AS_MESSAGE_LOG_FD): Remove script before
>       regeneration, to avoid timing effects.

Yes, both of these are okay.

- --
Don't work too hard, make some time for fun as well!

Eric Blake             address@hidden
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkkuoLEACgkQ84KuGfSFAYAbhwCgz9JwLEY/2zfRrl1W6jHK9fRA
ubgAniRK86QH9Mv2uQxlwDdWYKwh8Bo7
=y/ME
-----END PGP SIGNATURE-----




reply via email to

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