Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r62249 - trunk/tools/build/v2/contrib
From: steven_at_[hidden]
Date: 2010-05-26 15:05:20


Author: steven_watanabe
Date: 2010-05-26 15:05:19 EDT (Wed, 26 May 2010)
New Revision: 62249
URL: http://svn.boost.org/trac/boost/changeset/62249

Log:
Bring the boost.jam module up to date
Text files modified:
   trunk/tools/build/v2/contrib/boost.jam | 117 +++++++++++++++++++++++++++++++--------
   1 files changed, 91 insertions(+), 26 deletions(-)

Modified: trunk/tools/build/v2/contrib/boost.jam
==============================================================================
--- trunk/tools/build/v2/contrib/boost.jam (original)
+++ trunk/tools/build/v2/contrib/boost.jam 2010-05-26 15:05:19 EDT (Wed, 26 May 2010)
@@ -59,6 +59,7 @@
 import regex ;
 import common ;
 import option ;
+import numbers ;
 
 .boost.auto_config = [ property-set.create <layout>system ] ;
 
@@ -114,7 +115,7 @@
 # searchable pre-built boost libraries, or references a source tree
 # of the boost library. If the 'version' parameter is omitted either
 # the configured default (first in config files) is used or an auto
-# configuration will be attemted.
+# configuration will be attempted.
 #
 rule use-project
 (
@@ -190,40 +191,61 @@
 # The default definitions for pre-built libraries.
 
     project boost
- : usage-requirements <include>$(inc)
+ : usage-requirements <include>$(inc) <define>BOOST_ALL_NO_LIB
         : requirements <tag>@tag_std <search>$(lib)
         ;
 
     alias headers ;
+ lib date_time : : : :
+ <link>shared:<define>BOOST_DATE_TIME_DYN_LINK ;
+ lib filesystem : : : :
+ <link>shared:<define>BOOST_FILE_SYSTEM_DYN_LINK ;
+ lib graph : : : :
+ <link>shared:<define>BOOST_GRAPH_DYN_LINK ;
+ lib graph_parallel : : : :
+ <link>shared:<define>BOOST_GRAPH_DYN_LINK ;
+ lib iostreams : : : :
+ <link>shared:<define>BOOST_IOSTREAMS_DYN_LINK ;
+ lib math_tr1 : : : :
+ <link>shared:<define>BOOST_MATH_TR1_DYN_LINK ;
+ lib math_tr1f : : : :
+ <link>shared:<define>BOOST_MATH_TR1_DYN_LINK ;
+ lib math_tr1l : : : :
+ <link>shared:<define>BOOST_MATH_TR1_DYN_LINK ;
+ lib math_c99 : : : :
+ <link>shared:<define>BOOST_MATH_TR1_DYN_LINK ;
+ lib math_c99f : : : :
+ <link>shared:<define>BOOST_MATH_TR1_DYN_LINK ;
+ lib math_c99l : : : :
+ <link>shared:<define>BOOST_MATH_TR1_DYN_LINK ;
+ lib mpi : : : :
+ <link>shared:<define>BOOST_MPI_DYN_LINK ;
     lib program_options : : : :
         <link>shared:<define>BOOST_PROGRAM_OPTIONS_DYN_LINK ;
- lib thread : : : :
- <link>shared:<define>BOOST_THREAD_DYN_DLL ;
- lib iostreams : : : :
- <link>shared:<define>BOOST_IOSTREAMS_DYN_LINK ;
- lib wave : : : :
- <link>shared:<define>BOOST_WAVE_DYN_LINK ;
     lib python : : : :
         <link>shared:<define>BOOST_PYTHON_DYN_LINK ;
- lib serialization : : : :
- <link>shared:<define>BOOST_SERIALIZATION_DYN_LINK ;
- lib graph : : : :
- <link>shared:<define>BOOST_GRAPH_DYN_LINK ;
- lib date_time : : : :
- <link>shared:<define>BOOST_DATE_TIME_DYN_LINK ;
- lib test : : : :
- <link>shared:<define>BOOST_TEST_DYN_LINK ;
+ lib random : : : :
+ <link>shared:<define>BOOST_RANDOM_DYN_LINK ;
     lib regex : : : :
         <link>shared:<define>BOOST_REGEX_DYN_LINK ;
- lib filesystem : : : :
- <link>shared:<define>BOOST_FILE_SYSTEM_DYN_LINK ;
+ lib serialization : : : :
+ <link>shared:<define>BOOST_SERIALIZATION_DYN_LINK ;
+ lib wserialization : : : :
+ <link>shared:<define>BOOST_SERIALIZATION_DYN_LINK ;
     lib signals : : : :
         <link>shared:<define>BOOST_SIGNALS_DYN_LINK ;
- lib function_types ;
- lib mpi : : : :
- <link>shared:<define>BOOST_MPI_DYN_LINK ;
     lib system : : : :
         <link>shared:<define>BOOST_SYSTEM_DYN_LINK ;
+ lib unit_test_framework : : : :
+ <link>shared:<define>BOOST_TEST_DYN_LINK ;
+ lib prg_exec_monitor : : : :
+ <link>shared:<define>BOOST_TEST_DYN_LINK ;
+ lib test_exec_monitor : : : :
+ <link>shared:<define>BOOST_TEST_DYN_LINK ;
+ lib thread : : : :
+ <link>shared:<define>BOOST_THREAD_DYN_DLL ;
+ lib wave : : : :
+ <link>shared:<define>BOOST_WAVE_DYN_LINK ;
 }
 
 rule boost_0_0_1 ( inc ? lib ? )
@@ -244,13 +266,56 @@
     {
         name = lib$(name) ;
     }
- if $(.layout) = versioned
+
+ local result ;
+ if $(.layout) = system
     {
- version = $(.version_tag) ;
- toolset = <toolset> ;
+ local version = [ MATCH ^([0-9]+)_([0-9]+) : $(.version_tag) ] ;
+ if $(version[1]) = "1" && [ numbers.less $(version[2]) 39 ]
+ {
+ result = [ tag_tagged $(name) : $(type) : $(property-set) ] ;
+ }
+ else
+ {
+ result = [ tag_system $(name) : $(type) : $(property-set) ] ;
+ }
+ }
+ else if $(.layout) = tagged
+ {
+ result = [ tag_tagged $(name) : $(type) : $(property-set) ] ;
     }
+ else if $(.layout) = versioned
+ {
+ result = [ tag_versioned $(name) : $(type) : $(property-set) ] ;
+ }
+ else
+ {
+ errors.error "Missing layout" ;
+ }
+
+ return $(result) ;
+}
+
+rule tag_system ( name : type ? : property-set )
+{
+ return [ common.format-name
+ <base>
+ -$(.build_id)
+ : $(name) : $(type) : $(property-set) ] ;
+}
+
+rule tag_tagged ( name : type ? : property-set )
+{
+ return [ common.format-name
+ <base> <threading> <runtime>
+ -$(.build_id)
+ : $(name) : $(type) : $(property-set) ] ;
+}
 
+rule tag_versioned ( name : type ? : property-set )
+{
     return [ common.format-name
- <base> $(toolset) <threading> <runtime> -$(version) -$(.build_id)
- : $(name) : $(type) : $(property-set) ] ;
+ <base> <toolset> <threading> <runtime> -$(.version_tag)
+ -$(.build_id)
+ : $(name) : $(type) : $(property-set) ] ;
 }


Boost-Commit 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