From: Rene Rivera (grafikrobot_at_[hidden])
Date: 2007-10-06 02:43:20
David Abrahams wrote:
> on Thu Oct 04 2007, Ray Lambert <codemonkey-AT-interthingy.net> wrote:
>> Meta-make systems try to treat make like
>> a platform, but it isn't; it's just a tool and a very crude one at that.
> That's all Cmake needs: something that can handle low-level targets,
> dependencies, and build instructions.
Makes me think I should refactor bjam into a build library, and tool.
Then convince Cmake to use the bjam build library ;-)
>> Oh sure, it does still work, but so does a horse & buggy. (And a
>> H&B uses no gas and doesn't pollute; but I bet you're not willing to
>> trade your car for one anytime soon...)
> Exactly. Unlike a horse and buggy, all makes I know are *extremely*
> fast at the jobs for which they are used by Cmake. The speed of
> dependency analysis and issuance of build instructions (all make is
> used for by Cmake) is one of the first things that gets optimized, and
> make users scream if it is ever slow.
You are including bjam in the "all makes I know" statement, right?
> I get the impression that you and Rene haven't taken the time to
> understand how Cmake works.
I've tried to at least follow the conversations about it, and had
various personal conversations with Troy, and read some of the docs. But
truth is, it's hard to put much more effort into understanding the
intricacies of a tool I will never use. But then again it's really up to
the proponents of Cmake to justify if and how it can perform the tasks
BB+bjam does. I'll just try to mention as many as I can think of in case
the proponents have forgotten some of them.
> In most (maybe all) cases, it's not
> intended to generate a standalone native make system. In general, the
> makefiles it generates can't be used by themselves. All the
> interesting jobs (like tracing header dependencies) are done by Cmake.
There was a suggestion once, and some investigation as to implementation
by the suggesting party, into implementing a bjam prebuild cache. This
would be equivalent to the processing Cmake does to generate the
-- -- Grafik - Don't Assume Anything -- Redshift Software, Inc. - http://redshift-software.com -- rrivera/acm.org - grafik/redshift-software.com -- 102708583/icq - grafikrobot/aim - grafikrobot/yahoo
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk