...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Copyright © 2003-2006 Rene Rivera, David Abrahams, Vladimir Prus
Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
Table of Contents
Boost.Jam (BJam) is a build tool based on FTJam, which in turn is based on Perforce Jam. It contains significant improvements made to facilitate its use in the Boost Build System, but should be backward compatible with Perforce Jam.
This is version 3.1.14 of BJam and is based on version 2.4 of Jam/MR:
/+\ +\ Copyright 1993-2002 Christopher Seiwald and Perforce Software, Inc. +/ This is Release 2.4 of Jam/MR, a make-like program. License is hereby granted to use this software and distribute it freely, as long as this copyright notice is retained and modifications are clearly marked. ALL WARRANTIES ARE HEREBY DISCLAIMED.
Jam is a make(1) replacement that makes building simple things simple and building complicated things manageable.
Jam's language is expressive, making Jamfiles (c.f. Makefiles) compact.
Jam handles header file dependencies automatically and on-the-fly.
Jam is very portable: it runs on UNIX, VMS, Mac, and NT. Most Jamfiles themselves are portable.
Jam is unintrusive: it is small, it has negligible CPU overhead, and it doesn't create any of its own funny files (c.f. Odin, nmake, SunOS make).
Jam can build large projects spread across many directories in one pass, without recursing, tracking the relationships among all files. Jam can do this with multiple, concurrent processes.
Jam isn't under the blinkin GNU copyright, so you can incorporate it into commercial products.