Boost logo

Boost-Build :

From: Rene Rivera (grafik666_at_[hidden])
Date: 2002-02-13 23:10:31


I just comitted some changes to the build system. These are changes only to
the *.jam files not the Jam executable.

The changes include:

- PRE* defaults for Unix type platforms, and NT.
(allyourbase.jam)

- BOOST_BUILD_INSTALLATION variable not longer used, and removed. If you use
this aspect of the system you should switch to using BOOST_BUILD_PATH instead.
(allyourbase.jam, boost-build.jam, boost-base.jam)

- Remember and check which Jamfiles are included to eliminate multiple
inclusion.
(allyourbase.jam)

- Move the inclusion of the first Jamfile from "allyourbase.jam" to
"boost-build.jam".
(allyourbase.jam, boost-build.jam)

- Canonize target file names generated so that they conform to platform
practices. This means that now instead of target names mostly saying what the
name of the generated file is it only names the base of the generated file.
For example "dll test : test.cpp ;" will generate a "libtest.so" on Unix type
platforms, and "test.dll" on Win* type platforms. One can define PRE* and SUF*
varaibles to specify the renaming depending on the platform & type of target.
(boost-base.jam)

- Target names no longer need to be unique. But now only need to be unique per
type of target. This change is a sideefeect of the above because otherwise it
would not be possible to creat both a "libtest.a" and a "libtest.so" :-)
(boost-base.jam)

- Source dependencies now need to be specified in terms of the type of the
source. For DLL targets speifying <dll>test links the source using the LIBPATH
and FINDLIBS variable which translate to using the toolset specification,
"-ltest" & "-L/a/b/c" on GCC toolsets. This eliminates the problems some
people have had with building DLLs and using them outside of the build system.
This also applies to all the other types of sources, so <exe>*, <lib>*, and
<pyd>*, should be used.
(boost-base.jam)

- Addition of a new "stage" target. The intent of this is to alow for
collecting the various targets generated, in the varied subdirectories into a
single stagin directory. Renaming of the target files is supported when the
files are copied. See the documentation for more details.
(boost-base.jam)

- Added support for specifying <pyd>* type source dependencies.
(python.jam)

- Updated the base Jamfiles in boost/libs/* to build and use the new
requirements.
(boost/libs/python/build/Jamfile, boost/libs/regex/build/Jamfile,
boost/libs/thread/build/Jamfile)

- Cleaned slightly, updated, and added to the documentation.
(boost_system.htm)

WARNING: The name of the subdirectories that get created for the generated
targets is now different! If you rely on this the basic change is that the
target subdirectory is now the exact name of the target instead of the
basename.

Enjoy, and if this causes problems please yell ;-)

-- grafik - Don't Assume Anything
-- rrivera_at_[hidden] - grafik_at_[hidden]
-- 102708583_at_icq - Grafik666_at_AIM - Grafik_at_[hidden]

 


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