From ca699188859c16768398e907119271b7ad1ae590 Mon Sep 17 00:00:00 2001
From: Beman Dawes
-
@@ -208,8 +207,7 @@ bjam -sTOOLS=gcc my_target
-bjam -sTOOLS=gcc my_target
+
bjam -sTOOLS=gcc my_target
-
@@ -218,8 +216,7 @@ bjam -sTOOLS="msvc gcc"
-bjam -sTOOLS="msvc gcc"
+
bjam -sTOOLS="msvc gcc"
-
@@ -230,8 +227,7 @@ bjam
-set TOOLS=msvc
+
set TOOLS=msvc
bjam
-
@@ -241,8 +237,7 @@ bjam "-sBUILD=release <debug-symbols>on"
-bjam "-sBUILD=release <debug-symbols>on"
+
bjam "-sBUILD=release <debug-symbols>on"
+
+
-
@@ -267,7 +262,13 @@ bjam -sBUILD="debug release"
-bjam -sBUILD="debug release"
+
bjam -sBUILD="debug release"
Set an NT environment variable to always build with MSVC and
GCC
+ line switch.
+
default-build all, adding a MSVC-specific compiler command
- line switch
+
@@ -283,8 +284,7 @@ bjam -sBUILD="debug release"
you can set them there:
+
+ bjam "-sBUILD=<define>BOOST_POSIX"build all, with the macro BOOST_POSIX defined for all compilers.
-
-> BUILD="debug release" # assuming Unix
+
> BUILD="debug release" # assuming Unix
> export BUILD
> bjam ...
@@ -307,8 +307,7 @@ bjam -sBUILD="debug release"
href="#jamrules">Jamrules file:
-
-subproject foo/bar/baz ; # path to here from project root
+
subproject foo/bar/baz ; # path to here from project root
# A static library called 'baz'
lib baz : baz1.cpp baz2.cpp # C++ sources
@@ -330,8 +329,7 @@ exe test : <lib>baz # use the 'baz' library
add a Jamfile at the root:
--project-root ; # declare this to be the project root directory +project-root ; # declare this to be the project root directory # Read subproject Jamfiles subinclude foo/bar/baz foo/bar/... ; subinclude a/b/c ... ; # more subincludes @@ -495,8 +493,7 @@ subinclude foo/bar/baz foo/bar/... ; structure (target directories in bold).-- bin +bin +-foo <--- foo's build root | +-gcc | | +-debug @@ -537,8 +534,7 @@ subinclude foo/bar/baz foo/bar/... ; fragment of the target tree might look like:-- bin +bin +-foo <--- foo's build root | +-msvc | | +-debug @@ -560,8 +556,7 @@ subinclude foo/bar/baz foo/bar/... ; subvariant directories in the example above would be generated:-- bin +bin +-foo <--- foo's build root | +-msvc | | +-debug @@ -584,8 +579,7 @@ subinclude foo/bar/baz foo/bar/... ; following structure for a DLL:-- bin +bin +-foo <--- foo's build root | +-msvc | | +-debug @@ -642,8 +636,7 @@ subinclude foo/bar/baz foo/bar/... ; declares:-and you invoke Jam with -sBUILD="debug release" my_target, @@ -756,8 +749,7 @@ exe my_target : my_source1.cpp my_source2.c ; relative to the top of the project tree:-exe my_target : my_source1.cpp my_source2.c ; +exe my_target : my_source1.cpp my_source2.c ;-@@ -768,8 +760,7 @@ subproject path-from-top ; instead:-subproject path-from-top ; +subproject path-from-top ;-@@ -778,8 +769,7 @@ project-root ;-project-root ; +project-root ;A main target is described using the following syntax:
--target-type name : sources +target-type name : sources [ : requirements [ : default-BUILD ] ] ;@@ -836,8 +826,7 @@ project-root ; sets of optionally-qualified build properties:-<compiler> and <variant>, @@ -865,8 +854,7 @@ project-root ; properties:-[[<compiler>]<variant>]<feature>value +[[<compiler>]<variant>]<feature>value-When multiple values are specified, it causes all the implied @@ -880,8 +868,7 @@ project-root ; when another target like an exe is built. Such use might look like:-[[<compiler>]<variant>]<feature>value1[/value2...] +[[<compiler>]<variant>]<feature>value1[/value2...]--lib basic : basic.cpp : : <suppress>true ;
+lib basic : basic.cpp : : <suppress>true ;@@ -947,8 +934,7 @@ exe test : test.cpp <lib>basic ;
exe test : test.cpp <lib>basic ;
your collecting different builds of the same targets. The syntax is:--<tag><feature|variant>value +<tag><feature|variant>value
@@ -977,8 +963,7 @@ exe test : test.cpp <lib>basic ;
in ../bazlib/Jamfile.--template base : +template base : ## Requirements ## : <include>../bazlib/include <define>BUILDING_FOO=1 @@ -1053,8 +1038,7 @@ exe fop : <template>executable fop.cpp ;Variants are described with the following syntax:
-The variant rule specifies the list of properties comprising a @@ -1068,8 +1052,7 @@ variant name : [<toolset-name>]<feature>value.. targets. For example:-variant name : [<toolset-name>]<feature>value... ; +variant name : [<toolset-name>]<feature>value... ;--variant my-globals : <rtti>off ; +variant my-globals : <rtti>off ; variant my-debug : my-globals debug ; @@ -1108,8 +1091,7 @@ variant my-release : my-globals release ; is uniquely defined for the toolset. For example,--rule C++-action +rule C++-action { msvc-C++-action $(<) : $(>) ; } @@ -1143,8 +1125,7 @@ actions msvc-C++-action actions. The flags rule is used as follows:-The parameters are: @@ -1194,8 +1175,7 @@ flags toolset variable condition [: value...] to specify how optimization can be turned off for MSVC:-flags toolset variable condition [: value...] +flags toolset variable condition [: value...]-It says that the string /Od should be added to the global @@ -1205,8 +1185,7 @@ flags msvc CFLAGS <optimization>off : /Od ;-flags msvc CFLAGS <optimization>off : /Od ; +flags msvc CFLAGS <optimization>off : /Od ;Similarly, in the following example,
-we add /MD to the CFLAGS variable when both of the specified @@ -1215,8 +1194,7 @@ flags msvc CFLAGS <runtime-build>release/<runtime-link>dynamic : /MD follows:-flags msvc CFLAGS <runtime-build>release/<runtime-link>dynamic : /MD ; +flags msvc CFLAGS <runtime-build>release/<runtime-link>dynamic : /MD ;-@@ -1279,8 +1257,7 @@ flags msvc HDRS <include> ; values:-flags msvc HDRS <include> ; +flags msvc HDRS <include> ;-@@ -1401,10 +1378,8 @@ flags msvc HDRS <include> ;- ECHO $(gFUBAR($(x),$(y))) ; +ECHO $(gFUBAR($(x),$(y))) ;Revised 24 May, 2002 - 11 January, 2003