From: Tom Lord <lord@emf.net>
Cc: rlb@defaultvalue.org
Subject: Re: AARRRRGGH! Die Libtool, die!
Date: Sat, 15 Feb 2003 16:56:12 -0800 (PST) [thread overview]
Message-ID: <200302160056.QAA15802@morrowfield.regexps.com> (raw)
In-Reply-To: <15950.54058.520676.489870@blauw.xs4all.nl> (message from Han-Wen Nienhuys on Sun, 16 Feb 2003 00:54:18 +0100)
> (Personally, I'd rather have all those tools (auto* included)
> written in something like perl -- it's nearly as ubiquitous
> and *far* more managable. Of course perl couldn't use them
> then, but AFAIK, it doesn't anyway.)
I would use Python myself, but otherwise I concur.
Bah.
Both perl and python are not stable. `sh' hasn't changed much in a
decade and probably won't for another decade if ever. `sh' is more
than adequate for the job. If you must reach for something more,
especially on this list, for gosh sakes, pick something rooted in
stable standards: reach for SCSH, you traitors.
The problems with the auto* family of tools include:
1) reliance on separate distribution
Everything depends on those tools, and those tools aren't
stable. Build systems are an area where you want
conventions, not dependencies. It sucks that developers
have to keep multiple versions of these tools around.
2) wrong approach to application portability
The portability problem these days is much smaller than it
was when autoconf was conceived. Feature tests are an
inelegant solution that has, for the most part, failed
(just try building a randomly selected set of public
projects on anything other than a recent GNU/Linux system).
A better use of everyone's time would be to work on
designing and stabilizing a portability library against
which new applications could be built and to which old
applications can be ported.
3) wrong approach to /bin/sh portability (m4)
The `/bin/sh' portability problem is much smaller today
than it was when autoconf was conceived. The role of
m4 (GNU m4 specifically, no less) in autoconf has outlived
its usefulness. The obfuscation cost of the use of m4
in autoconf now outweighs its payoff.
4) wrong approach to makefile portability
The `make' portability problem is much smaller today
than it was when autoconf was conceived. The auto* family
clings to requirement of makefile portability even while
GNU make runs pretty much everywhere.
5) wrong approach to makefile automation
Roughly speaking, `automake' bridges the gap between
historic versions of `make' and the capabilities of GNU
make. If you commit to GNU make, you simply do not need
automake.
6) lack of consideration for package management
The functionality of package managers belongs in the
configure/build tools.
7) excessive complexity
I've scientifically measured it and the result is official:
the auto* family is a gazillion times more complicated than
it needs to be. Of course, the battle-scarred maintainers
of these packages will regale with you with horror stories
about how each and every detail of the auto* family came
into being -- but they'll also falsely ask you to believe
that those stories justify making each and every free
software project dependent on solutions to 20 year old
problems that no longer exist.
etc.
Oh yeah -- did I mention that my `package-framework' contains the
skeleton of a replacement for the auto* family? I guess I must be
biased....
-t
_______________________________________________
Guile-devel mailing list
Guile-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/guile-devel
next prev parent reply other threads:[~2003-02-16 0:56 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-02-15 14:36 AARRRRGGH! Die Libtool, die! Han-Wen Nienhuys
2003-02-15 20:46 ` Rob Browning
2003-02-15 23:54 ` Han-Wen Nienhuys
2003-02-16 0:56 ` Tom Lord [this message]
2003-02-18 11:24 ` tomas
2003-02-18 17:14 ` Rob Browning
2003-02-18 18:50 ` rm
2003-02-19 13:04 ` tomas
2003-02-21 17:28 ` Rob Browning
2003-02-16 1:09 ` Rob Browning
-- strict thread matches above, loose matches on Subject: below --
2003-02-15 14:26 Han-Wen Nienhuys
2003-02-18 11:04 ` tomas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/guile/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200302160056.QAA15802@morrowfield.regexps.com \
--to=lord@emf.net \
--cc=rlb@defaultvalue.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).