mirror of
https://github.com/boostorg/build.git
synced 2026-02-15 13:02:11 +00:00
changed translate-indirect to skip rules, that are already in indirect format. This allows e.g. to make use of the -<tag> to remove already set tag feature.
[SVN r40676]
This commit is contained in:
@@ -455,19 +455,29 @@ rule translate-indirect ( specification * : context-module )
|
||||
local m = [ MATCH ^@(.+) : $(p:G=) ] ;
|
||||
if $(m)
|
||||
{
|
||||
if ! [ MATCH ".*([.]).*" : $(m) ]
|
||||
local v ;
|
||||
if [ MATCH "^([^%]*)%([^%]+)$" : $(m) ]
|
||||
{
|
||||
# This is unqualified rule name. The user might want
|
||||
# to set flags on this rule name, and toolset.flag
|
||||
# auto-qualifies the rule name. Need to do the same
|
||||
# here so set flag setting work.
|
||||
# We can arrange for toolset.flag to *not* auto-qualify
|
||||
# the argument, but then two rules defined in two Jamfiles
|
||||
# will conflict.
|
||||
m = $(context-module).$(m) ;
|
||||
# Rule is already in indirect format
|
||||
v = $(m) ;
|
||||
}
|
||||
|
||||
local v = [ indirect.make $(m) : $(context-module) ] ;
|
||||
else
|
||||
{
|
||||
if ! [ MATCH ".*([.]).*" : $(m) ]
|
||||
{
|
||||
# This is unqualified rule name. The user might want
|
||||
# to set flags on this rule name, and toolset.flag
|
||||
# auto-qualifies the rule name. Need to do the same
|
||||
# here so set flag setting work.
|
||||
# We can arrange for toolset.flag to *not* auto-qualify
|
||||
# the argument, but then two rules defined in two Jamfiles
|
||||
# will conflict.
|
||||
m = $(context-module).$(m) ;
|
||||
}
|
||||
|
||||
v = [ indirect.make $(m) : $(context-module) ] ;
|
||||
}
|
||||
|
||||
v = @$(v) ;
|
||||
result += $(v:G=$(p:G)) ;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user