constant BOOST_VERSION : 1.66.0 ; constant BOOST_VERSION_ABI_TAG : 1_66 ; constant BOOST_JAMROOT_MODULE : $(__name__) ; import boostcpp ; import feature ; boostcpp.set-version $(BOOST_VERSION) ; project boost : requirements include&&@CURRENT_INSTALLED_DIR@/include BOOST_ALL_NO_LIB=1 @$(__name__).tag @REQUIREMENTS@ ; rule boost-install ( libraries * ) { stagedir = [ option.get stagedir ] ; install stage : $(libraries) : $(stagedir)/lib ; } rule tag ( name : type ? : property-set ) { return [ boostcpp.tag $(name) : $(type) : $(property-set) ] ; } rule python-tag ( name : type ? : property-set ) { return [ tag $(name) : $(type) : $(property-set) ] ; } if "@PORT@" != "boost-system" { use-project /boost/system : . ; lib boost_system : : @CURRENT_INSTALLED_DIR@/lib/boost_system-vc140-mt.lib release ; lib boost_system : : @CURRENT_INSTALLED_DIR@/debug/lib/boost_system-vc140-mt-gd.lib debug ; explicit boost_system ; } if "@PORT@" != "boost-chrono" { use-project /boost/chrono : . ; lib boost_chrono : : @CURRENT_INSTALLED_DIR@/lib/boost_chrono-vc140-mt.lib release ; lib boost_chrono : : @CURRENT_INSTALLED_DIR@/debug/lib/boost_chrono-vc140-mt-gd.lib debug ; explicit boost_chrono ; } if "@PORT@" != "boost-regex" { use-project /boost/regex : . ; lib boost_regex : : @CURRENT_INSTALLED_DIR@/lib/boost_regex-vc140-mt.lib release ; lib boost_regex : : @CURRENT_INSTALLED_DIR@/debug/lib/boost_regex-vc140-mt-gd.lib debug ; explicit boost_regex ; } if "@PORT@" != "boost-date-time" { use-project /boost/date_time : . ; lib boost_date_time : : @CURRENT_INSTALLED_DIR@/lib/boost_date_time-vc140-mt.lib release -/boost/date_time//boost_date_time ; lib boost_date_time : : @CURRENT_INSTALLED_DIR@/debug/lib/boost_date_time-vc140-mt-gd.lib debug -/boost/date_time//boost_date_time ; explicit boost_date_time ; } if "@PORT@" != "boost-thread" { use-project /boost/thread : . ; lib boost_thread : : @CURRENT_INSTALLED_DIR@/lib/boost_thread-vc140-mt.lib release : : /boost/date_time//boost_date_time ; lib boost_thread : : @CURRENT_INSTALLED_DIR@/debug/lib/boost_thread-vc140-mt-gd.lib debug : : /boost/date_time//boost_date_time ; explicit boost_thread ; } if "@PORT@" != "boost-timer" { use-project /boost/timer : . ; lib boost_timer : : @CURRENT_INSTALLED_DIR@/lib/boost_timer-vc140-mt.lib release ; lib boost_timer : : @CURRENT_INSTALLED_DIR@/debug/lib/boost_timer-vc140-mt-gd.lib debug ; explicit boost_timer ; } if "@PORT@" != "boost-filesystem" { use-project /boost/filesystem : . ; lib boost_filesystem : : @CURRENT_INSTALLED_DIR@/lib/boost_filesystem-vc140-mt.lib release : : /boost/system//boost_system ; lib boost_filesystem : : @CURRENT_INSTALLED_DIR@/debug/lib/boost_filesystem-vc140-mt-gd.lib debug : : /boost/system//boost_system ; explicit boost_filesystem ; } if "@PORT@" != "boost-atomic" { use-project /boost/atomic : . ; lib boost_atomic : : @CURRENT_INSTALLED_DIR@/lib/boost_atomic-vc140-mt.lib release ; lib boost_atomic : : @CURRENT_INSTALLED_DIR@/debug/lib/boost_atomic-vc140-mt-gd.lib debug ; explicit boost_atomic ; } if "@PORT@" != "boost-context" { feature.feature segmented-stacks : on : optional propagated composite ; feature.compose on : BOOST_USE_SEGMENTED_STACKS ; use-project /boost/context : . ; lib boost_context : : @CURRENT_INSTALLED_DIR@/lib/boost_context-vc140-mt.lib release ; lib boost_context : : @CURRENT_INSTALLED_DIR@/debug/lib/boost_context-vc140-mt-gd.lib debug ; explicit boost_context ; } if "@PORT@" != "boost-test" { use-project /boost/test : . ; lib boost_unit_test_framework : : @CURRENT_INSTALLED_DIR@/lib/boost_unit_test_framework-vc140-mt.lib release ; lib boost_unit_test_framework : : @CURRENT_INSTALLED_DIR@/debug/lib/boost_unit_test_framework-vc140-mt-gd.lib debug ; explicit boost_unit_test_framework ; } 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 ;