From 2e38ddaa9bb0a8d9e0657cd5b20b796ff02a0abe Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Tue, 13 Jun 2023 12:09:01 +0100 Subject: Revert "Remove most of Ferass's lbmk contributions" This reverts commit a4ea2867319471d9fe7d4ee540881e0286b4d3cf. The licensing audit has been abandoned. I will not be re-licensing in bulk to MIT. I can still use MIT license on new works, e.g. utilities, but there's really no pressing need to re-license lbmk. It's just shell scripts, and most of what it interacts with (coreboot, grub, seabios) is GPL anyway. So who cares? Ferass's patch was removed due to refusal to re-license, but the decision to re-license has been canceled. I'm now aiming for a quick stable release. --- resources/scripts/build/boot/roms | 15 +++++++------- resources/scripts/build/boot/roms_helper | 26 +++++++++++++----------- resources/scripts/build/clean/cbutils | 6 +++--- resources/scripts/build/clean/crossgcc | 4 ++-- resources/scripts/build/clean/flashrom | 4 ++-- resources/scripts/build/clean/grub | 2 +- resources/scripts/build/clean/ich9utils | 2 +- resources/scripts/build/clean/memtest86plus | 2 +- resources/scripts/build/clean/payloads | 2 +- resources/scripts/build/clean/rom_images | 2 +- resources/scripts/build/clean/seabios | 2 +- resources/scripts/build/clean/u-boot | 2 +- resources/scripts/build/dependencies/arch | 2 +- resources/scripts/build/dependencies/debian | 2 +- resources/scripts/build/dependencies/fedora38 | 2 +- resources/scripts/build/dependencies/parabola | 2 +- resources/scripts/build/dependencies/ubuntu2004 | 2 +- resources/scripts/build/dependencies/void | 2 +- resources/scripts/build/descriptors/ich9m | 2 +- resources/scripts/build/module/cbutils | 6 +++--- resources/scripts/build/module/flashrom | 2 +- resources/scripts/build/module/grub | 2 +- resources/scripts/build/module/ich9utils | 2 +- resources/scripts/build/module/memtest86plus | 2 +- resources/scripts/build/payload/grub | 4 ++-- resources/scripts/build/payload/seabios | 7 +++++-- resources/scripts/build/payload/u-boot | 10 +++++++-- resources/scripts/build/release/roms | 2 +- resources/scripts/build/release/src | 2 +- resources/scripts/misc/versioncheck | 2 +- resources/scripts/modify/coreboot/configs | 5 +++-- resources/scripts/modify/seabios/configs | 2 +- resources/scripts/modify/u-boot/configs | 5 +++-- resources/scripts/update/blobs/download | 27 ++++++++++++++----------- resources/scripts/update/blobs/extract | 2 +- resources/scripts/update/blobs/inject | 7 ++++--- resources/scripts/update/coreboot/configs | 5 +++-- resources/scripts/update/module/coreboot | 5 +++-- resources/scripts/update/module/flashrom | 2 +- resources/scripts/update/module/grub | 2 +- resources/scripts/update/module/me_cleaner | 2 +- resources/scripts/update/module/memtest86plus | 2 +- resources/scripts/update/module/seabios | 2 +- resources/scripts/update/module/u-boot | 11 +++++----- resources/scripts/update/u-boot/configs | 4 ++-- 45 files changed, 114 insertions(+), 93 deletions(-) (limited to 'resources/scripts') diff --git a/resources/scripts/build/boot/roms b/resources/scripts/build/boot/roms index 07f92a83..f0398273 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 @@ -7,6 +7,7 @@ # # 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 @@ -30,7 +31,7 @@ set -u -e projectname="$(cat projectname)" opts="" -boards="" +boards= firstoption="${1}" main() @@ -49,19 +50,19 @@ main() 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 c5cb5df4..02d8f61f 100755 --- a/resources/scripts/build/boot/roms_helper +++ b/resources/scripts/build/boot/roms_helper @@ -1,9 +1,10 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: create ROM images for a given mainboard # # Copyright (C) 2020,2021,2023 Leah Rowe -# Copyright (C) 2021 Ferass El Hafidi +# Copyright (C) 2021,2022 Ferass El Hafidi +# # Copyright (C) 2022 Caleb La Grange # Copyright (C) 2022 Alper Nebi Yasak # @@ -63,16 +64,16 @@ CROSS_COMPILE="" main() { - 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} ;; @@ -107,7 +108,7 @@ load_config() exit 1 fi - source "${boardcfgdir}/board.cfg" + . "${boardcfgdir}/board.cfg" if [ "${board}" != "${cbtree}" ]; then cbdir="coreboot/${cbtree}" @@ -554,11 +555,11 @@ mkRomsWithGrub() keymaps="" if [ -z ${keyboard_layouts} ]; then for kmapfile in "${kmapdir}"/*; do - keymaps+=" ${kmapfile}" + keymaps="${keymaps} ${kmapfile}" done else for keymapname in ${keyboard_layouts}; do - keymaps+=" ${kmapdir}/${keymapname}.gkb" + keymaps="${keymaps} ${kmapdir}/${keymapname}.gkb" done fi for keymapfile in ${keymaps}; do @@ -694,10 +695,11 @@ moverom() if [ "${cuttype}" = "i945 laptop" ]; then dd if=${_newrom} of=top64k.bin bs=1 \ - skip=$[$(stat -c %s ${_newrom}) - 0x10000] \ + skip=$(($(stat -c %s ${_newrom}) - 0x10000)) \ count=64k - dd if=top64k.bin of=${_newrom} bs=1 seek=$[$(stat -c %s \ - ${_newrom}) - 0x20000] count=64k conv=notrunc + dd if=top64k.bin of=${_newrom} bs=1 \ + seek=$(($(stat -c %s ${_newrom}) - 0x20000)) \ + count=64k conv=notrunc rm -f top64k.bin return 0 fi diff --git a/resources/scripts/build/clean/cbutils b/resources/scripts/build/clean/cbutils index 2aff915f..0c0df0d3 100755 --- a/resources/scripts/build/clean/cbutils +++ b/resources/scripts/build/clean/cbutils @@ -1,9 +1,9 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: clean the dependencies that were built in coreboot # # Copyright (C) 2014, 2015, 2016, 2020 Leah Rowe -# Copyright (C) 2015 Klemens Nanni +# Copyright (C) 2015 Klemens Nanni # # 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 @@ -38,7 +38,7 @@ for board in coreboot/*; do make -C "${board}/" distclean # Clean its utilities as well - for util in {cbfs,ifd,nvram}tool cbmem; do + for util in cbfstool ifdtool nvramtool cbmem; do make -C "${board}/util/${util}/" clean done make -C "${board}/payloads/libpayload/" distclean diff --git a/resources/scripts/build/clean/crossgcc b/resources/scripts/build/clean/crossgcc index 7dcbf4a4..6c09c878 100755 --- a/resources/scripts/build/clean/crossgcc +++ b/resources/scripts/build/clean/crossgcc @@ -1,9 +1,9 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: clean the crossgcc builds # # Copyright (C) 2014-2016, 2020, 2023 Leah Rowe -# Copyright (C) 2015 Klemens Nanni +# Copyright (C) 2015 Klemens Nanni # # 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 diff --git a/resources/scripts/build/clean/flashrom b/resources/scripts/build/clean/flashrom index 516a8d87..744052fc 100755 --- a/resources/scripts/build/clean/flashrom +++ b/resources/scripts/build/clean/flashrom @@ -1,9 +1,9 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: clean the dependencies that were built in flashrom # # Copyright (C) 2014, 2015 Leah Rowe -# Copyright (C) 2015 Klemens Nanni +# Copyright (C) 2015 Klemens Nanni # # 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 diff --git a/resources/scripts/build/clean/grub b/resources/scripts/build/clean/grub index 4330dfca..dea2c2dd 100755 --- a/resources/scripts/build/clean/grub +++ b/resources/scripts/build/clean/grub @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: clean the dependencies that were built in GRUB # diff --git a/resources/scripts/build/clean/ich9utils b/resources/scripts/build/clean/ich9utils index 35b9dc4b..38ad439f 100755 --- a/resources/scripts/build/clean/ich9utils +++ b/resources/scripts/build/clean/ich9utils @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: clean the previous build of ich9utils # diff --git a/resources/scripts/build/clean/memtest86plus b/resources/scripts/build/clean/memtest86plus index e4d7b200..807b20a7 100755 --- a/resources/scripts/build/clean/memtest86plus +++ b/resources/scripts/build/clean/memtest86plus @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: clean the dependencies that were built in memtest86+ # diff --git a/resources/scripts/build/clean/payloads b/resources/scripts/build/clean/payloads index f4dab88a..4d77b9ea 100755 --- a/resources/scripts/build/clean/payloads +++ b/resources/scripts/build/clean/payloads @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: nothing to see here, forks! # diff --git a/resources/scripts/build/clean/rom_images b/resources/scripts/build/clean/rom_images index cac69226..cd41d499 100755 --- a/resources/scripts/build/clean/rom_images +++ b/resources/scripts/build/clean/rom_images @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: delete the ROM images # diff --git a/resources/scripts/build/clean/seabios b/resources/scripts/build/clean/seabios index 6362a311..0757db9d 100755 --- a/resources/scripts/build/clean/seabios +++ b/resources/scripts/build/clean/seabios @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: clean the dependencies that were built in seabios # diff --git a/resources/scripts/build/clean/u-boot b/resources/scripts/build/clean/u-boot index 5d9a324a..6a59a5c1 100755 --- a/resources/scripts/build/clean/u-boot +++ b/resources/scripts/build/clean/u-boot @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: clean the u-boot builds # diff --git a/resources/scripts/build/dependencies/arch b/resources/scripts/build/dependencies/arch index 91210191..c20a1faf 100644 --- a/resources/scripts/build/dependencies/arch +++ b/resources/scripts/build/dependencies/arch @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # arch script: installs build dependencies for Arch Linux # diff --git a/resources/scripts/build/dependencies/debian b/resources/scripts/build/dependencies/debian index 789ee749..fb0ae248 100755 --- a/resources/scripts/build/dependencies/debian +++ b/resources/scripts/build/dependencies/debian @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # ubuntu2004 script: installs build dependencies for Ubuntu 20.04 # diff --git a/resources/scripts/build/dependencies/fedora38 b/resources/scripts/build/dependencies/fedora38 index 396300e8..2389b806 100755 --- a/resources/scripts/build/dependencies/fedora38 +++ b/resources/scripts/build/dependencies/fedora38 @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # Fedora script: installs build dependencies for Fedora # diff --git a/resources/scripts/build/dependencies/parabola b/resources/scripts/build/dependencies/parabola index c841c7c2..da284bed 100755 --- a/resources/scripts/build/dependencies/parabola +++ b/resources/scripts/build/dependencies/parabola @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # parabola script: installs build dependencies for Parabola GNU/Linux-libre # based on the arch script diff --git a/resources/scripts/build/dependencies/ubuntu2004 b/resources/scripts/build/dependencies/ubuntu2004 index dda88fde..14a1d8c2 100755 --- a/resources/scripts/build/dependencies/ubuntu2004 +++ b/resources/scripts/build/dependencies/ubuntu2004 @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # ubuntu2004 script: installs build dependencies for Ubuntu 20.04 # diff --git a/resources/scripts/build/dependencies/void b/resources/scripts/build/dependencies/void index bbd00a15..e46cd5ee 100755 --- a/resources/scripts/build/dependencies/void +++ b/resources/scripts/build/dependencies/void @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # void script: installs build dependencies for Void Linux # diff --git a/resources/scripts/build/descriptors/ich9m b/resources/scripts/build/descriptors/ich9m index 35cc9570..b9a077d9 100755 --- a/resources/scripts/build/descriptors/ich9m +++ b/resources/scripts/build/descriptors/ich9m @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # Copyright (C) 2020, 2023 Leah Rowe # diff --git a/resources/scripts/build/module/cbutils b/resources/scripts/build/module/cbutils index 526467bd..b362ee7a 100755 --- a/resources/scripts/build/module/cbutils +++ b/resources/scripts/build/module/cbutils @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: build various coreboot utilities # @@ -44,7 +44,7 @@ build_for_mainboard() { [ ! -f "resources/coreboot/${board}/board.cfg" ] && \ continue cbtree="undefined" - source "resources/coreboot/${board}/board.cfg" # source + . "resources/coreboot/${board}/board.cfg" # source if [ "${cbtree}" = "undefined" ]; then printf "build/cbutils: improper cbtree definition for '%s'" \ "${board}" @@ -58,7 +58,7 @@ buildutils() { if [ ! -d "coreboot/${cbtree}/" ]; then ./download coreboot $cbtree || return 1 fi - for util in {cbfs,ifd}tool; do + for util in cbfstool ifdtool; do make -j$(nproc) -BC "coreboot/${cbtree}/util/${util}/" \ || return 1 done diff --git a/resources/scripts/build/module/flashrom b/resources/scripts/build/module/flashrom index c1641d94..37f57ce0 100755 --- a/resources/scripts/build/module/flashrom +++ b/resources/scripts/build/module/flashrom @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: builds flashrom source code # diff --git a/resources/scripts/build/module/grub b/resources/scripts/build/module/grub index 4d2009ed..5cf58a67 100755 --- a/resources/scripts/build/module/grub +++ b/resources/scripts/build/module/grub @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: builds GRUB2 source code # diff --git a/resources/scripts/build/module/ich9utils b/resources/scripts/build/module/ich9utils index 5a9fbe4b..5473a513 100755 --- a/resources/scripts/build/module/ich9utils +++ b/resources/scripts/build/module/ich9utils @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: build ich9utils # diff --git a/resources/scripts/build/module/memtest86plus b/resources/scripts/build/module/memtest86plus index f57b7c57..7fc46be9 100755 --- a/resources/scripts/build/module/memtest86plus +++ b/resources/scripts/build/module/memtest86plus @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: builds memtest86+ source code # diff --git a/resources/scripts/build/payload/grub b/resources/scripts/build/payload/grub index 7569fd86..23765f47 100755 --- a/resources/scripts/build/payload/grub +++ b/resources/scripts/build/payload/grub @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # generate GRUB ELF files (coreboot payload) and configuration files # @@ -24,7 +24,7 @@ set -u -e grubcfgsdir="resources/grub" keymap="" -source "${grubcfgsdir}/modules.list" +. "${grubcfgsdir}/modules.list" main() { diff --git a/resources/scripts/build/payload/seabios b/resources/scripts/build/payload/seabios index ed31e3bb..f822a019 100755 --- a/resources/scripts/build/payload/seabios +++ b/resources/scripts/build/payload/seabios @@ -1,8 +1,9 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: builds SeaBIOS source code # # Copyright (C) 2020, 2021, 2023 Leah Rowe +# 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 @@ -36,7 +37,9 @@ main() done # clean it again. gotta keep it clean! - [[ -f Makefile ]] && make -C seabios distclean + if [ -f seabios/Makefile ]; then + make distclean -BC seabios || exit 1 + fi printf "Done! SeaBIOS files are in %s/\n\n" ${payloaddir} } diff --git a/resources/scripts/build/payload/u-boot b/resources/scripts/build/payload/u-boot index bc1cf997..bff41400 100755 --- a/resources/scripts/build/payload/u-boot +++ b/resources/scripts/build/payload/u-boot @@ -3,6 +3,7 @@ # helper script: builds U-Boot source code # # Copyright (C) 2022 Alper Nebi Yasak +# Copyright (C) 2022 Ferass El Hafidi # Copyright (C) 2023 Leah Rowe # # This program is free software: you can redistribute it and/or modify @@ -96,7 +97,7 @@ handle_dependencies() fi # Override the above defaults using board.cfg - source "${board_dir}/board.cfg" # source + . "${board_dir}/board.cfg" # source if [ "${ubtree}" = "undefined" ]; then printf "build/u-boot %s: ubtree undefined\n" \ @@ -161,7 +162,12 @@ build_uboot_elf() make -C "${ubdir}" olddefconfig make -C "${ubdir}" -j"$(nproc)" all - for f in "${ubdir}"/u-boot{,.bin,.dtb,.img,.itb,.elf}; do + for f in "${ubdir}"/u-boot "${ubdir}"/u-boot.bin \ + "${ubdir}"/u-boot.dtb \ + "${ubdir}"/u-boot.img \ + "${ubdir}"/u-boot.itb \ + "${ubdir}"/u-boot.elf + do if [ -f "$f" ]; then mv "$f" "${dest_dir}/" fi diff --git a/resources/scripts/build/release/roms b/resources/scripts/build/release/roms index 4a66ffa3..33200cc4 100755 --- a/resources/scripts/build/release/roms +++ b/resources/scripts/build/release/roms @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: generate release archive (ROM images) # diff --git a/resources/scripts/build/release/src b/resources/scripts/build/release/src index 4c5e3bb0..09a9810e 100755 --- a/resources/scripts/build/release/src +++ b/resources/scripts/build/release/src @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: generate release archive (source code) # diff --git a/resources/scripts/misc/versioncheck b/resources/scripts/misc/versioncheck index e9eea929..3118e297 100755 --- a/resources/scripts/misc/versioncheck +++ b/resources/scripts/misc/versioncheck @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # Copyright (C) 2021 Leah Rowe # diff --git a/resources/scripts/modify/coreboot/configs b/resources/scripts/modify/coreboot/configs index 89d253e3..665ee091 100755 --- a/resources/scripts/modify/coreboot/configs +++ b/resources/scripts/modify/coreboot/configs @@ -1,8 +1,9 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: modify coreboot configs (run make menuconfig) # # Copyright (C) 2021, 2023 Leah Rowe +# 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 @@ -49,7 +50,7 @@ modifyconf() { fi cbtree="" - source "resources/coreboot/${board}/board.cfg" # source + . "resources/coreboot/${board}/board.cfg" # source if [ -z ${cbtree} ]; then return 0 diff --git a/resources/scripts/modify/seabios/configs b/resources/scripts/modify/seabios/configs index 30423851..614a4371 100755 --- a/resources/scripts/modify/seabios/configs +++ b/resources/scripts/modify/seabios/configs @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: modify coreboot configs (run make menuconfig) # diff --git a/resources/scripts/modify/u-boot/configs b/resources/scripts/modify/u-boot/configs index b44aae47..9572a5b8 100755 --- a/resources/scripts/modify/u-boot/configs +++ b/resources/scripts/modify/u-boot/configs @@ -1,8 +1,9 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: modify U-Boot configs (run make menuconfig) # # Copyright (C) 2022 Alper Nebi Yasak +# Copyright (C) 2022 Ferass El Hafidi # Copyright (C) 2023 Leah Rowe # # This program is free software: you can redistribute it and/or modify @@ -50,7 +51,7 @@ modifyconf() fi ubtree="undefined" - source "resources/u-boot/${board}/board.cfg" # source + . "resources/u-boot/${board}/board.cfg" # source if [ "${ubtree}" = "undefined" ]; then return 0 diff --git a/resources/scripts/update/blobs/download b/resources/scripts/update/blobs/download index 57bdfe62..7c775ea5 100755 --- a/resources/scripts/update/blobs/download +++ b/resources/scripts/update/blobs/download @@ -1,6 +1,7 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # SPDX-FileCopyrightText: 2022 Caleb La Grange +# SPDX-FileCopyrightText: 2022 Ferass El Hafidi # SPDX-FileCopyrightText: 2023 Leah Rowe # SPDX-License-Identifier: GPL-3.0-only @@ -63,23 +64,23 @@ detect_firmware() . "${boarddir}/board.cfg" if [ "${CONFIG_HAVE_MRC}" = "y" ]; then - needs+=" MRC" + needs="${needs} MRC" fi if [ "${CONFIG_HAVE_IFD_BIN}" = "y" ]; then - needs+=" IFD" + needs="${needs} IFD" fi if [ "${CONFIG_HAVE_ME_BIN}" = "y" ]; then - needs+=" ME" + needs="${needs} ME" fi if [ "${CONFIG_HAVE_GBE_BIN}" = "y" ]; then - needs+=" GBE" + needs="${needs} GBE" fi if [ "${CONFIG_KBC1126_FIRMWARE}" = "y" ]; then - needs+=" EC" + needs="${needs} EC" fi if [ "${CONFIG_BOARD_DELL_E6400}" = "y" ] \ && [ "${CONFIG_VGA_BIOS_FILE}" != "" ]; then - needs+=" E6400VGA" + needs="${needs} E6400VGA" fi if [ -z ${needs+x} ]; then printf 'No binary blobs needed for this board\n' @@ -142,7 +143,9 @@ scan_sources_config() e6400_vga_romname=${2} ;; esac - done <<< $(eval "awk '${awkstr}' resources/blobs/sources") + done << EOF + $(eval "awk '${awkstr}' resources/blobs/sources") +EOF } build_dependencies() @@ -178,16 +181,16 @@ download_blobs() for need in ${needs}; do case ${need} in *ME*) - download_blob_intel_me || _failed+=" me" + download_blob_intel_me || _failed="${_failed} me" ;; *EC*) - download_ec || _failed+=" ec" + download_ec || _failed="${_failed} ec" ;; *E6400VGA*) - download_e6400vga || _failed+=" e6400vga" + download_e6400vga || _failed="${_failed} e6400vga" ;; *MRC*) - ./download mrc || _failed+=" mrc" + ./download mrc || _failed="${_failed} mrc" ;; esac done diff --git a/resources/scripts/update/blobs/extract b/resources/scripts/update/blobs/extract index 8e9c74ed..b32ec0ea 100755 --- a/resources/scripts/update/blobs/extract +++ b/resources/scripts/update/blobs/extract @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # script to automate extracting blobs from an existing vendor bios # SPDX-FileCopyrightText: 2022 Caleb La Grange diff --git a/resources/scripts/update/blobs/inject b/resources/scripts/update/blobs/inject index 51f67255..ca8aae4c 100755 --- a/resources/scripts/update/blobs/inject +++ b/resources/scripts/update/blobs/inject @@ -1,6 +1,7 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # SPDX-FileCopyrightText: 2022 Caleb La Grange +# SPDX-FileCopyrightText: 2022 Ferass El Hafidi # SPDX-FileCopyrightText: 2023 Leah Rowe # SPDX-License-Identifier: GPL-3.0-only @@ -111,10 +112,10 @@ detect_board() filename=$(basename ${path}) case ${filename} in grub_*) - board=$(cut -d '_' -f2-3 <<<${filename}) + board=$(echo "${filename}" | cut -d '_' -f2-3) ;; seabios_withgrub_*) - board=$(cut -d '_' -f3-4 <<<${filename}) + board=$(echo "${filename}" | cut -d '_' -f3-4) ;; *.tar.xz) _stripped_prefix=${filename#*_} diff --git a/resources/scripts/update/coreboot/configs b/resources/scripts/update/coreboot/configs index 6637a340..cd5299b3 100755 --- a/resources/scripts/update/coreboot/configs +++ b/resources/scripts/update/coreboot/configs @@ -1,9 +1,10 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # # helper script: update coreboot configs (run make oldconfig) # # Copyright (C) 2021 Leah Rowe +# 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 @@ -54,7 +55,7 @@ updateconf() if [ -f "${boarddir}/board.cfg" ]; then cbtree="undefined" - source "${boarddir}/board.cfg" # source + . "${boarddir}/board.cfg" # source if [ "${cbtree}" = "undefined" ]; then return 0 fi diff --git a/resources/scripts/update/module/coreboot b/resources/scripts/update/module/coreboot index 75b61a6f..2e78636b 100755 --- a/resources/scripts/update/module/coreboot +++ b/resources/scripts/update/module/coreboot @@ -1,9 +1,10 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: download coreboot # # Copyright (C) 2014-2016,2020,2021,2023 Leah Rowe # Copyright (C) 2022 Alper Nebi Yasak +# 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 @@ -86,7 +87,7 @@ fetch_coreboot_config() check_config_for_board "${_board}" || return 1 # This is to override $cbrevision and $cbtree - source "${cbcfgsdir}/${_board}/board.cfg" || exit 1 + . "${cbcfgsdir}/${_board}/board.cfg" || exit 1 if [ "${_board}" != "${cbtree}" ]; then _board="${cbtree}" diff --git a/resources/scripts/update/module/flashrom b/resources/scripts/update/module/flashrom index 6aa3cab4..def33ffb 100755 --- a/resources/scripts/update/module/flashrom +++ b/resources/scripts/update/module/flashrom @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: downloads flashrom and patches it # diff --git a/resources/scripts/update/module/grub b/resources/scripts/update/module/grub index 0620a775..ff1ce55c 100755 --- a/resources/scripts/update/module/grub +++ b/resources/scripts/update/module/grub @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: Downloads GRUB and patches it. # diff --git a/resources/scripts/update/module/me_cleaner b/resources/scripts/update/module/me_cleaner index 7dd52be7..93173257 100755 --- a/resources/scripts/update/module/me_cleaner +++ b/resources/scripts/update/module/me_cleaner @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # # Copyright (C) 2020 Leah Rowe # diff --git a/resources/scripts/update/module/memtest86plus b/resources/scripts/update/module/memtest86plus index bceadbd9..e4106f38 100755 --- a/resources/scripts/update/module/memtest86plus +++ b/resources/scripts/update/module/memtest86plus @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: Downloads MemTest86+ and patches it # diff --git a/resources/scripts/update/module/seabios b/resources/scripts/update/module/seabios index fd72de65..666c32ae 100755 --- a/resources/scripts/update/module/seabios +++ b/resources/scripts/update/module/seabios @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # # Copyright (C) 2015, 2016, 2021 Leah Rowe # diff --git a/resources/scripts/update/module/u-boot b/resources/scripts/update/module/u-boot index 1af513a4..161608c9 100755 --- a/resources/scripts/update/module/u-boot +++ b/resources/scripts/update/module/u-boot @@ -1,9 +1,10 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # helper script: download u-boot # # Copyright (C) 2021 Denis 'GNUtoo' Carikli # Copyright (C) 2022 Alper Nebi Yasak +# 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 @@ -22,7 +23,7 @@ [ "x${DEBUG+set}" = 'xset' ] && set -v set -u -e -[[ -f build_error ]] && rm -f build_error +[ -f build_error ] && rm -f build_error list_supported_boards() { for board in resources/u-boot/*; do @@ -55,7 +56,7 @@ downloadfor() { fi # This is to override $ubrevision and $ubtree - source "resources/u-boot/${board}/board.cfg" || touch build_error + . "resources/u-boot/${board}/board.cfg" || touch build_error if [ -f build_error ]; then printf "ERROR: %s: problem sourcing %s/board.cfg\n" \ "download/u-boot" "${board}" @@ -239,10 +240,10 @@ if [ $# -eq 0 ] ; then download_uboot_board "${board}" done exit 0 -elif [ $# -eq 1 -a "$1" == "--help" ] ; then +elif [ $# -eq 1 ] && [ "$1" = "--help" ] ; then usage exit 0 -elif [ $# -eq 1 -a "$1" == "--list-boards" ] ; then +elif [ $# -eq 1 ] && [ "$1" = "--list-boards" ] ; then list_supported_boards exit 0 elif [ $# -eq 1 ] ; then diff --git a/resources/scripts/update/u-boot/configs b/resources/scripts/update/u-boot/configs index 9b67eede..b01ef0db 100755 --- a/resources/scripts/update/u-boot/configs +++ b/resources/scripts/update/u-boot/configs @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # # helper script: update U-Boot configs (run make oldconfig) @@ -33,7 +33,7 @@ updateconf() { board="$1" if [ -f "resources/u-boot/${board}/board.cfg" ]; then ubtree="undefined" - source "resources/u-boot/${board}/board.cfg" # source + . "resources/u-boot/${board}/board.cfg" # source if [ "${ubtree}" = "undefined" ]; then return 0 fi -- cgit v1.2.1