Russell Nelson <[EMAIL PROTECTED]> writes:

> Right.  Dan doesn't do it that way because it's wrong.  Dan's insight is
> simply that make consults a database called a filesystem.  So instead of
> having a shell script create its own database, and from that a Makefile,
> he has a fixed Makefile create database entries.

Try building config.cache files for known platforms and then using them to
choose the right parameters when cross-compiling using Dan's scheme.
Actually, try cross-compiling at all with Dan's scheme.  Or try doing
anything that has to be based on the architecture rather than on tests
(the autoconf suite supports both).

Furthermore, with a fixed Makefile, how do you intend to optionally
include or exclude portions of a build tree from the build?  Like
including your own libz but using the system libz if one was found during
configure.

And while I can see the merits in using conf-* files vs. using
command-line switches for configure, I can assure you that when you're
trying to automate the builds of hundreds of software packages on a dozen
platforms, scripting switches to configure is a hell of a lot easier than
keeping and automatically applying patches to a bunch of conf-* files.

All of these are, of course, fixable in Dan's approach with work.  And
what you'd end up with after you fixed them all is something that looked
quite a bit like autoconf.

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

Reply via email to