mirror of
https://codeberg.org/libreboot/lbmk.git
synced 2026-07-18 04:22:15 +02:00
build/roms: improved error handling for roms
the rom functions print a path to the rom they built, which is then used, but these are called inside what are essentially subshells, and we had no error handling Signed-off-by: Leah Rowe <leah@libreboot.org>
This commit is contained in:
+16
-7
@@ -262,11 +262,18 @@ build_grub_roms()
|
|||||||
payload1="${2}" # allow values: grub, seabios, seabios_withgrub
|
payload1="${2}" # allow values: grub, seabios, seabios_withgrub
|
||||||
|
|
||||||
grub_cbfs="fallback/payload"
|
grub_cbfs="fallback/payload"
|
||||||
[ "$payload1" = "grub" ] && [ "$payload_grub_withseabios" = "y" ] \
|
if [ "$payload1" = "grub" ] && [ "$payload_grub_withseabios" = "y" ]
|
||||||
&& x_ mv "$(mkSeabiosRom "$tmprom" "seabios.elf")" "$tmprom"
|
then
|
||||||
[ "$payload1" != "grub" ] && [ "$payload_seabios_withgrub" = "y" ] \
|
_tmpmvrom=$(mkSeabiosRom "$tmprom" "seabios.elf") || \
|
||||||
&& grub_cbfs="img/grub2" && \
|
err "build_grub_roms 1 $board: can't build tmprom"
|
||||||
x_ mv "$(mkSeabiosRom "$tmprom" fallback/payload)" "$tmprom"
|
x_ mv "$_tmpmvrom" "$tmprom"
|
||||||
|
elif [ "$payload1" != "grub" ] && [ "$payload_seabios_withgrub" = "y" ]
|
||||||
|
then
|
||||||
|
grub_cbfs="img/grub2"
|
||||||
|
_tmpmvrom=$(mkSeabiosRom "$tmprom" fallback/payload) || \
|
||||||
|
err "build_grub_roms 2 $board: can't build tmprom"
|
||||||
|
x_ mv "$_tmpmvrom" "$tmprom"
|
||||||
|
fi
|
||||||
|
|
||||||
# we only need insert grub.elf once, for each coreboot config:
|
# we only need insert grub.elf once, for each coreboot config:
|
||||||
x_ "${cbfstool}" "${tmprom}" add-payload -f "${grubelf}" \
|
x_ "${cbfstool}" "${tmprom}" add-payload -f "${grubelf}" \
|
||||||
@@ -302,7 +309,8 @@ build_grub_roms()
|
|||||||
[ -f "${keymapfile}" ] || continue
|
[ -f "${keymapfile}" ] || continue
|
||||||
keymap="${keymapfile##*/}"
|
keymap="${keymapfile##*/}"
|
||||||
keymap="${keymap%.gkb}"
|
keymap="${keymap%.gkb}"
|
||||||
tmpgrubrom="$(mkGrubRom "${keymap}" "${tmprom}")"
|
tmpgrubrom=$(mkGrubRom "${keymap}" "${tmprom}") || \
|
||||||
|
err "build_grub_roms ${board}: could not create tmprom"
|
||||||
|
|
||||||
newrom="${romdir}/${payload1}_${board}_${initmode}_"
|
newrom="${romdir}/${payload1}_${board}_${initmode}_"
|
||||||
newrom="${newrom}${displaymode}_${keymap}.rom"
|
newrom="${newrom}${displaymode}_${keymap}.rom"
|
||||||
@@ -374,7 +382,8 @@ mkSeabiosGrubonlyRom()
|
|||||||
|
|
||||||
build_uboot_roms()
|
build_uboot_roms()
|
||||||
{
|
{
|
||||||
tmprom="$(mkUbootRom "${cbrom}" "fallback/payload")"
|
tmprom=$(mkUbootRom "${cbrom}" "fallback/payload") || \
|
||||||
|
err "build_uboot_roms $board: could not create tmprom"
|
||||||
newrom="${romdir}/uboot_payload_${board}_${initmode}_${displaymode}.rom"
|
newrom="${romdir}/uboot_payload_${board}_${initmode}_${displaymode}.rom"
|
||||||
x_ moverom "${tmprom}" "${newrom}"
|
x_ moverom "${tmprom}" "${newrom}"
|
||||||
x_ rm -f "${tmprom}"
|
x_ rm -f "${tmprom}"
|
||||||
|
|||||||
Reference in New Issue
Block a user