build/boot/roms: reduced code indentation

fsdg20230625
Leah Rowe 2023-05-13 00:13:54 +01:00
parent 9eee0fb483
commit 3bd82b7679
2 changed files with 123 additions and 116 deletions

View File

@ -36,53 +36,53 @@ firstoption="${1}"
main() main()
{ {
if [ $# -gt 0 ]; then if [ $# -lt 1 ]; then
if [ "${firstoption}" = "help" ]; then usage
usage exit 1
exit 0 fi
fi
if [ "${firstoption}" = "list" ]; then
listboards
exit 0
fi
while [ $# -gt 0 ]; do if [ "${firstoption}" = "help" ]; then
case ${1} in usage
-d) exit 0
opts="${opts} -d ${2}" fi
shift ;; if [ "${firstoption}" = "list" ]; then
-p) listboards
opts="${opts} -p ${2}" exit 0
shift ;; fi
-k)
opts="${opts} -k ${2}" while [ $# -gt 0 ]; do
shift ;; case ${1} in
*) -d)
boards="${boards} ${1} " ;; opts="${opts} -d ${2}"
esac shift ;;
shift -p)
done opts="${opts} -p ${2}"
shift ;;
-k)
opts="${opts} -k ${2}"
shift ;;
*)
boards="${boards} ${1} " ;;
esac
shift
done
if [ -z ${opts+x} ]; then if [ -z ${opts+x} ]; then
opts="" opts=""
fi fi
printf "Building %s ROM images\n" "${projectname}" printf "Building %s ROM images\n" "${projectname}"
if [ "${firstoption}" = "all" ]; then if [ "${firstoption}" = "all" ]; then
for boardname in $(listboards); do for boardname in $(listboards); do
buildrom "${boardname}" \ buildrom "${boardname}" \
|| die "build/roms: error" || die "build/roms: error"
done done
else
for board in ${boards}; do
buildrom "${board}" \
|| die "build/roms: error"
done
fi
else else
usage for board in ${boards}; do
exit 1 buildrom "${board}" \
|| die "build/roms: error"
done
fi fi
printf "\n\nDone! Your ROMs are in bin/\n\n" printf "\n\nDone! Your ROMs are in bin/\n\n"

View File

