diff options
author | Leah Rowe <leah@libreboot.org> | 2024-07-28 13:30:25 +0100 |
---|---|---|
committer | Leah Rowe <leah@libreboot.org> | 2024-07-28 13:35:31 +0100 |
commit | 59894ed555ecccf0346a7942e208171a21412d9b (patch) | |
tree | 46f4cc65d65a2c6240876ba724cee521a2fe2992 /include/lib.sh | |
parent | 7fa6052de036f81b54a93bf2f707f563205f176b (diff) |
lib.sh: new function mk() to handle trees in bulk
single-tree projects cannot be handled in bulk, e.g.
./mk -f project1 project2 project3
that is still the case, from the shell, but internally
it is now possible:
mk -f project1 project2 project3
mk() is a function that simply handles the given flag,
and all projects specified.
it does not handle cases without argument, for example
you cannot do:
mk -f
arguments must be provided. it can be used internally,
to simplify cases where multiple single-tree projects
must be handled, but *also* allows multi-tree projects
to be specified, without being able to actually handle
trees within that multi-tree project; so for example,
you can only specify coreboot, and then it would run
on every coreboot tree.
Signed-off-by: Leah Rowe <leah@libreboot.org>
Diffstat (limited to 'include/lib.sh')
-rw-r--r-- | include/lib.sh | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/include/lib.sh b/include/lib.sh index 586ecde1..2c9cd0d4 100644 --- a/include/lib.sh +++ b/include/lib.sh @@ -212,3 +212,11 @@ cbfs() lzma="-c lzma" && [ $# -gt 3 ] && lzma="-t raw" x_ "$cbfstool" "$1" $ccmd -f "$2" -n "$3" $lzma } + +mk() +{ + mk_flag="$1" || $err "No argument given" + shift 1 && for mk_arg in $@; do + ./mk $mk_flag $mk_arg || $err "./mk $mk_flag $mk_arg"; : + done; : +} |