Merge "Handle foreach expressions in mk2rbc"

This commit is contained in:
Cole Faust
2021-12-16 21:16:49 +00:00
committed by Gerrit Code Review
3 changed files with 303 additions and 11 deletions

View File

@@ -1156,6 +1156,28 @@ def init(g, handle):
g["SOURCES"] = "foo.c bar.c"
g["OBJECTS"] = rblf.mkpatsubst("%.c", "%.o", g["SOURCES"])
g["OBJECTS2"] = rblf.mkpatsubst("%.c", "%.o", g["SOURCES"])
`,
},
{
desc: "foreach expressions",
mkname: "product.mk",
in: `
BOOT_KERNEL_MODULES := foo.ko bar.ko
BOOT_KERNEL_MODULES_FILTER := $(foreach m,$(BOOT_KERNEL_MODULES),%/$(m))
BOOT_KERNEL_MODULES_LIST := foo.ko
BOOT_KERNEL_MODULES_LIST += bar.ko
BOOT_KERNEL_MODULES_FILTER_2 := $(foreach m,$(BOOT_KERNEL_MODULES_LIST),%/$(m))
`,
expected: `load("//build/make/core:product_config.rbc", "rblf")
def init(g, handle):
cfg = rblf.cfg(handle)
g["BOOT_KERNEL_MODULES"] = "foo.ko bar.ko"
g["BOOT_KERNEL_MODULES_FILTER"] = ["%%/%s" % m for m in rblf.words(g["BOOT_KERNEL_MODULES"])]
g["BOOT_KERNEL_MODULES_LIST"] = ["foo.ko"]
g["BOOT_KERNEL_MODULES_LIST"] += ["bar.ko"]
g["BOOT_KERNEL_MODULES_FILTER_2"] = ["%%/%s" % m for m in g["BOOT_KERNEL_MODULES_LIST"]]
`,
},
}