BJam/MR — Make(1) Redux
jam [-a] [-n] [-v] [-d debug] [-f jambase] [-j jobs] [-o
actionsfile] [-s var=value] [-t target] [target ...]
BJam is a program construction tool, like make(1).
BJam recursively builds target files from source files, using
dependency information and updating actions expressed in the Jambase
file, which is written in bjam’s own interpreted language. The default
Jambase is compiled into bjam and provides a boilerplate for common
use, relying on a user-provide file "Jamfile" to enumerate actual
targets and sources.
-a Build all targets anyway, even if they are up-to-date.
-d n Enable cummulative debugging levels from 1 to n. Interesting
Show actions (the default)
Show "quiet" actions and display all action text
Show dependency analysis, and target/source timestamps/paths
Show shell arguments
Show rule invocations and variable expansions
Show directory/header file/archive scans
Show variable settings
Show variable fetches
Show variable manipulation, scanner tokens
-d +n Enable debugging level n.
-d 0 Turn off all debugging levels. Only errors are not
Read jambase instead of using the built-in Jambase. Only one
-f flag is permitted, but the jambase may explicitly include
-j n Run up to n shell commands concurrently (UNIX and NT only).
The default is 1.
-n Don’t actually execute the updating actions, but do
everything else. This changes the debug level default to -d2.
-o file Write the updating actions to the specified file instead of
running them (or outputting them, as on the Mac).
Set the variable var to value, overriding both internal
variables and variables imported from the environment.
-t target Rebuild target and everything that depends on it, even if it
-v Print the version of bjam and exit.
BJam is documented fully in HTML pages available on Debian systems from
This manual page was created by Yann Dirson firstname.lastname@example.org from the
Jam.html documentation, for the Debian GNU/Linux system (but may be
used by others).