diff --git a/v1/boost-base.jam b/v1/boost-base.jam index ed03c8e73..2b46ca981 100644 --- a/v1/boost-base.jam +++ b/v1/boost-base.jam @@ -903,23 +903,31 @@ rule set-target-variables ( targets * ) # directory. rule fixup-path-properties ( properties * : subproject-directory ? ) { - if $(subproject-directory) + local result ; + + for local p in $(properties) { - local result ; - for local p in $(properties) + if $(p:G) in $(gPATH_FEATURES) { - if $(p:G) in $(gPATH_FEATURES) + # If the path property value is project-relative, re-root + # it appropriately for that project + local parse-project = [ MATCH ^@([^/$(SLASH)]+)[/$(SLASH)]?(.*) : $(p:G=) ] ; + if $(parse-project) { - result += [ root-paths $(p) : $(subproject-directory) ] ; + local project = $(parse-project[1]) ; + local subproject = $(parse-project[2]) ; + p = [ root-paths $(subproject:G=$(p:G)) : $(gPROJECT($(project))) ] ; } - else + else if $(subproject-directory) # re-root it relative to this directory { - result += $(p) ; + p = [ root-paths $(p) : $(subproject-directory) ] ; } } - properties = $(result) ; + + result += $(p) ; } - return $(properties) ; + + return $(result) ; } # remove-incompatible-builds requirements... : build-request... : target-name diff --git a/v1/python.jam b/v1/python.jam index 8b4c7bb15..bcf9c5fd9 100644 --- a/v1/python.jam +++ b/v1/python.jam @@ -36,7 +36,7 @@ if $(PYTHON_WINDOWS) PYTHON_PROPERTIES ?= select-nt-python-includes dynamic - $(BOOST_ROOT) + @boost <$(gcc-compilers)><*>USE_DL_IMPORT ; @@ -267,7 +267,7 @@ rule select-nt-python-includes ( toolset variant : properties * ) } PYTHON_PROPERTIES += - $(BOOST_ROOT) + @boost on select-python-library ; @@ -276,7 +276,7 @@ BOOST_PYTHON_V2_PROPERTIES = $(PYTHON_PROPERTIES) <*>"-inline deferred" <*>"-inline deferred" # added for internal testing purposes - <*>$(BOOST_ROOT)/boost/compatibility/cpp_c_headers + <*>@boost/boost/compatibility/cpp_c_headers BOOST_PYTHON_DYNAMIC_LIB ;