Robert Spier <[EMAIL PROTECTED]> writes:
> On Tue, 2001-10-23 at 20:52, Russ Allbery wrote:
>> Dan Sugalski <[EMAIL PROTECTED]> writes:

>>> Once we build miniparrot, then *everything* can be done in
>>> perl. Having hacked auto* stuff, I think that'd be a good
>>> thing. (autoconf and friends are unmitigated evil hacks--people just
>>> don't realize how nasty they are because they never need to look
>>> inside)

>> I've looked inside a lot, and I definitely do not agree.  But maybe you've
>> not seen autoconf 2.50 and later?

> Russ- Could you expand on this?  2.50 seems to be at least 80% the same
> as the previous versions, with very similar m4 syntax, some new macros
> added, some old macros removed, some old bugs fixed, some new bugs
> added.

I'm not sure what there is to expand on.  I've looked at 2.50, and it
definitely doesn't look like an unmitigated evil hack to me.  It looks
like a collection of tests for various standard things that packages need
to know to compile, put together about as well as I can imagine doing that
for the huge variety of tests one has to deal with.  I haven't worked with
metaconfig instead, but I have to say that I find it way easier to deal
with autoconf than to deal with metaconfig.  (I know this is heresy in the
Perl community.  *grin*)  I've maintained the autoconf configuration for a
reasonably large package (INN), but not one that requires portability to
Windows -- at the same time, last time I checked, Configure doesn't really
deal with portability to non-Unix systems either, being a shell script
itself.  Perl seemed to just bypass it in favor of pre-generated results.
But I could be behind on the state of the art.

The shell script it generates is butt-ugly, but that's the price of insane
portability.

I'm not as fond of automake or libtool, but libtool at least lives up to
what it says it does, and takes care of a bunch of portability issues that
are rather obscure and difficult to deal with.

-- 
Russ Allbery ([EMAIL PROTECTED])             <http://www.eyrie.org/~eagle/>

Reply via email to