-----Original Message----- From: Boost [mailto:boost-bounces@lists.boost.org] On Behalf Of Daniel James Sent: Sunday, January 19, 2014 4:17 PM To: boost@lists.boost.org Subject: Re: [boost] bjamming that used to work before modular-boost
On 19 January 2014 15:56, Paul A. Bristow
wrote: -----Original Message----- From: Boost [mailto:boost-bounces@lists.boost.org] On Behalf Of Daniel James Sent: Sunday, January 19, 2014 2:55 PM To: boost@lists.boost.org Subject: Re: [boost] bjamming that used to work before modular-boost
On 19 January 2014 14:38, Paul A. Bristow
wrote: I have boost-build.jam at I:\modular-boost
Suggestions please.
The boost-build.jam file from the sandbox (http://svn.boost.org/svn/boost/sandbox/guild/boost-build.jam) needs to be updated for the new layout of boost build. This is out of date:
local boost-build-src = [ if-has-file bootstrap.jam : [ MATCH --boost-build=(.*) : $(ARGV) ] $(BOOST_BUILD_PATH) $(BOOST_BUILD) $(boost-src)/tools/build/v2 ] ;
'/v2' is no longer required in the path, and 'bootstrap.jam' is in a different directory now. Changing it to this might work:
local boost-build-src = [ if-has-file bootstrap.bat : [ MATCH --boost-build=(.*) : $(ARGV) ] $(BOOST_BUILD_PATH) $(BOOST_BUILD) $(boost-src)/tools/build ] ;
That changes the result but doesn't entirely solve the problem.
adding --boost=i:\modular-boost finds the licence text OK, but then gives
Unable to load Boost.Build: could not find build system. --------------------------------------------------------- I:\boost-sandbox\guild\boost-build.jam attempted to load the build system by invoking 'boost-build I:\modular-boost\tools\build ;' but we were unable to find "bootstrap.jam" in the specified directory or in BOOST_BUILD_PATH (searching I:\modular-boost\tools\build).
which is because it does not contain this file "bootstrap.jam" (and nor does i:\modular-boost)
Oh, I guess it needs to find the 'tools/build/src' path where bootstrap.jam is located. Maybe this would work:
local boost-build-src = [ if-has-file bootstrap.jam : [ MATCH --boost-build=(.*) : $(ARGV) ] $(BOOST_BUILD_PATH) $(BOOST_BUILD) $(boost-src)/tools/build/src ] ;
Yes - works for me :-) But to avoid providing BOOST or BOOST_ROOT environment variables, or parameter --boost=i:\modular-boost I also added #~ Attempts to find the Boost source tree... #~ --boost=i:\modular-boost may be needed. local boost-src = [ if-has-file LICENSE_1_0.txt : [ MATCH --boost=(.*) : $(ARGV) ] $(BOOST) $(.boost-build-file:D)/../../modular-boost/ <<<<<<<<<<<<<<<< new for modular-boost $(.boost-build-file:D)/../boost $(.boost-build-file:D)/../Trunk ] ; I fear that I am not the only one who will need to make quite a few adjustments (and also to MSVC solutions/projects) as a result of modularization. Thanks again. Paul --- Paul A. Bristow, Prizet Farmhouse, Kendal LA8 8AB UK +44 1539 561830 07714330204 pbristow@hetp.u-net.com