Boost logo

Boost-Build :

From: Rene Rivera (grafik666_at_[hidden])
Date: 2002-10-28 00:15:49


A while ago I was looking at using and testing jam on the Win32 side of my
x86 box, but I ran into a problem. There are only a small number of
compilers supported for building jam itself in Win32: MSVC, cygwin, and
borland. But even though I have borland installed, I wanted to use my
prefered compiler in Win32... CodeWarrior. So I decided to add support for
that, but after seeing all the various build scripts and instructions in
jam_src I got frustrated at trying to change the Jambase to support it. So I
decided to write a new set of scripts to compile jam(bjam) instead.

I'm attaching the first pass at them... here are some of the highlights:

* Much simpler than the current Makefiles plus scripts.
* Tries to autodetect the compiler to use.
* No reliance on make, gmake, nmake, etc. Only on SH and BAT (Unix, Win32
respectively)
* Much easier to add more platforms and compilers.
* Only 3 files, so far, build.sh, build.bat, and build.jam would replace:
common.mk, debugjam0.bat, debugjam0.sh, makecygwindebugjam.bat,
makedebugjam.bat, makedebugjam.sh, Makefile, builds/win32-borlandc.mk,
builds/win32-gcc.mk, and builds/visualc.mk.
(Or will when the functionality of all those is incorporated, or deemed
useless)
* It removes our dependence on the build code in Jambase. And we can put
back in the stock Perforce Jambase instead of the FTJam code.

Things still missing:
* More testing, build.bat has blind changes, and since I don't have MSVC
can't test that (and I'm sure it won't work as is).
* Documentation :-), of course now the build documentation should be much
simpler: "Invoke './build.sh' in Unix, or '.\build.bat' in Win32."
* VMS support?

So is this something I should put into CVS? That is do we want to support
such scripts?

[[I'm also attaching boost-jam.spec, because that also has changes for the
scripts.]]

-- grafik - Don't Assume Anything
-- rrivera_at_[hidden] - grafik_at_[hidden]
-- 102708583_at_icq - Grafik666_at_AIM - Grafik_at_[hidden] --2738456-2675965952-3244749350=:9000 Content-Type: application/octet-stream; Name="build.bat"; X-Mac-Type="54455854"; X-Mac-Creator="74747874"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; Filename="build.bat"

[Attachment content not displayed.] --2738456-2675965952-3244749350=:9000 Content-Type: application/octet-stream; Name="build.sh"; X-Mac-Type="54455854"; X-Mac-Creator="74747874"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; Filename="build.sh"

[Attachment content not displayed.] --2738456-2675965952-3244749350=:9000 Content-Type: application/octet-stream; Name="build.jam"; X-Mac-Type="54455854"; X-Mac-Creator="74747874"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; Filename="build.jam"

[Attachment content not displayed.] --2738456-2675965952-3244749350=:9000 Content-Type: application/octet-stream; Name="boost-jam.spec"; X-Mac-Type="54455854"; X-Mac-Creator="74747874"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; Filename="boost-jam.spec"

[Attachment content not displayed.] --2738456-2675965952-3244749350=:9000--


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