Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a32f556a authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "Handle include statements with trailing whitespace" into main

parents 6bc88ae1 b0b24578
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -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}
	})
+25 −0
Original line number Diff line number Diff line
@@ -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",