From f787044642236917c9c4dbcaa48a6b0648097db0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ferass=20=27Vitali64=27=20EL=C2=A0HAFIDI?= Date: Fri, 16 Dec 2022 19:45:54 +0100 Subject: Do not rely on bashisms and behaviour undefined by the POSIX specification. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 --- resources/scripts/build/boot/roms | 14 ++++++++------ resources/scripts/build/boot/roms_helper | 22 +++++++++++----------- 2 files changed, 19 insertions(+), 17 deletions(-) (limited to 'resources/scripts/build/boot') 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 # Copyright (C) 2015 Klemens Nanni # Copyright (C) 2022 Caleb La Grange +# Copyright (C) 2022 Ferass El Hafidi # # 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 -# Copyright (C) 2021 Vitali64 +# Copyright (C) 2021,2022 Ferass El Hafidi # Copyright (C) 2022 Caleb La Grange # Copyright (C) 2022 Alper Nebi Yasak # @@ -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 -- cgit v1.2.1