Allow multiple patterns in rblf_wildcard

This is to match the functionality of make's $(wildcard)

Bug: 201700692
Test: go test
Change-Id: Ib20c4a4aa9642a2d76b5da5c7accd60e6b91c8fc
This commit is contained in:
Cole Faust 2021-12-08 11:07:17 -08:00
parent 1295bc5138
commit fdff6b1e9c
2 changed files with 17 additions and 1 deletions

View file

@ -533,7 +533,10 @@ def _require_artifacts_in_path_relaxed(paths, allowed_paths):
def _expand_wildcard(pattern): def _expand_wildcard(pattern):
"""Expands shell wildcard pattern.""" """Expands shell wildcard pattern."""
return rblf_wildcard(pattern) result = []
for word in __words(pattern):
result.extend(rblf_wildcard(word))
return result
def _mkdist_for_goals(g, goal, src_dst_list): def _mkdist_for_goals(g, goal, src_dst_list):
"""Implements dist-for-goals macro.""" """Implements dist-for-goals macro."""

View file

@ -59,6 +59,19 @@ assert_eq("foo.c no_folder", rblf.notdir("src/foo.c no_folder"))
assert_eq("", rblf.notdir("/")) assert_eq("", rblf.notdir("/"))
assert_eq("", rblf.notdir("")) assert_eq("", rblf.notdir(""))
assert_eq(
["build/make/tests/board.rbc", "build/make/tests/board_input_vars.rbc"],
rblf.expand_wildcard("build/make/tests/board*.rbc")
)
assert_eq(
["build/make/tests/run.rbc", "build/make/tests/product.rbc"],
rblf.expand_wildcard("build/make/tests/run.rbc build/make/tests/product.rbc")
)
assert_eq(
["build/make/tests/run.rbc"],
rblf.expand_wildcard("build/make/tests/run.rbc build/make/tests/nonexistent.rbc")
)
(globals, config, globals_base) = rblf.product_configuration("test/device", init, input_variables_init) (globals, config, globals_base) = rblf.product_configuration("test/device", init, input_variables_init)
assert_eq( assert_eq(
{ {