Boost logo

Boost-Build :

From: Robert Ramey (Ramey_at_[hidden])
Date: 2004-12-20 17:23:17


I'm trying to use the template target facility as described in
http://www.boost.org/tools/build/v1/build_system.htm and am having
difficluties.

Specifically the document indicates that the syntax is:

target-type name : sources
[ : requirements [ : default-BUILD ] ] ;

which doesn't seem to work for me. Looking to the build/Jamfile for
boost.test I find syntax such as the following:

template boost_test_lib
## sources ##
:
## requirements ##
## default build ##
: <threading>single/multi <runtime-link>static/dynamic
;
lib boost_prg_exec_monitor : <template>boost_test_lib
../src/$(PRG_EXEC_MON_SOURCES).cpp ;

Note the absence of the colon (":") character before ##sources. At the very
least it seems that that the documentation is out of sync with the
definition of template rule.

If I locate to the test/build directory and invoke bjam I get:

$ bjam -d5 -sTOOLS=vc-7_1 debug >bjam.log
$ tail bjam.log
C:\BoostMainCVS\tools/build/v1\boost-base.jam:1676:>>>>|>>>>| DEPENDS stage
all
:
<@boost!libs!test!build!stage!lib>libboost_prg_exec_monitor-vc71-mt-gd-1_32.
li
b
<@boost!libs!test!build!stage!lib>libboost_prg_exec_monitor-vc71-mt-1_32.lib
<
@boost!libs!test!build!stage!lib>libboost_test_exec_monitor-vc71-mt-gd-1_32.
lib
<@boost!libs!test!build!stage!lib>libboost_test_exec_monitor-vc71-mt-1_32.li
b <@
boost!libs!test!build!stage!lib>libboost_unit_test_framework-vc71-mt-gd-1_32
.lib

<@boost!libs!test!build!stage!lib>libboost_unit_test_framework-vc71-mt-1_32.
lib

C:\BoostMainCVS\tools/build/v1\boost-base.jam:1677:>>>>|>>>>| NOTFILE stage
all
C:\BoostMainCVS\tools/build/v1\boost-base.jam:2492:>>>>|>>> Clean clean :
<@boos
t!libs!test!build!stage!lib>libboost_prg_exec_monitor-vc71-mt-gd-1_32.lib
<@boos
t!libs!test!build!stage!lib>libboost_prg_exec_monitor-vc71-mt-1_32.lib
<@boost!l
ibs!test!build!stage!lib>libboost_test_exec_monitor-vc71-mt-gd-1_32.lib
<@boost!
libs!test!build!stage!lib>libboost_test_exec_monitor-vc71-mt-1_32.lib
<@boost!li
bs!test!build!stage!lib>libboost_unit_test_framework-vc71-mt-gd-1_32.lib
<@boost
!libs!test!build!stage!lib>libboost_unit_test_framework-vc71-mt-1_32.lib
make -- debug
make -- debug
time -- debug: missing
don't know how to make debug
made+ nofind debug
...found 1 target...
...can't find 1 target...
$

That is, it doesn't seem to work either.

Adjusting my Jamfile in accordance with example illustrated by
boost.test/build fails to make my build function.

Anyone is free to offer advice.

Robert Ramey

 


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