Boost logo

Boost-Build :

Subject: [Boost-build] project requirements in Jamroot --- how to make sure they propagate to sub-projects and other dependencies
From: Thorsten Ottosen (thorsten.ottosen_at_[hidden])
Date: 2009-01-10 11:48:40


Hi,

I'm having some irritating troubles when I try to use

          <define>_SECURE_SCL=0

from my local Jamroot file. It seems like the macro is not defined
consistenly over all libraries (some in my sub-project, some in boost
libraries like Boost.Test) which, luckily, causes a run-time crash.
My file layout is this:

<root>/Jamroot
<root>/test/Jamfile.v2

and then boost is installed somewhere else *outside* this path.

In my Jamroot file I have

import os ;

local BOOST_ROOT = [ os.environ BOOST_ROOT ] ;

project bayesian_engine
     : usage-requirements
     : requirements

          <include>d:/boost/trunk/
          <include>dependencies/stlsoft-1.9.63/include/
          <include>dependencies/
          <include>src/
 
<library>$(BOOST_ROOT)/libs/test/build//boost_unit_test_framework/<link>static

          <define>_SECURE_SCL=0

  ;

Of course, I have more requirements, but they don't seem relevant.

The in a Jamfile.v2 I have

lib bayesian : [ glob ../src/*.cpp ] :
<link>shared:<define>DEZIDE_EXPORT=1 ;

[ unit-test a_star_search : a_star_search.cpp bayesian ]

etc.

I thought everything I specified in my Jamroot file would propagate to
both sub-projects and dependencies in Boost. I know _SECURE_SCL=0 is the
problem here since uncommenting it makes everything work again.

Am I doing something wrong?

Thanks in advance

-Thorsten


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