Fix filter-out being negated in rbc product configuration

Bug: 201700692
Test: go test
Change-Id: I3245e33dc88dd2e456a24780c8cc20ed605d67a6
This commit is contained in:
Cole Faust
2021-12-06 16:23:51 -08:00
parent a4fc08d204
commit eec0d8137e
2 changed files with 5 additions and 3 deletions

View File

@@ -1111,10 +1111,8 @@ func (ctx *parseContext) parseCompareSpecialCases(directive *mkparser.Directive,
}
switch call.name {
case "filter":
case "filter", "filter-out":
return ctx.parseCompareFilterFuncResult(directive, call, value, isEq), true
case "filter-out":
return ctx.parseCompareFilterFuncResult(directive, call, value, !isEq), true
case "wildcard":
return ctx.parseCompareWildcardFuncResult(directive, call, value, !isEq), true
case "findstring":

View File

@@ -390,6 +390,8 @@ endif
ifeq (,$(filter barbet coral%,$(TARGET_PRODUCT)))
else ifneq (,$(filter barbet%,$(TARGET_PRODUCT)))
endif
ifeq (,$(filter-out sunfish_kasan, $(TARGET_PRODUCT)))
endif
`,
expected: `load("//build/make/core:product_config.rbc", "rblf")
@@ -409,6 +411,8 @@ def init(g, handle):
pass
elif rblf.filter("barbet%", g["TARGET_PRODUCT"]):
pass
if not rblf.filter_out("sunfish_kasan", g["TARGET_PRODUCT"]):
pass
`,
},
{