181 lines
		
	
	
		
			7.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			181 lines
		
	
	
		
			7.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								constant BOOST_VERSION : @BOOST_VERSION@ ;
							 | 
						||
| 
								 | 
							
								constant BOOST_VERSION_ABI_TAG : @BOOST_VERSION_ABI_TAG@ ;
							 | 
						||
| 
								 | 
							
								constant BOOST_JAMROOT_MODULE : $(__name__) ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import boostcpp ;
							 | 
						||
| 
								 | 
							
								import feature ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								boostcpp.set-version $(BOOST_VERSION) ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								project boost : requirements
							 | 
						||
| 
								 | 
							
								    <include>include&&"@CURRENT_INSTALLED_DIR@/include"
							 | 
						||
| 
								 | 
							
								    <define>BOOST_ALL_NO_LIB=1
							 | 
						||
| 
								 | 
							
								    <tag>@$(__name__).tag
							 | 
						||
| 
								 | 
							
								    @B2_REQUIREMENTS@
							 | 
						||
| 
								 | 
							
								    ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								rule boost-install ( libraries * )
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    stagedir = [ option.get stagedir ] ;
							 | 
						||
| 
								 | 
							
								    install stage
							 | 
						||
| 
								 | 
							
								        : $(libraries)
							 | 
						||
| 
								 | 
							
								        : <location>$(stagedir)/lib ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								rule tag ( name : type ? : property-set )
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    return [ boostcpp.tag $(name) : $(type) : $(property-set) ] ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								rule python-tag ( name : type ? : property-set )
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    return [ boostcpp.python-tag $(name) : $(type) : $(property-set) ] ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if "@PORT@" != "boost-system"
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    use-project /boost/system : . ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    lib boost_system : : <file>"@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_system@BOOST_LIB_RELEASE_SUFFIX@" <variant>release ;
							 | 
						||
| 
								 | 
							
								    lib boost_system : : <file>"@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_system@BOOST_LIB_DEBUG_SUFFIX@" <variant>debug ;
							 | 
						||
| 
								 | 
							
								    explicit boost_system ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    use-project /boost : . ;
							 | 
						||
| 
								 | 
							
								    alias system : boost_system ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if "@PORT@" != "boost-chrono"
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    use-project /boost/chrono : . ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    lib boost_chrono : : <file>"@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_chrono@BOOST_LIB_RELEASE_SUFFIX@" <variant>release ;
							 | 
						||
| 
								 | 
							
								    lib boost_chrono : : <file>"@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_chrono@BOOST_LIB_DEBUG_SUFFIX@" <variant>debug ;
							 | 
						||
| 
								 | 
							
								    explicit boost_chrono ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if "@PORT@" != "boost-regex"
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    use-project /boost/regex : . ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    lib boost_regex : : <file>"@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_regex@BOOST_LIB_RELEASE_SUFFIX@" <variant>release ;
							 | 
						||
| 
								 | 
							
								    lib boost_regex : : <file>"@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_regex@BOOST_LIB_DEBUG_SUFFIX@" <variant>debug ;
							 | 
						||
| 
								 | 
							
								    explicit boost_regex ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if "@PORT@" != "boost-date-time"
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    use-project /boost/date_time : . ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    lib boost_date_time : : <file>"@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_date_time@BOOST_LIB_RELEASE_SUFFIX@" <variant>release -<library>/boost/date_time//boost_date_time ;
							 | 
						||
| 
								 | 
							
								    lib boost_date_time : : <file>"@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_date_time@BOOST_LIB_DEBUG_SUFFIX@" <variant>debug -<library>/boost/date_time//boost_date_time ;
							 | 
						||
| 
								 | 
							
								    explicit boost_date_time ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if "@PORT@" != "boost-thread"
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    use-project /boost/thread : . ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    lib boost_thread : : <file>"@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_thread@BOOST_LIB_RELEASE_SUFFIX@" <variant>release : : <library>/boost/date_time//boost_date_time ;
							 | 
						||
| 
								 | 
							
								    lib boost_thread : : <file>"@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_thread@BOOST_LIB_DEBUG_SUFFIX@" <variant>debug : : <library>/boost/date_time//boost_date_time ;
							 | 
						||
| 
								 | 
							
								    explicit boost_thread ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if "@PORT@" != "boost-timer"
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    use-project /boost/timer : . ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    lib boost_timer : : <file>"@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_timer@BOOST_LIB_RELEASE_SUFFIX@" <variant>release ;
							 | 
						||
| 
								 | 
							
								    lib boost_timer : : <file>"@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_timer@BOOST_LIB_DEBUG_SUFFIX@" <variant>debug ;
							 | 
						||
