summaryrefslogtreecommitdiff
path: root/script
diff options
context:
space:
mode:
authorLeah Rowe <leah@libreboot.org>2023-10-02 04:12:30 +0100
committerLeah Rowe <leah@libreboot.org>2023-10-02 04:16:43 +0100
commit0a711ebc6697b977349ab19b75d42706c2f1dd8f (patch)
tree1cae28bd8730482987dc1f428bed5ac3f1039c4f /script
parent7ce3f93e4492e583f5a27eb5cc66648fd2044f34 (diff)
build/coreboot/utils: simplify argument handling
Signed-off-by: Leah Rowe <leah@libreboot.org>
Diffstat (limited to 'script')
-rwxr-xr-xscript/build/coreboot/utils43
1 files changed, 18 insertions, 25 deletions
diff --git a/script/build/coreboot/utils b/script/build/coreboot/utils
index 9dddc440..ad771c03 100755
--- a/script/build/coreboot/utils
+++ b/script/build/coreboot/utils
@@ -6,48 +6,41 @@
set -u -e
. "include/err.sh"
+. "include/option.sh"
main()
{
printf "Building coreboot utils\n"
-
- if [ $# -gt 0 ]; then
- for board in "${@}"; do
- x_ build_for_mainboard ${board}
- done
- else
- for boarddir in config/coreboot/*; do
- [ ! -d "${boarddir}" ] && continue
- x_ build_for_mainboard ${boarddir##*/}
- done
- fi
+ target="${@}"
+ [ $# -gt 0 ] || target=$(listitems config/coreboot) || err "!targets"
+ for x in ${target}; do
+ x_ build_for_mainboard ${x}
+ done
}
build_for_mainboard() {
- board="${1}"
- [ -d "config/coreboot/${board}" ] || \
- err "build_for_mainboard ${board}: boarddir does not exist"
- [ -f "config/coreboot/${board}/target.cfg" ] || \
- err "build_for_mainboard ${board}: target.cfg does not exist"
+ [ -d "config/coreboot/${1}" ] || \
+ err "build_for_mainboard ${1}: board dir does not exist"
+ [ -f "config/coreboot/${1}/target.cfg" ] || \
+ err "build_for_mainboard ${1}: target.cfg does not exist"
tree="undefined"
- . "config/coreboot/${board}/target.cfg" # source
+ . "config/coreboot/${1}/target.cfg" # source
[ "${tree}" = "undefined" ] && \
- err "build_for_mainboard ${board}: improper tree definition"
+ err "build_for_mainboard ${1}: improper tree definition"
buildutils "${tree}"
}
buildutils() {
- tree="${1}"
- [ -d "coreboot/${tree}/" ] || \
- x_ ./update project trees coreboot ${tree}
+ [ -d "coreboot/${1}/" ] || \
+ x_ ./update project trees coreboot ${1}
for util in cbfstool ifdtool; do
- [ -f "cbutils/${tree}/${util}" ] && continue
- [ -d "cbutils/${tree}" ] || x_ mkdir -p "cbutils/${tree}"
+ [ -f "cbutils/${1}/${util}" ] && continue
+ [ -d "cbutils/${1}" ] || x_ mkdir -p "cbutils/${1}"
- utildir="coreboot/${tree}/util/${util}"
+ utildir="coreboot/${1}/util/${util}"
x_ make distclean -C "${utildir}"
x_ make -j$(nproc) -C "${utildir}"
- x_ cp "${utildir}/${util}" "cbutils/${tree}"
+ x_ cp "${utildir}/${util}" "cbutils/${1}"
x_ make distclean -C "${utildir}"
done
}