summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xinclude/boot.sh13
-rwxr-xr-xscript/build/boot/roms14
-rwxr-xr-xscript/build/boot/roms_helper28
3 files changed, 24 insertions, 31 deletions
diff --git a/include/boot.sh b/include/boot.sh
index c8df74a5..fe058ecb 100755
--- a/include/boot.sh
+++ b/include/boot.sh
@@ -3,11 +3,12 @@
# SPDX-FileCopyrightText: 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com>
# SPDX-FileCopyrightText: 2023 Leah Rowe <leah@libreboot.org>
+first=""
board=""
boards=""
-displaymodes=""
-payloads=""
-keyboard_layouts=""
+_displaymode=""
+_payload=""
+_keyboard_layout=""
main()
{
@@ -21,13 +22,13 @@ main()
while [ $# -gt 0 ]; do
case ${1} in
-d)
- displaymodes="${2} ${displaymodes}"
+ _displaymode="${2}"
shift ;;
-p)
- payloads="${2} ${payloads}"
+ _payload="${2}"
shift ;;
-k)
- keyboard_layouts="${2} ${keyboard_layouts}"
+ _keyboard_layout="${2}"
shift ;;
all)
first="all" ;;
diff --git a/script/build/boot/roms b/script/build/boot/roms
index d4261757..39c0eed6 100755
--- a/script/build/boot/roms
+++ b/script/build/boot/roms
@@ -13,18 +13,16 @@ set -u -e
. "include/boot.sh"
read projectname < projectname
-opts=""
-first=""
targets=""
# main() is in include/boot.sh
handle_targets()
{
- [ -z "${displaymodes}" ] || opts="-d \"${displaymodes}\" ${opts}"
- [ -z "${payloads}" ] || opts="-p \"${payloads}\" ${opts}"
- [ -z "${keyboard_layouts}" ] || \
- opts="-k \"${keyboard_layouts}\" ${opts}"
+ [ -z "${_displaymode}" ] || _displaymode="-d ${_displaymode}"
+ [ -z "${_payload}" ] || _payload="-p ${_payload}"
+ [ -z "${_keyboard_layout}" ] || \
+ _keyboard_layout="-k ${_keyboard_layout}"
printf "Building %s ROM images\n" "${projectname}"
@@ -46,8 +44,10 @@ check_targets()
build_bootroms()
{
+ opts="${_displaymode} ${_payload} ${_keyboard_layout}"
for x in ${boards}; do
- ./build boot roms_helper ${opts} ${x} || \
+ ./build boot roms_helper ${_displaymode} ${_payload} \
+ ${_keyboard_layout} ${x} || \
err "handle_targets ${opts} ${x}: build error"
[ -d "bin/${x}" ] && targets="${x} ${targets}"
done
diff --git a/script/build/boot/roms_helper b/script/build/boot/roms_helper
index 96b44940..a92012e1 100755
--- a/script/build/boot/roms_helper
+++ b/script/build/boot/roms_helper
@@ -63,9 +63,6 @@ handle_targets()
configure_target()
{
- printf "\n\nboard %s, kb %s, displaymode %s, payloads %s\n" \
- "${board}" "${keyboard_layouts}" "${displaymodes}" "${payloads}"
-
targetdir="${cfgsdir}/${board}"
[ -d "${targetdir}" ] || \
@@ -121,8 +118,8 @@ configure_target()
blobs_required="y"
# Override all payload directives with cmdline args
- if [ ! -z ${payloads} ]; then
- printf "setting payloads %s\n" "$payloads"
+ if [ ! -z ${_payload} ]; then
+ printf "setting payload to: %s\n" "${_payload}"
payload_grub="n"
payload_grub_withseabios="n" # seabios chainloaded from grub
payload_seabios="n"
@@ -130,9 +127,7 @@ configure_target()
payload_uboot="n"
payload_memtest="n"
- for payload in ${payloads} ; do
- eval "payload_${payload}=y"
- done
+ eval "payload_${_payload}=y"
fi
}
@@ -217,7 +212,7 @@ build_target()
hmode="vesafb"
[ "${initmode}" = "vgarom" ] || hmode="corebootfb"
modes="${hmode} txtmode"
- [ -z ${displaymodes} ] || modes="${displaymodes}"
+ [ -z ${_displaymode} ] || modes="${_displaymode}"
for y in ${modes}; do
displaymode="${y}"
[ "${initmode}" = "normal" ] && \
@@ -356,15 +351,12 @@ build_grub_roms() {
rm -f "${tmpcfg}" || err "cannot delete tmpcfg"
keymaps=""
- if [ -z ${keyboard_layouts} ]; then
- for kmapfile in "${kmapdir}"/*; do
- keymaps="${keymaps} ${kmapfile}"
- done
- else
- for keymapname in ${keyboard_layouts}; do
- keymaps="${keymaps} ${kmapdir}/${keymapname}.gkb"
- done
- fi
+ for kmapfile in "${kmapdir}"/*; do
+ keymaps="${keymaps} ${kmapfile}"
+ done
+ [ -z ${_keyboard_layout} ] || \
+ keymaps="${kmapdir}/${_keyboard_layout}.gkb"
+
for keymapfile in ${keymaps}; do
printf "keymaps is %s, keymapfile is %s\n" \
"${keymaps}" "${keymapfile}"