@ -180,19 +180,21 @@ load_config()
load_config_overrides() load_config_overrides()
{ {
# Override all payload directives with cmdline args # Override all payload directives with cmdline args
if [ ! -z ${payloads} ]; then if [ -z ${payloads} ]; then
echo "setting payloads $payloads" return 0
payload_grub="n" fi
payload_grub_withseabios="n" # seabios chainloaded from grub
payload_seabios="n"
payload_seabios_withgrub="n" # grub from SeaBIOS menu
payload_uboot="n"
payload_memtest="n"
for payload in ${payloads} ; do echo "setting payloads $payloads"
eval "payload_${payload}=y" payload_grub="n"
done payload_grub_withseabios="n" # seabios chainloaded from grub
fi payload_seabios="n"
payload_seabios_withgrub="n" # grub from SeaBIOS menu
payload_uboot="n"
payload_memtest="n"
for payload in ${payloads} ; do
eval "payload_${payload}=y"
done
} }
die_if_cbconfig_and_nopayload() die_if_cbconfig_and_nopayload()
@ -201,17 +203,20 @@ die_if_cbconfig_and_nopayload()
# defined in the lbmk config, exit with error # defined in the lbmk config, exit with error
# if no configs exist, this won't fail. this way, cbtrees # if no configs exist, this won't fail. this way, cbtrees
# like "default" can exist which just contain patches # like "default" can exist which just contain patches
if [ "${payload_grub}" != "y" ] && [ "${payload_seabios}" != "y" ] \
&& [ "${payload_uboot}" != "y" ]; then if [ "${payload_grub}" = "y" ] || [ "${payload_seabios}" = "y" ] \
for configfile in "${boardcfgdir}/config/"*; do || [ "${payload_uboot}" = "y" ]; then
if [ ! -e "${configfile}" ]; then return 0
continue
fi
printf "build/roms %s: Payload undefined. Exiting.\n" \
${board}
exit 1
done
fi fi
for configfile in "${boardcfgdir}/config/"*; do
if [ ! -e "${configfile}" ]; then
continue
fi
printf "build/roms %s: Payload undefined. Exiting.\n" \
${board}
exit 1
done
} }
build_dependencies() build_dependencies()
@ -282,72 +287,74 @@ build_dependency_seabios()
./build payload seabios ./build payload seabios
fi fi
fi fi
if [ "${payload_memtest}" = "y" ]; then if [ "${payload_memtest}" = "y" ] && [ ! -f "memtest86plus/memtest" ]
if [ ! -f "memtest86plus/memtest" ]; then then
./build module memtest86plus ./build module memtest86plus
fi
fi fi
} }
build_dependency_grub() build_dependency_grub()
{ {
if [ "${payload_grub}" = "y" ] \ if [ "${payload_grub}" != "y" ] \
|| [ "${payload_seabios_withgrub}" = "y" ] && [ "${payload_seabios_withgrub}" != "y" ]; then
then return 0
if [ -f "payload/grub/grub_usqwerty.cfg" ]; then
sha1cmd="sha1sum resources/grub/config/grub.cfg"
grubrefchecksum="$(${sha1cmd} | awk '{print $1}')"
sha1cmd="sha1sum payload/grub/grub_usqwerty.cfg"
grubsha1="$(${sha1cmd} | awk '{print $1}')"
if [ "${grubrefchecksum}" != "${grubsha1}" ]; then
rm -Rf payload/grub/
printf "GRUB change detected. Rebuilding:\n"
fi
else
printf "GRUB payloads needed. Building:\n"
rm -Rf payload/grub/ # just in case
fi
for keymapfile in ${kmapdir}/*; do
if [ ! -f "${keymapfile}" ]; then
continue
fi
keymap="${keymapfile##*/}"
keymap="${keymap%.gkb}"
grubelf="payload/grub/grub_${keymap}.elf"
grubcfg="payload/grub/grub_${keymap}.cfg"
grubtestcfg="payload/grub/grub_${keymap}_test.cfg"
if [ ! -f "${grubelf}" ] || [ ! -f "${grubcfg}" ] || \
[ ! -f "${grubtestcfg}" ]; then
./build payload grub
fi
done
fi fi
if [ -f "payload/grub/grub_usqwerty.cfg" ]; then
sha1cmd="sha1sum resources/grub/config/grub.cfg"
grubrefchecksum="$(${sha1cmd} | awk '{print $1}')"
sha1cmd="sha1sum payload/grub/grub_usqwerty.cfg"
grubsha1="$(${sha1cmd} | awk '{print $1}')"
if [ "${grubrefchecksum}" != "${grubsha1}" ]; then
rm -Rf payload/grub/
printf "GRUB change detected. Rebuilding:\n"
fi
else
printf "GRUB payloads needed. Building:\n"
rm -Rf payload/grub/ # just in case
fi
for keymapfile in ${kmapdir}/*; do
if [ ! -f "${keymapfile}" ]; then
continue
fi
keymap="${keymapfile##*/}"
keymap="${keymap%.gkb}"
grubelf="payload/grub/grub_${keymap}.elf"
grubcfg="payload/grub/grub_${keymap}.cfg"
grubtestcfg="payload/grub/grub_${keymap}_test.cfg"
if [ ! -f "${grubelf}" ] || [ ! -f "${grubcfg}" ] || \
[ ! -f "${grubtestcfg}" ]; then
./build payload grub
fi
done
} }
build_dependency_uboot() build_dependency_uboot()
{ {
if [ "${payload_uboot}" = "y" ]; then if [ "${payload_uboot}" != "y" ]; then
ubdir="" return 0
if [ "${uboot_config}" = "default" ]; then fi
ubdir="payload/u-boot/${board}"
else
ubdir="payload/u-boot/${board}/${uboot_config}"
fi
if [ -f "${ubdir}/u-boot.elf" ]; then ubdir=""
ubootelf="${ubdir}/u-boot.elf" if [ "${uboot_config}" = "default" ]; then
elif [ -f "${ubdir}/u-boot" ]; then ubdir="payload/u-boot/${board}"
ubootelf="${ubdir}/u-boot" else
else ubdir="payload/u-boot/${board}/${uboot_config}"
printf "U-Boot needed. Building:\n" fi
rm -Rf "payload/u-boot/${board}" # just in case
./build payload u-boot "${board}" if [ -f "${ubdir}/u-boot.elf" ]; then
fi ubootelf="${ubdir}/u-boot.elf"
elif [ -f "${ubdir}/u-boot" ]; then
ubootelf="${ubdir}/u-boot"
else
printf "U-Boot needed. Building:\n"
rm -Rf "payload/u-boot/${board}" # just in case
./build payload u-boot "${board}"
fi fi
} }