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 | |
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')
-rw-r--r-- | include/lib.sh | 8 | ||||
-rw-r--r-- | include/vendor.sh | 4 |
2 files changed, 9 insertions, 3 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; : +} diff --git a/include/vendor.sh b/include/vendor.sh index a6e82271..ea1d4f0a 100644 --- a/include/vendor.sh +++ b/include/vendor.sh @@ -48,9 +48,7 @@ readkconfig() bootstrap() { x_ ./mk -f coreboot ${cbdir##*/} - for d in uefitool biosutilities bios_extract; do - x_ ./mk -b "$d" - done + mk -b uefitool biosutilities bios_extract [ -d "${kbc1126_ec_dump%/*}" ] && x_ make -C "$cbdir/util/kbc1126" [ -n "$MRC_refcode_cbtree" ] && \ cbfstoolref="elf/cbfstool/$MRC_refcode_cbtree/cbfstool" && \ |