diff options
author | Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com> | 2022-12-16 19:45:54 +0100 |
---|---|---|
committer | Leah Rowe <leah@libreboot.org> | 2022-12-27 15:50:41 +0000 |
commit | f787044642236917c9c4dbcaa48a6b0648097db0 (patch) | |
tree | 4754a1b97ac3ed64d11c27c8399a3754e2a76a52 /resources/scripts/build/boot | |
parent | d45b2e70dcba4a36f504ed6f168112236bf9d7bf (diff) |
Do not rely on bashisms and behaviour undefined by the POSIX specification.
By making lbmk fully POSIX-compliant, it will be easier to port lbmk to
other systems implementing POSIX such as Alpine Linux and FreeBSD.
Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
Diffstat (limited to 'resources/scripts/build/boot')
-rwxr-xr-x | resources/scripts/build/boot/roms | 14 | ||||
-rwxr-xr-x | resources/scripts/build/boot/roms_helper | 22 |
2 files changed, 19 insertions, 17 deletions
diff --git a/resources/scripts/build/boot/roms b/resources/scripts/build/boot/roms index d4368689..7f4e8422 100755 --- a/resources/scripts/build/boot/roms +++ b/resources/scripts/build/boot/roms @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # # helper script: build coreboot images with various payloads @@ -6,6 +6,7 @@ # Copyright (C) 2014, 2015, 2016, 2020, 2021 Leah Rowe <info@minifree.org> # Copyright (C) 2015 Klemens Nanni <contact@autoboot.org> # Copyright (C) 2022 Caleb La Grange <thonkpeasant@protonmail.com> +# Copyright (C) 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com> # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -80,6 +81,7 @@ buildrom() { } if [ $# -gt 0 ]; then + boards= firstoption="${1}" if [ "${firstoption}" = "help" ]; then help @@ -90,19 +92,19 @@ if [ $# -gt 0 ]; then exit 0 fi - while [[ $# > 0 ]]; do + while [ $# -gt 0 ]; do case ${1} in -d) - opts+=" -d ${2}" + opts="${opts} -d ${2}" shift ;; -p) - opts+=" -p ${2}" + opts="${opts} -p ${2}" shift ;; -k) - opts+=" -k ${2}" + opts="${opts} -k ${2}" shift ;; *) - boards+="${1} " ;; + boards="${boards} ${1} " ;; esac shift done diff --git a/resources/scripts/build/boot/roms_helper b/resources/scripts/build/boot/roms_helper index 9f99b859..5e279c48 100755 --- a/resources/scripts/build/boot/roms_helper +++ b/resources/scripts/build/boot/roms_helper @@ -1,9 +1,9 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: create ROM images for a given mainboard # # Copyright (C) 2020,2021 Leah Rowe <info@minifree.org> -# Copyright (C) 2021 Vitali64 <vitali64pmemail@protonmail.com> +# Copyright (C) 2021,2022 Ferass El Hafidi <vitali64pmemail@protonmail.com> # Copyright (C) 2022 Caleb La Grange <thonkpeasant@protonmail.com> # Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com> # @@ -33,16 +33,16 @@ projectname="$(cat projectname)" displaymodes="" payloads="" keyboard_layouts="" -while [[ $# > 0 ]]; do +while [ $# -gt 0 ]; do case ${1} in -d) - displaymodes+="${2}" + displaymodes="${displaymodes}${2}" shift ;; -p) - payloads+="${2}" + payloads="${payloads}${2}" shift ;; -k) - keyboard_layouts+="${2}" + keyboard_layouts="${keyboard_layouts}${2}" shift ;; *) board=${1} ;; @@ -79,7 +79,7 @@ payload_memtest="n" payload_uboot="n" uboot_config="undefined" # Override the above defaults using board.cfg -source "resources/coreboot/${board}/board.cfg" +. "resources/coreboot/${board}/board.cfg" if [ "${grub_scan_disk}" = "undefined" ]; then printf "build/roms: Target %s does not define grub_scan_disk. Defaulting to 'both'.\n" "${board}" @@ -295,7 +295,7 @@ moverom() { printf "\nCreating new ROM image: %s\n" "${newrompath}" if [ "${cuttype}" = "4MiB IFD BIOS region" ]; then - dd if=${rompath} of=${newrompath} bs=1 skip=$[$(stat -c %s ${rompath}) - 0x400000] count=4194304 + dd if=${rompath} of=${newrompath} bs=1 skip=$(($(stat -c %s ${rompath}) - 0x400000)) count=4194304 else cp ${rompath} ${newrompath} fi @@ -316,8 +316,8 @@ moverom() { done if [ "${cuttype}" = "i945 laptop" ]; then - dd if=${newrompath} of=top64k.bin bs=1 skip=$[$(stat -c %s ${newrompath}) - 0x10000] count=64k - dd if=top64k.bin of=${newrompath} bs=1 seek=$[$(stat -c %s ${newrompath}) - 0x20000] count=64k conv=notrunc + dd if=${newrompath} of=top64k.bin bs=1 skip=$(($(stat -c %s ${newrompath}) - 0x10000)) count=64k + dd if=top64k.bin of=${newrompath} bs=1 seek=$(($(stat -c %s ${newrompath}) - 0x20000)) count=64k conv=notrunc rm -f top64k.bin fi } @@ -479,7 +479,7 @@ mkRomsWithGrub() { keymaps="resources/grub/keymap/*" else for keymapname in ${keyboard_layouts}; do - keymaps+="resources/grub/keymap/${keymapname}.gkb" + keymaps="${keymaps} resources/grub/keymap/${keymapname}.gkb" done fi for keymapfile in ${keymaps}; do |