Loading mk2rbc/mk2rbc.go +2 −0 Original line number Diff line number Diff line Loading @@ -941,6 +941,8 @@ func (p *inheritProductCallParser) parse(ctx *parseContext, v mkparser.Node, arg func (ctx *parseContext) handleInclude(v *mkparser.Directive) []starlarkNode { loadAlways := v.Name[0] != '-' v.Args.TrimRightSpaces() v.Args.TrimLeftSpaces() return ctx.handleSubConfig(v, ctx.parseMakeString(v, v.Args), loadAlways, func(im inheritedModule) starlarkNode { return &includeNode{im, loadAlways} }) Loading mk2rbc/mk2rbc_test.go +25 −0 Original line number Diff line number Diff line Loading @@ -192,6 +192,31 @@ def init(g, handle): `, }, { desc: "Include with trailing whitespace", mkname: "product.mk", in: ` # has a trailing whitespace after cfg.mk include vendor/$(foo)/cfg.mk `, expected: `# has a trailing whitespace after cfg.mk load("//build/make/core:product_config.rbc", "rblf") load("//vendor/foo1:cfg.star|init", _cfg_init = "init") load("//vendor/bar/baz:cfg.star|init", _cfg1_init = "init") def init(g, handle): cfg = rblf.cfg(handle) _entry = { "vendor/foo1/cfg.mk": ("vendor/foo1/cfg", _cfg_init), "vendor/bar/baz/cfg.mk": ("vendor/bar/baz/cfg", _cfg1_init), }.get("vendor/%s/cfg.mk" % _foo) (_varmod, _varmod_init) = _entry if _entry else (None, None) if not _varmod_init: rblf.mkerror("product.mk", "Cannot find %s" % ("vendor/%s/cfg.mk" % _foo)) _varmod_init(g, handle) `, }, { desc: "Synonymous inherited configurations", mkname: "path/product.mk", Loading Loading
mk2rbc/mk2rbc.go +2 −0 Original line number Diff line number Diff line Loading @@ -941,6 +941,8 @@ func (p *inheritProductCallParser) parse(ctx *parseContext, v mkparser.Node, arg func (ctx *parseContext) handleInclude(v *mkparser.Directive) []starlarkNode { loadAlways := v.Name[0] != '-' v.Args.TrimRightSpaces() v.Args.TrimLeftSpaces() return ctx.handleSubConfig(v, ctx.parseMakeString(v, v.Args), loadAlways, func(im inheritedModule) starlarkNode { return &includeNode{im, loadAlways} }) Loading
mk2rbc/mk2rbc_test.go +25 −0 Original line number Diff line number Diff line Loading @@ -192,6 +192,31 @@ def init(g, handle): `, }, { desc: "Include with trailing whitespace", mkname: "product.mk", in: ` # has a trailing whitespace after cfg.mk include vendor/$(foo)/cfg.mk `, expected: `# has a trailing whitespace after cfg.mk load("//build/make/core:product_config.rbc", "rblf") load("//vendor/foo1:cfg.star|init", _cfg_init = "init") load("//vendor/bar/baz:cfg.star|init", _cfg1_init = "init") def init(g, handle): cfg = rblf.cfg(handle) _entry = { "vendor/foo1/cfg.mk": ("vendor/foo1/cfg", _cfg_init), "vendor/bar/baz/cfg.mk": ("vendor/bar/baz/cfg", _cfg1_init), }.get("vendor/%s/cfg.mk" % _foo) (_varmod, _varmod_init) = _entry if _entry else (None, None) if not _varmod_init: rblf.mkerror("product.mk", "Cannot find %s" % ("vendor/%s/cfg.mk" % _foo)) _varmod_init(g, handle) `, }, { desc: "Synonymous inherited configurations", mkname: "path/product.mk", Loading