This is the mail archive of the
automake@gnu.org
mailing list for the automake project.
Re: automake and 'strict' Perl5
Tom Tromey wrote:
> However, I think there is at least one place where automake exploits
> dynamic scoping of `local' -- I agree this is bad, but it is something
> we have to deal with before we can apply your patch.
Yes, I detected a few places where the variables behavior was more
subtle... (e.g.: &scan_configure,...) But I don't think changing
that would be so problematic as it can be replaced by lexical
variables plus passing parameters to sub-functions. Furthermore
the last technique is much more natural (local variables behavior
is not 'bad' per-se, but it is really difficult for a human to follow
what happens exactly with locals... :-))
In the version I hacked, I 'promoted' 5 or 6 variables to true
globals just to get rid of this. I don't if it was harmful for
automake, but it was rather late in Europe at that time... :-))
> Note that the test suite doesn't even pretend to check all of
> automake...
I understand. And I don't pretend that my modifications did not
degrade the script. In fact, I _probably_ introduced several bugs.
But all in all, the big thing went rather smoothly (I expected
to fail doing all that in the first place - but automake was still
usable at the end... :-))
> Rodolphe> These modifications surely implies that a developer using
> Rodolphe> automake has Perl5 (probably Perl > 5.004), but this is
> Rodolphe> probably not a big problem nowadays, no ?
>
> We've already agreed that the next automake can take advantage of Perl
> 5 features.
Even OO-modules, packages, etc. or just the new Perl5-specific
syntax ?
(For example, SelfLoader could be rather useful to speed up that script
as I guess many functions do not get executed in a single run.)
> Rodolphe> I did these modifications against the 1.4 stable release of
> Rodolphe> automake (_not_ against the current development version,
> Rodolphe> sorry). The only file I modified is 'automake.in' (none of
> Rodolphe> the m4 macro files were touched of course). But in this
> Rodolphe> file, nearly 50% of lines were touched (all variables
> Rodolphe> declarations, all function calls, all function
> Rodolphe> declarations).
>
> This is somewhat of a problem.
>
> Could you try to apply the patch to the automake from the cvs
> repository, and update it? The cvs version is fairly different
> already from the last release.
Hmm. I can try. What is the development speed of the cvs version
currently ? (Or, more directly: how much time such a patch would
remain useful ?)
> It would be nice to update aclocal as well. It is much shorter than
> automake.
Is this a criticism or an encouragment? :-))
> Also, we will need legal papers from you before we can commit a patch
> this large. Is this going to be a problem? If you can't get them
> signed, there's no point in doing more work on the patch, since I
> won't be allowed to apply it.
I did that work at home so my current employer (a research institution)
cannot pretend to be involved. But, IIRC, FSF _requires_ a signed
agreement from it ? This could be the problem ?
The main problem I see is a delay for that (administrativa is rather
heavy here...:-)). I'll ask questions...
But I'm willing to get you these documents. Do you have a URL or
something where I could check these issues precisely?
Rodolphe