Merge "Flag 'override' directives." am: 2a8105d19e

Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1887515

Change-Id: Ib6640605a722410a026c710dc2bab66d45bf7f0e
This commit is contained in:
Treehugger Robot 2021-11-11 03:34:38 +00:00 committed by Automerger Merge Worker
commit 5f46e246aa
2 changed files with 23 additions and 0 deletions

View file

@ -540,6 +540,14 @@ func (ctx *parseContext) handleAssignment(a *mkparser.Assignment) {
return
}
name := a.Name.Strings[0]
// The `override` directive
// override FOO :=
// is parsed as an assignment to a variable named `override FOO`.
// There are very few places where `override` is used, just flag it.
if strings.HasPrefix(name, "override ") {
ctx.errorf(a, "cannot handle override directive")
}
// Soong configuration
if strings.HasPrefix(name, soongNsPrefix) {
ctx.handleSoongNsAssignment(strings.TrimPrefix(name, soongNsPrefix), a)

View file

@ -1025,6 +1025,21 @@ load("//build/make/core:product_config.rbc", "rblf")
def init(g, handle):
cfg = rblf.cfg(handle)
rblf.warning("product.mk", "partially successful conversion")
`,
},
{
desc: "Flag override",
mkname: "product.mk",
in: `
override FOO:=`,
expected: `# MK2RBC TRANSLATION ERROR: cannot handle override directive
# override FOO :=
load("//build/make/core:product_config.rbc", "rblf")
def init(g, handle):
cfg = rblf.cfg(handle)
g["override FOO"] = ""
rblf.warning("product.mk", "partially successful conversion")
`,
},
}