[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: proposed patch for "Tests failed with LINENO." Autoconf bug
From: |
Akim Demaille |
Subject: |
Re: proposed patch for "Tests failed with LINENO." Autoconf bug |
Date: |
26 Oct 2001 12:30:51 +0200 |
User-agent: |
Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Artificial Intelligence) |
>>>>> "Paul" == Paul Eggert <address@hidden> writes:
Paul> I verified that my bug does not occur if I use 5.005_03 instead
Paul> of 5.005_02. So requiring Perl 5.005_03 or later seems like a
Paul> good idea. Is that easy to do?
Yep:
| % perl -e 'require 5.005_03;' nostromo 12:07
| % perl --version nostromo 12:25
|
| This is perl, v5.6.1 built for i386-linux
|
| Copyright 1987-2001, Larry Wall
|
| Perl may be copied only under the terms of either the Artistic License or the
| GNU General Public License, which may be found in the Perl 5 source kit.
|
| Complete documentation for Perl, including FAQ lists, should be found on
| this system using `man perl' or `perldoc perl'. If you have access to the
| Internet, point your browser at http://www.perl.com/, the Perl Home Page.
|
| % perl -e 'require 5.006_03;' nostromo 12:25
| Perl v5.6.30 required--this is only v5.6.1, stopped at -e line 1.
configure.ac needs to be adjusted (and in fact lib/Autom4te/General.pm
should have it too). I found the message from Gary, the problem he
had was with 5.005_03:
| From: "Gary V. Vaughan" <address@hidden>
| Subject: IO::File with perl 5.005_03
| To: address@hidden
| X-Sent: 6 weeks, 3 days, 9 hours, 18 minutes, 9 seconds ago
|
| $ cd ~/devel/savannah/libtool-1-4/libltdl
| $ automake
| Can't call method "close" on an undefined value at
| /usr/local/bin/automake line 7751.
| $ automake --version
| automake (GNU automake) 1.5
| Written by Tom Tromey <address@hidden>.
|
| Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
| Free Software Foundation, Inc.
| This is free software; see the source for copying conditions. There is NO
| warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
| $ cat -n /usr/local/bin/automake | sed '7745,7752p;d'
| 7745 # Ensure a file exists.
| 7746 sub create
| 7747 {
| 7748 my ($file) = @_;
| 7749
| 7750 my $touch = new IO::File (">> $file");
| 7751 $touch->close;
| 7752 }
| $ sed '7750s/(">> \$file")/"$file", O_APPEND/' /usr/local/bin/automake > arse
| $ chmod +x arse
| $ sudo cp -f arse /usr/local/bin/automake
| $ automake
|
| I have no idea why this works, and the original doesn't. I simply
| copied one of the examples from the IO::File perldocs which seems to
| fix it for me.
|
| Cheers,
| Gary.
But since Gary provides a workaround, that shouldn't matter.
Paul> I also verified that pascal.bart's bug does not occur if I
Paul> install Bash 2.04 as /bin/bash (which causes CONFIG_SHELL to
Paul> equal /bin/bash rather than /bin/ksh). So this seems to be a
Paul> compatibility issue with Solaris 2.5.1 /bin/ksh.
Paul> I looked into the problem a bit more, and traced it down to two
Paul> different bugs:
Paul> 1. The awk solution that substitutes $LINENO does not work for
Paul> the "testsuite" command. Some occurrences of the string
Paul> "$LINENO" in "testsuite" should not be substituted for, because
Paul> "testsuite" wants the string to not be evaluated by "testsuite"
Paul> itself, but by a subsidiary process.
Eeek :(
Paul> 2. The LINENO test in "testsuite" is too stringent; it rejects
Paul> Solaris 2.5.1 /bin/ksh even though /bin/ksh has adequate LINENO
Paul> support. The problem is that Solaris 2.5.1 /bin/ksh does not
Paul> increment $LINENO inside an eval'ed string. But Autoconf does
Paul> not rely on that particular feature (nor is it clear to me that
Paul> the 2.5.1 behavior is incorrect, and frankly I'm puzzled that we
Paul> haven't run into this problem elsewhere). Anyway, we shouldn't
Paul> test for it.
Very much agreed, that was not meant.
Paul> Here is a patch for (2); it fixes pascal.bart's bug for me on
Paul> Solaris 2.5.1, and "make check" succeeds cleanly.
Thanks a lot Paul. If you have some spare time to add information to
the documentation...
Paul> (As you know, I'm dubious about the 'awk' approach because I
Paul> think we'll keep running into problems with it, but please feel
Paul> free to fix (1) if you like. :-)
:)
I'll fix that, thanks!
- proposed patch for "Tests failed with LINENO." Autoconf bug, Paul Eggert, 2001/10/25
- Re: proposed patch for "Tests failed with LINENO." Autoconf bug, Paul Eggert, 2001/10/25
- Re: proposed patch for "Tests failed with LINENO." Autoconf bug,
Akim Demaille <=
- Re: proposed patch for "Tests failed with LINENO." Autoconf bug, Paul Eggert, 2001/10/26
- Re: proposed patch for "Tests failed with LINENO." Autoconf bug, Raja R Harinath, 2001/10/27
- Re: proposed patch for "Tests failed with LINENO." Autoconf bug, Paul Eggert, 2001/10/28
- Re: proposed patch for "Tests failed with LINENO." Autoconf bug, Akim Demaille, 2001/10/30
- Re: proposed patch for "Tests failed with LINENO." Autoconf bug, Paul Eggert, 2001/10/30
- Re: proposed patch for "Tests failed with LINENO." Autoconf bug, Akim Demaille, 2001/10/31
- Re: proposed patch for "Tests failed with LINENO." Autoconf bug, Paul Eggert, 2001/10/31
- Re: proposed patch for "Tests failed with LINENO." Autoconf bug, Akim Demaille, 2001/10/31
- proposed Autoconf patch so that "configure" need not use Awk, Paul Eggert, 2001/10/31
- Re: proposed Autoconf patch so that "configure" need not use Awk, Akim Demaille, 2001/10/31