From 29206dde683dcc7ec87ad30125c77efb92f52103 Mon Sep 17 00:00:00 2001 From: Rene Rivera Date: Wed, 17 Sep 2003 03:24:15 +0000 Subject: [PATCH] Fix missing paths when the "std::*-support", or any other requirements rule, modifies the requirements property set. [SVN r20083] --- boost-base.jam | 10 ++++------ v1/boost-base.jam | 10 ++++------ 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/boost-base.jam b/boost-base.jam index 8ecbc64ec..232e8e5cc 100644 --- a/boost-base.jam +++ b/boost-base.jam @@ -1843,13 +1843,15 @@ rule expand-target-subvariants ( target : local-build * : tools + : ) { properties = [ $(r) $(toolset) $(variant) : $(properties) ] ; } - properties = [ join $(properties) : $(SLASH) ] ; + # the rules may have modified the build request, reconstruct it + properties = [ expand-build-request $(toolset) $(variant) $(target) + : $(properties[2-]) : $(build-request) ] ; subvariants += $(target)|$(properties)|$(toolset)|$(variant) ; } } } - return $(subvariants) ; + return [ unique $(subvariants) ] ; } # Given an expanded subvariant of a terget, sets the various variables accordingly. @@ -2463,10 +2465,6 @@ rule force-NT-static-link ( pattern : toolset : subvariant-path properties * ) { if $(NT) && [ MATCH $(pattern) : $(toolset) ] { - local p = [ MATCH (.*)runtime-link-dynamic(.*) : $(subvariant-path) ] ; - - subvariant-path = $(p[1])runtime-link-static$(p[2]) ; - properties = [ difference $(properties) : dynamic ] static diff --git a/v1/boost-base.jam b/v1/boost-base.jam index 8ecbc64ec..232e8e5cc 100644 --- a/v1/boost-base.jam +++ b/v1/boost-base.jam @@ -1843,13 +1843,15 @@ rule expand-target-subvariants ( target : local-build * : tools + : ) { properties = [ $(r) $(toolset) $(variant) : $(properties) ] ; } - properties = [ join $(properties) : $(SLASH) ] ; + # the rules may have modified the build request, reconstruct it + properties = [ expand-build-request $(toolset) $(variant) $(target) + : $(properties[2-]) : $(build-request) ] ; subvariants += $(target)|$(properties)|$(toolset)|$(variant) ; } } } - return $(subvariants) ; + return [ unique $(subvariants) ] ; } # Given an expanded subvariant of a terget, sets the various variables accordingly. @@ -2463,10 +2465,6 @@ rule force-NT-static-link ( pattern : toolset : subvariant-path properties * ) { if $(NT) && [ MATCH $(pattern) : $(toolset) ] { - local p = [ MATCH (.*)runtime-link-dynamic(.*) : $(subvariant-path) ] ; - - subvariant-path = $(p[1])runtime-link-static$(p[2]) ; - properties = [ difference $(properties) : dynamic ] static