| 
								 | 
							
								    explicit boost_timer ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if "@PORT@" != "boost-filesystem"
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    use-project /boost/filesystem : . ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    lib boost_filesystem : : <file>"@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_filesystem@BOOST_LIB_RELEASE_SUFFIX@" <variant>release : : <library>/boost/system//boost_system ;
							 | 
						||
| 
								 | 
							
								    lib boost_filesystem : : <file>"@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_filesystem@BOOST_LIB_DEBUG_SUFFIX@" <variant>debug : : <library>/boost/system//boost_system ;
							 | 
						||
| 
								 | 
							
								    explicit boost_filesystem ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if "@PORT@" != "boost-atomic"
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    use-project /boost/atomic : . ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    lib boost_atomic : : <file>"@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_atomic@BOOST_LIB_RELEASE_SUFFIX@" <variant>release ;
							 | 
						||
| 
								 | 
							
								    lib boost_atomic : : <file>"@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_atomic@BOOST_LIB_DEBUG_SUFFIX@" <variant>debug ;
							 | 
						||
| 
								 | 
							
								    explicit boost_atomic ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if "@PORT@" != "boost-context"
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    feature.feature segmented-stacks : on : optional propagated composite ;
							 | 
						||
| 
								 | 
							
								    feature.compose <segmented-stacks>on : <define>BOOST_USE_SEGMENTED_STACKS ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    use-project /boost/context : . ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    lib boost_context : : <file>"@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_context@BOOST_LIB_RELEASE_SUFFIX@" <variant>release ;
							 | 
						||
| 
								 | 
							
								    lib boost_context : : <file>"@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_context@BOOST_LIB_DEBUG_SUFFIX@" <variant>debug ;
							 | 
						||
| 
								 | 
							
								    explicit boost_context ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if "@PORT@" != "boost-test"
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    use-project /boost/test : . ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    lib boost_unit_test_framework : : <file>"@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_unit_test_framework@BOOST_LIB_RELEASE_SUFFIX@" <variant>release ;
							 | 
						||
| 
								 | 
							
								    lib boost_unit_test_framework : : <file>"@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_unit_test_framework@BOOST_LIB_DEBUG_SUFFIX@" <variant>debug ;
							 | 
						||
| 
								 | 
							
								    explicit boost_unit_test_framework ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if "@PORT@" != "boost-serialization"
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    use-project /boost/serialization : . ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    lib boost_serialization : : <file>"@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_serialization@BOOST_LIB_RELEASE_SUFFIX@" <variant>release ;
							 | 
						||
| 
								 | 
							
								    lib boost_serialization : : <file>"@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_serialization@BOOST_LIB_DEBUG_SUFFIX@" <variant>debug ;
							 | 
						||
| 
								 | 
							
								    explicit boost_serialization ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if "@PORT@" != "boost-mpi"
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    use-project /boost/mpi : . ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    lib boost_mpi : : <file>"@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_mpi@BOOST_LIB_RELEASE_SUFFIX@" <variant>release : : <library>/boost/serialization//boost_serialization ;
							 | 
						||
| 
								 | 
							
								    lib boost_mpi : : <file>"@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_mpi@BOOST_LIB_DEBUG_SUFFIX@" <variant>debug : : <library>/boost/serialization//boost_serialization ;
							 | 
						||
| 
								 | 
							
								    explicit boost_mpi ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if "@PORT@" != "boost-container"
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    use-project /boost/container : . ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    lib boost_container : : <file>"@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_container@BOOST_LIB_RELEASE_SUFFIX@" <variant>release ;
							 | 
						||
| 
								 | 
							
								    lib boost_container : : <file>"@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_container@BOOST_LIB_DEBUG_SUFFIX@" <variant>debug ;
							 | 
						||
| 
								 | 
							
								    explicit boost_container ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if "@PORT@" != "boost-python"
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    use-project /boost/python : . ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    lib boost_python : : <file>"@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_python@PYTHON_VERSION_TAG@@BOOST_LIB_RELEASE_SUFFIX@" <variant>release ;
							 | 
						||
| 
								 | 
							
								    lib boost_python : : <file>"@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_python@PYTHON_VERSION_TAG@@BOOST_LIB_DEBUG_SUFFIX@" <variant>debug ;
							 | 
						||
| 
								 | 
							
								    explicit boost_python ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								rule requires ( foo * )
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								rule boost-lib ( name : sources * : requirements * : default-build * : usage-requirements * )
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    name = boost_$(name) ;
							 | 
						||
| 
								 | 
							
								    lib $(name) : $(sources) : $(requirements) : $(default-build) : $(usage-requirements) ;
							 | 
						||
| 
								 | 
							
								    boost-install $(name) ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								use-project /boost/@PORT@ : build ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build-project build ;
							 |