From: Vladimir Prus (ghost_at_[hidden])
Date: 2004-12-16 04:35:13
On Thursday 16 December 2004 12:04, Tompa wrote:
> I just think it is unfortunate that Boost relies on something that most
> traditionally trained C/C++ developers thinks look like greek. Often these
> developers are pretty comfortable with make, so a natural choice for the
> build system would have been gnu-make, IMHO. However, since the folks at
> Boost are very competent and wise and seldom make anything undeliberate
> this implies that bjam probably is, well, superior to gnumake. This is what
> I'm after at. What is it that makes bjam a so much better choice over
> gnumake so it is worth all the complication for the rest of us
> not-yet-atleast-bjammers in the C++ community? /Tompa
I've tried to explain already. Another try. When using Boost.Build V2 you run
bjam link=shared debug release
a lot of work is done. Some code figures out that you need to build two
versions of everything, then some code decides exact properties for each
target (some targets might *require* link=static). Then some code decides
what actions to run, and that on Windows you need to create not only DLL but
also import lib, and that you should use respose files. Finally, abstract
"debug" and "release" are converted into real command line options.
This all must be implemented somehow. bjam has functions, modules and classes.
I think that make does not even allow to create a user-defined function, and
so it completely non-suitable to the task.
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