Ticket #3544: boost_build_pythonid.patch
File boost_build_pythonid.patch, 2.7 KB (added by , 13 years ago) |
---|
-
Jamroot
old new 339 339 constant BUILD_ID : [ regex.replace $(build-id) "[*\\/:.\"\' ]" "_" ] ; 340 340 } 341 341 342 # Python build id (only for Python libraries) 343 local python-id = [ MATCH "^--pythonid=(.*)" : [ modules.peek : ARGV ] ] ; 344 if $(python-id) 345 { 346 constant PYTHON_ID : [ regex.replace $(python-id) "[*\\/:.\"\']" "_" ] ; 347 } 342 348 343 349 # This rule is called by Boost.Build to determine the name of target. We use it 344 350 # to encode the build variant, compiler name and boost version in the target -
libs/python/build/Jamfile.v2
old new 3 3 # file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 4 4 5 5 import os ; 6 import indirect ; 6 7 import modules ; 7 8 8 9 import python ; … … 24 25 25 26 project boost/python 26 27 : source-location ../src 28 : requirements 29 -<tag>@$(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).tag 30 <tag>@$(__name__).tag 27 31 ; 28 32 33 rule tag ( name : type ? : property-set ) 34 { 35 local result = $(name) ; 36 if $(type) in STATIC_LIB SHARED_LIB IMPORT_LIB 37 { 38 if $(name) = boost_python && $(PYTHON_ID) 39 { 40 result = $(result)-$(PYTHON_ID) ; 41 } 42 } 43 44 # forward to the boost tagging rule 45 return [ indirect.call $(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).tag 46 $(result) : $(type) : $(property-set) ] ; 47 } 48 29 49 rule cond ( test ? : yes * : no * ) { if $(test) { return $(yes) ; } else { return $(no) ; } } 30 50 rule unless ( test ? : yes * : no * ) { if ! $(test) { return $(yes) ; } else { return $(no) ; } } 31 51 -
libs/mpi/build/Jamfile.v2
old new 9 9 # Andrew Lumsdaine 10 10 11 11 import mpi ; 12 import indirect ; 12 13 import python ; 13 14 14 15 libraries = ; … … 18 19 19 20 project boost/mpi 20 21 : source-location ../src 22 : requirements 23 -<tag>@$(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).tag 24 <tag>@$(__name__).tag 21 25 ; 22 26 27 rule tag ( name : type ? : property-set ) 28 { 29 local result = $(name) ; 30 if $(type) in STATIC_LIB SHARED_LIB IMPORT_LIB 31 { 32 if $(name) = boost_mpi_python && $(PYTHON_ID) 33 { 34 result = $(result)-$(PYTHON_ID) ; 35 } 36 } 37 38 # forward to the boost tagging rule 39 return [ indirect.call $(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).tag 40 $(result) : $(type) : $(property-set) ] ; 41 } 42 23 43 lib boost_mpi 24 44 : 25 45 broadcast.cpp