diff options
author | Leah Rowe <leah@libreboot.org> | 2023-09-30 16:14:27 +0100 |
---|---|---|
committer | Leah Rowe <leah@libreboot.org> | 2023-09-30 16:14:27 +0100 |
commit | 49b266eb4248f87d111e9babae86a873300afa03 (patch) | |
tree | 91a5e024849c127077a26ba8dc2d9137f1b176c3 /script/build | |
parent | d268f5eb28bc95b2d72bae022fce1768a5cb7147 (diff) |
build/boot/roms: only do 1 custom kbd/payload/mode
-k, -p and -d let you set keymap, payload and displaymode
respectively, but the handling for this is buggy when
passing multiple arguments.
Support only one argument, for simplicity. This is how
people use them anyway, and it makes lbmk less buggy.
Signed-off-by: Leah Rowe <leah@libreboot.org>
Diffstat (limited to 'script/build')
-rwxr-xr-x | script/build/boot/roms | 14 | ||||
-rwxr-xr-x | script/build/boot/roms_helper | 28 |
2 files changed, 17 insertions, 25 deletions
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}" |