|
Boost : |
From: Robert Ramey (ramey_at_[hidden])
Date: 2004-01-28 12:39:20
Reece Dunn wrote:
>John Torjo wrote:
>>Maybe to simplify the process, in boost-root (where boost-build.jam file
>>exists), we could have a makefile which automatically builds bjam from the
>>source files and the invokes it with a given configuation.
>>
>>like:
>>make msvc
>>(instead of bjam "-sTOOLS=msvc")
>>
>>Unfortunately, I don't have any makefile knowledge.
ahhh - we've come full circle.
>I am knowledgeable in makefiles, but this leads to a problem: you need to
>configure the makefile to handle all the various compiler and platform
>combinations - something bjam already handles, so why duplicate this effort?
>Is there a bjam file for bjam?! That way it could be bootstrapped. But then
>why not just download a pre-built version of bjam?
Bascally I think the whole purpose of bjam is to address the concerns
of the original poster. Unfortunately, this is not obvious from the information
on bjam that comes with the system. I realise that the information
is available - its just that is spread around in several places. Bjam
is a large subject and requires almost a book to explain it. BUT
it (or something like it is necessary for boost - as was obvious
to the original poster.
The central purpose of the bjam system is to specify how to build
programs in a generic way independent of any particular platform
while at the same time specify how each platform handles
particular aspects of the application developement. This is
a very ambitious concept and has resulted (not surprisingly) in a system
that is pretty elaborate. A very ambitiuos effort.
In one important way, its not ambitious enough. Unlike the rest of boost,
it seems directed a bit narrowly to building and testing boost libraries.
I get this impression from the fact that much effort is being invested in
the code but relatively little in producing a complete, coherent and
well organised explanation of how to make best usage of it. Maybe
we can sucker someone in writing an O'Reilly book on this which
would include the bjam system? Of course this would need a more
polished system.
I'm sorry go on about this, the thing just drives me crazy.
John Torjo - bjam is exactly what you're looking for - its just not clear from
the explanation.
Robert Ramey
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk