diff options
Diffstat (limited to 'resources/scripts/build')
29 files changed, 55 insertions, 67 deletions
diff --git a/resources/scripts/build/boot/roms b/resources/scripts/build/boot/roms index f0398273..07f92a83 100755 --- a/resources/scripts/build/boot/roms +++ b/resources/scripts/build/boot/roms @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # # helper script: build coreboot images with various payloads @@ -7,7 +7,6 @@ # <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 @@ -31,7 +30,7 @@ set -u -e projectname="$(cat projectname)" opts="" -boards= +boards="" firstoption="${1}" main() @@ -50,19 +49,19 @@ main() exit 0 fi - while [ $# -gt 0 ]; do + while [[ $# > 0 ]]; do case ${1} in -d) - opts="${opts} -d ${2}" + opts+=" -d ${2}" shift ;; -p) - opts="${opts} -p ${2}" + opts+=" -p ${2}" shift ;; -k) - opts="${opts} -k ${2}" + opts+=" -k ${2}" shift ;; *) - boards="${boards} ${1} " ;; + boards+=" ${1} " ;; esac shift done diff --git a/resources/scripts/build/boot/roms_helper b/resources/scripts/build/boot/roms_helper index 02d8f61f..c5cb5df4 100755 --- a/resources/scripts/build/boot/roms_helper +++ b/resources/scripts/build/boot/roms_helper @@ -1,10 +1,9 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: create ROM images for a given mainboard # # Copyright (C) 2020,2021,2023 Leah Rowe <info@minifree.org> -# Copyright (C) 2021,2022 Ferass El Hafidi -# <vitali64pmemail@protonmail.com> +# Copyright (C) 2021 Ferass El Hafidi <vitali64pmemail@protonmail.com> # Copyright (C) 2022 Caleb La Grange <thonkpeasant@protonmail.com> # Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com> # @@ -64,16 +63,16 @@ CROSS_COMPILE="" main() { - while [ $# -gt 0 ]; do + while [[ $# > 0 ]]; do case ${1} in -d) - displaymodes="${displaymodes}${2}" + displaymodes+="${2}" shift ;; -p) - payloads="${payloads}${2}" + payloads+="${2}" shift ;; -k) - keyboard_layouts="${keyboard_layouts}${2}" + keyboard_layouts+="${2}" shift ;; *) board=${1} ;; @@ -108,7 +107,7 @@ load_config() exit 1 fi - . "${boardcfgdir}/board.cfg" + source "${boardcfgdir}/board.cfg" if [ "${board}" != "${cbtree}" ]; then cbdir="coreboot/${cbtree}" @@ -555,11 +554,11 @@ mkRomsWithGrub() keymaps="" if [ -z ${keyboard_layouts} ]; then for kmapfile in "${kmapdir}"/*; do - keymaps="${keymaps} ${kmapfile}" + keymaps+=" ${kmapfile}" done else for keymapname in ${keyboard_layouts}; do - keymaps="${keymaps} ${kmapdir}/${keymapname}.gkb" + keymaps+=" ${kmapdir}/${keymapname}.gkb" done fi for keymapfile in ${keymaps}; do @@ -695,11 +694,10 @@ 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 0c0df0d3..2aff915f 100755 --- a/resources/scripts/build/clean/cbutils +++ b/resources/scripts/build/clean/cbutils @@ -1,9 +1,9 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: clean the dependencies that were built in coreboot # # Copyright (C) 2014, 2015, 2016, 2020 Leah Rowe <info@minifree.org> -# Copyright (C) 2015 Klemens Nanni <contact@autoboot.org> +# Copyright (C) 2015 Klemens Nanni <contact@autoboot.org> # # 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 cbfstool ifdtool nvramtool cbmem; do + for util in {cbfs,ifd,nvram}tool 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 6c09c878..7dcbf4a4 100755 --- a/resources/scripts/build/clean/crossgcc +++ b/resources/scripts/build/clean/crossgcc @@ -1,9 +1,9 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: clean the crossgcc builds # # Copyright (C) 2014-2016, 2020, 2023 Leah Rowe <info@minifree.org> -# Copyright (C) 2015 Klemens Nanni <contact@autoboot.org> +# Copyright (C) 2015 Klemens Nanni <contact@autoboot.org> # # 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 744052fc..516a8d87 100755 --- a/resources/scripts/build/clean/flashrom +++ b/resources/scripts/build/clean/flashrom @@ -1,9 +1,9 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: clean the dependencies that were built in flashrom # # Copyright (C) 2014, 2015 Leah Rowe <info@minifree.org> -# Copyright (C) 2015 Klemens Nanni <contact@autoboot.org> +# Copyright (C) 2015 Klemens Nanni <contact@autoboot.org> # # 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 dea2c2dd..4330dfca 100755 --- a/resources/scripts/build/clean/grub +++ b/resources/scripts/build/clean/grub @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # 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 38ad439f..35b9dc4b 100755 --- a/resources/scripts/build/clean/ich9utils +++ b/resources/scripts/build/clean/ich9utils @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: clean the previous build of ich9utils # diff --git a/resources/scripts/build/clean/memtest86plus b/resources/scripts/build/clean/memtest86plus index 807b20a7..e4d7b200 100755 --- a/resources/scripts/build/clean/memtest86plus +++ b/resources/scripts/build/clean/memtest86plus @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # 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 4d77b9ea..f4dab88a 100755 --- a/resources/scripts/build/clean/payloads +++ b/resources/scripts/build/clean/payloads @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: nothing to see here, forks! # diff --git a/resources/scripts/build/clean/rom_images b/resources/scripts/build/clean/rom_images index cd41d499..cac69226 100755 --- a/resources/scripts/build/clean/rom_images +++ b/resources/scripts/build/clean/rom_images @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: delete the ROM images # diff --git a/resources/scripts/build/clean/seabios b/resources/scripts/build/clean/seabios index 0757db9d..6362a311 100755 --- a/resources/scripts/build/clean/seabios +++ b/resources/scripts/build/clean/seabios @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # 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 6a59a5c1..5d9a324a 100755 --- a/resources/scripts/build/clean/u-boot +++ b/resources/scripts/build/clean/u-boot @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: clean the u-boot builds # diff --git a/resources/scripts/build/dependencies/arch b/resources/scripts/build/dependencies/arch index c20a1faf..91210191 100644 --- a/resources/scripts/build/dependencies/arch +++ b/resources/scripts/build/dependencies/arch @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # arch script: installs build dependencies for Arch Linux # diff --git a/resources/scripts/build/dependencies/debian b/resources/scripts/build/dependencies/debian index fb0ae248..789ee749 100755 --- a/resources/scripts/build/dependencies/debian +++ b/resources/scripts/build/dependencies/debian @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # ubuntu2004 script: installs build dependencies for Ubuntu 20.04 # diff --git a/resources/scripts/build/dependencies/fedora38 b/resources/scripts/build/dependencies/fedora38 index 2389b806..396300e8 100755 --- a/resources/scripts/build/dependencies/fedora38 +++ b/resources/scripts/build/dependencies/fedora38 @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # Fedora script: installs build dependencies for Fedora # diff --git a/resources/scripts/build/dependencies/parabola b/resources/scripts/build/dependencies/parabola index da284bed..c841c7c2 100755 --- a/resources/scripts/build/dependencies/parabola +++ b/resources/scripts/build/dependencies/parabola @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # 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 14a1d8c2..dda88fde 100755 --- a/resources/scripts/build/dependencies/ubuntu2004 +++ b/resources/scripts/build/dependencies/ubuntu2004 @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # ubuntu2004 script: installs build dependencies for Ubuntu 20.04 # diff --git a/resources/scripts/build/dependencies/void b/resources/scripts/build/dependencies/void index e46cd5ee..bbd00a15 100755 --- a/resources/scripts/build/dependencies/void +++ b/resources/scripts/build/dependencies/void @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # void script: installs build dependencies for Void Linux # diff --git a/resources/scripts/build/descriptors/ich9m b/resources/scripts/build/descriptors/ich9m index b9a077d9..35cc9570 100755 --- a/resources/scripts/build/descriptors/ich9m +++ b/resources/scripts/build/descriptors/ich9m @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # Copyright (C) 2020, 2023 Leah Rowe <info@minifree.org> # diff --git a/resources/scripts/build/module/cbutils b/resources/scripts/build/module/cbutils index b362ee7a..526467bd 100755 --- a/resources/scripts/build/module/cbutils +++ b/resources/scripts/build/module/cbutils @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: build various coreboot utilities # @@ -44,7 +44,7 @@ build_for_mainboard() { [ ! -f "resources/coreboot/${board}/board.cfg" ] && \ continue cbtree="undefined" - . "resources/coreboot/${board}/board.cfg" # source + 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 cbfstool ifdtool; do + for util in {cbfs,ifd}tool; 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 37f57ce0..c1641d94 100755 --- a/resources/scripts/build/module/flashrom +++ b/resources/scripts/build/module/flashrom @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: builds flashrom source code # diff --git a/resources/scripts/build/module/grub b/resources/scripts/build/module/grub index 5cf58a67..4d2009ed 100755 --- a/resources/scripts/build/module/grub +++ b/resources/scripts/build/module/grub @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: builds GRUB2 source code # diff --git a/resources/scripts/build/module/ich9utils b/resources/scripts/build/module/ich9utils index 5473a513..5a9fbe4b 100755 --- a/resources/scripts/build/module/ich9utils +++ b/resources/scripts/build/module/ich9utils @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: build ich9utils # diff --git a/resources/scripts/build/module/memtest86plus b/resources/scripts/build/module/memtest86plus index 7fc46be9..f57b7c57 100755 --- a/resources/scripts/build/module/memtest86plus +++ b/resources/scripts/build/module/memtest86plus @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: builds memtest86+ source code # diff --git a/resources/scripts/build/payload/grub b/resources/scripts/build/payload/grub index 23765f47..7569fd86 100755 --- a/resources/scripts/build/payload/grub +++ b/resources/scripts/build/payload/grub @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # generate GRUB ELF files (coreboot payload) and configuration files # @@ -24,7 +24,7 @@ set -u -e grubcfgsdir="resources/grub" keymap="" -. "${grubcfgsdir}/modules.list" +source "${grubcfgsdir}/modules.list" main() { diff --git a/resources/scripts/build/payload/seabios b/resources/scripts/build/payload/seabios index c05b1b11..e6ae28f9 100755 --- a/resources/scripts/build/payload/seabios +++ b/resources/scripts/build/payload/seabios @@ -1,9 +1,8 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: builds SeaBIOS source code # # Copyright (C) 2020, 2021, 2023 Leah Rowe <info@minifree.org> -# 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 @@ -34,9 +33,7 @@ main() build_seabios_payloads # clean it again. gotta keep it clean! - if [ -f seabios/Makefile ]; then - make distclean -BC seabios || exit 1 - fi + [[ -f Makefile ]] && make -C seabios distclean 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 bff41400..bc1cf997 100755 --- a/resources/scripts/build/payload/u-boot +++ b/resources/scripts/build/payload/u-boot @@ -3,7 +3,6 @@ # helper script: builds U-Boot source code # # Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com> -# Copyright (C) 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com> # Copyright (C) 2023 Leah Rowe <leah@libreboot.org> # # This program is free software: you can redistribute it and/or modify @@ -97,7 +96,7 @@ handle_dependencies() fi # Override the above defaults using board.cfg - . "${board_dir}/board.cfg" # source + source "${board_dir}/board.cfg" # source if [ "${ubtree}" = "undefined" ]; then printf "build/u-boot %s: ubtree undefined\n" \ @@ -162,12 +161,7 @@ build_uboot_elf() make -C "${ubdir}" olddefconfig make -C "${ubdir}" -j"$(nproc)" all - 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 + for f in "${ubdir}"/u-boot{,.bin,.dtb,.img,.itb,.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 33200cc4..4a66ffa3 100755 --- a/resources/scripts/build/release/roms +++ b/resources/scripts/build/release/roms @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: generate release archive (ROM images) # diff --git a/resources/scripts/build/release/src b/resources/scripts/build/release/src index 09a9810e..4c5e3bb0 100755 --- a/resources/scripts/build/release/src +++ b/resources/scripts/build/release/src @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # helper script: generate release archive (source code) # |