Revert "Remove most of Ferass's lbmk contributions"

This reverts commit a4ea286731.

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.
fsdg20230625
Leah Rowe 2023-06-13 12:09:01 +01:00
parent 81bf2293df
commit 2e38ddaa9b
47 changed files with 127 additions and 100 deletions

View File

@ -7,6 +7,7 @@
# https://libreboot.org/docs/build/ # https://libreboot.org/docs/build/
# #
# Copyright (C) 2020, 2021, 2023 Leah Rowe <info@minifree.org> # 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 # 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 # it under the terms of the GNU General Public License as published by
@ -22,11 +23,13 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
# #
.PHONY: all check download modules ich9m-descriptors payloads roms release \ .POSIX:
clean crossgcc-clean install-dependencies-ubuntu \
install-dependencies-debian install-dependencies-arch \ #.PHONY: all check download modules ich9m-descriptors payloads roms release \
install-dependencies-void install-dependencies-fedora38 \ # clean crossgcc-clean install-dependencies-ubuntu \
install-dependencies-parabola # install-dependencies-debian install-dependencies-arch \
# install-dependencies-void install-dependencies-fedora38 \
# install-dependencies-parabola
all: roms all: roms

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# SPDX-FileCopyrightText: 2022 Caleb La Grange <thonkpeasant@protonmail.com> # SPDX-FileCopyrightText: 2022 Caleb La Grange <thonkpeasant@protonmail.com>
# SPDX-FileCopyrightText: 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com>
# SPDX-FileCopyrightText: 2023 Leah Rowe <leah@libreboot.org> # SPDX-FileCopyrightText: 2023 Leah Rowe <leah@libreboot.org>
# SPDX-License-Identifier: GPL-3.0-only # SPDX-License-Identifier: GPL-3.0-only
@ -47,7 +48,9 @@ read_config()
bkup_url=${2} bkup_url=${2}
;; ;;
esac esac
done <<< $(eval "awk '${awkstr}' resources/git/revisions") done << EOF
$(eval "awk '${awkstr}' resources/git/revisions")
EOF
} }
verify_config() verify_config()

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# #
# helper script: build coreboot images with various payloads # helper script: build coreboot images with various payloads
@ -7,6 +7,7 @@
# <info@minifree.org> # <info@minifree.org>
# Copyright (C) 2015 Klemens Nanni <contact@autoboot.org> # Copyright (C) 2015 Klemens Nanni <contact@autoboot.org>
# Copyright (C) 2022 Caleb La Grange <thonkpeasant@protonmail.com> # 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 # 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 # it under the terms of the GNU General Public License as published by
@ -30,7 +31,7 @@ set -u -e
projectname="$(cat projectname)" projectname="$(cat projectname)"
opts="" opts=""
boards="" boards=
firstoption="${1}" firstoption="${1}"
main() main()
@ -49,19 +50,19 @@ main()
exit 0 exit 0
fi fi
while [[ $# > 0 ]]; do while [ $# -gt 0 ]; do
case ${1} in case ${1} in
-d) -d)
opts+=" -d ${2}" opts="${opts} -d ${2}"
shift ;; shift ;;
-p) -p)
opts+=" -p ${2}" opts="${opts} -p ${2}"
shift ;; shift ;;
-k) -k)
opts+=" -k ${2}" opts="${opts} -k ${2}"
shift ;; shift ;;
*) *)
boards+=" ${1} " ;; boards="${boards} ${1} " ;;
esac esac
shift shift
done done

View File

@ -1,9 +1,10 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: create ROM images for a given mainboard # helper script: create ROM images for a given mainboard
# #
# Copyright (C) 2020,2021,2023 Leah Rowe <info@minifree.org> # Copyright (C) 2020,2021,2023 Leah Rowe <info@minifree.org>
# Copyright (C) 2021 Ferass El Hafidi <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 Caleb La Grange <thonkpeasant@protonmail.com>
# Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com> # Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com>
# #
@ -63,16 +64,16 @@ CROSS_COMPILE=""
main() main()
{ {
while [[ $# > 0 ]]; do while [ $# -gt 0 ]; do
case ${1} in case ${1} in
-d) -d)
displaymodes+="${2}" displaymodes="${displaymodes}${2}"
shift ;; shift ;;
-p) -p)
payloads+="${2}" payloads="${payloads}${2}"
shift ;; shift ;;
-k) -k)
keyboard_layouts+="${2}" keyboard_layouts="${keyboard_layouts}${2}"
shift ;; shift ;;
*) *)
board=${1} ;; board=${1} ;;
@ -107,7 +108,7 @@ load_config()
exit 1 exit 1
fi fi
source "${boardcfgdir}/board.cfg" . "${boardcfgdir}/board.cfg"
if [ "${board}" != "${cbtree}" ]; then if [ "${board}" != "${cbtree}" ]; then
cbdir="coreboot/${cbtree}" cbdir="coreboot/${cbtree}"
@ -554,11 +555,11 @@ mkRomsWithGrub()
keymaps="" keymaps=""
if [ -z ${keyboard_layouts} ]; then if [ -z ${keyboard_layouts} ]; then
for kmapfile in "${kmapdir}"/*; do for kmapfile in "${kmapdir}"/*; do
keymaps+=" ${kmapfile}" keymaps="${keymaps} ${kmapfile}"
done done
else else
for keymapname in ${keyboard_layouts}; do for keymapname in ${keyboard_layouts}; do
keymaps+=" ${kmapdir}/${keymapname}.gkb" keymaps="${keymaps} ${kmapdir}/${keymapname}.gkb"
done done
fi fi
for keymapfile in ${keymaps}; do for keymapfile in ${keymaps}; do
@ -694,10 +695,11 @@ moverom()
if [ "${cuttype}" = "i945 laptop" ]; then if [ "${cuttype}" = "i945 laptop" ]; then
dd if=${_newrom} of=top64k.bin bs=1 \ dd if=${_newrom} of=top64k.bin bs=1 \
skip=$[$(stat -c %s ${_newrom}) - 0x10000] \ skip=$(($(stat -c %s ${_newrom}) - 0x10000)) \
count=64k count=64k
dd if=top64k.bin of=${_newrom} bs=1 seek=$[$(stat -c %s \ dd if=top64k.bin of=${_newrom} bs=1 \
${_newrom}) - 0x20000] count=64k conv=notrunc seek=$(($(stat -c %s ${_newrom}) - 0x20000)) \
count=64k conv=notrunc
rm -f top64k.bin rm -f top64k.bin
return 0 return 0
fi fi

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: clean the dependencies that were built in coreboot # helper script: clean the dependencies that were built in coreboot
# #
# Copyright (C) 2014, 2015, 2016, 2020 Leah Rowe <info@minifree.org> # 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 # 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 # 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 make -C "${board}/" distclean
# Clean its utilities as well # 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 make -C "${board}/util/${util}/" clean
done done
make -C "${board}/payloads/libpayload/" distclean make -C "${board}/payloads/libpayload/" distclean

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: clean the crossgcc builds # helper script: clean the crossgcc builds
# #
# Copyright (C) 2014-2016, 2020, 2023 Leah Rowe <info@minifree.org> # 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 # 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 # it under the terms of the GNU General Public License as published by

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: clean the dependencies that were built in flashrom # helper script: clean the dependencies that were built in flashrom
# #
# Copyright (C) 2014, 2015 Leah Rowe <info@minifree.org> # 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 # 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 # it under the terms of the GNU General Public License as published by

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: clean the dependencies that were built in GRUB # helper script: clean the dependencies that were built in GRUB
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: clean the previous build of ich9utils # helper script: clean the previous build of ich9utils
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: clean the dependencies that were built in memtest86+ # helper script: clean the dependencies that were built in memtest86+
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: nothing to see here, forks! # helper script: nothing to see here, forks!
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: delete the ROM images # helper script: delete the ROM images
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: clean the dependencies that were built in seabios # helper script: clean the dependencies that were built in seabios
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: clean the u-boot builds # helper script: clean the u-boot builds
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# arch script: installs build dependencies for Arch Linux # arch script: installs build dependencies for Arch Linux
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# ubuntu2004 script: installs build dependencies for Ubuntu 20.04 # ubuntu2004 script: installs build dependencies for Ubuntu 20.04
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# Fedora script: installs build dependencies for Fedora # Fedora script: installs build dependencies for Fedora
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# parabola script: installs build dependencies for Parabola GNU/Linux-libre # parabola script: installs build dependencies for Parabola GNU/Linux-libre
# based on the arch script # based on the arch script

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# ubuntu2004 script: installs build dependencies for Ubuntu 20.04 # ubuntu2004 script: installs build dependencies for Ubuntu 20.04
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# void script: installs build dependencies for Void Linux # void script: installs build dependencies for Void Linux
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# Copyright (C) 2020, 2023 Leah Rowe <info@minifree.org> # Copyright (C) 2020, 2023 Leah Rowe <info@minifree.org>
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: build various coreboot utilities # helper script: build various coreboot utilities
# #
@ -44,7 +44,7 @@ build_for_mainboard() {
[ ! -f "resources/coreboot/${board}/board.cfg" ] && \ [ ! -f "resources/coreboot/${board}/board.cfg" ] && \
continue continue
cbtree="undefined" cbtree="undefined"
source "resources/coreboot/${board}/board.cfg" # source . "resources/coreboot/${board}/board.cfg" # source
if [ "${cbtree}" = "undefined" ]; then if [ "${cbtree}" = "undefined" ]; then
printf "build/cbutils: improper cbtree definition for '%s'" \ printf "build/cbutils: improper cbtree definition for '%s'" \
"${board}" "${board}"
@ -58,7 +58,7 @@ buildutils() {
if [ ! -d "coreboot/${cbtree}/" ]; then if [ ! -d "coreboot/${cbtree}/" ]; then
./download coreboot $cbtree || return 1 ./download coreboot $cbtree || return 1
fi fi
for util in {cbfs,ifd}tool; do for util in cbfstool ifdtool; do
make -j$(nproc) -BC "coreboot/${cbtree}/util/${util}/" \ make -j$(nproc) -BC "coreboot/${cbtree}/util/${util}/" \
|| return 1 || return 1
done done

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: builds flashrom source code # helper script: builds flashrom source code
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: builds GRUB2 source code # helper script: builds GRUB2 source code
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: build ich9utils # helper script: build ich9utils
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: builds memtest86+ source code # helper script: builds memtest86+ source code
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# generate GRUB ELF files (coreboot payload) and configuration files # generate GRUB ELF files (coreboot payload) and configuration files
# #
@ -24,7 +24,7 @@ set -u -e
grubcfgsdir="resources/grub" grubcfgsdir="resources/grub"
keymap="" keymap=""
source "${grubcfgsdir}/modules.list" . "${grubcfgsdir}/modules.list"
main() main()
{ {

View File

@ -1,8 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: builds SeaBIOS source code # helper script: builds SeaBIOS source code
# #
# Copyright (C) 2020, 2021, 2023 Leah Rowe <info@minifree.org> # 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 # 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 # it under the terms of the GNU General Public License as published by
@ -36,7 +37,9 @@ main()
done done
# clean it again. gotta keep it clean! # 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} printf "Done! SeaBIOS files are in %s/\n\n" ${payloaddir}
} }

View File

@ -3,6 +3,7 @@
# helper script: builds U-Boot source code # helper script: builds U-Boot source code
# #
# Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com> # 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> # Copyright (C) 2023 Leah Rowe <leah@libreboot.org>
# #
# This program is free software: you can redistribute it and/or modify # This program is free software: you can redistribute it and/or modify
@ -96,7 +97,7 @@ handle_dependencies()
fi fi
# Override the above defaults using board.cfg # Override the above defaults using board.cfg
source "${board_dir}/board.cfg" # source . "${board_dir}/board.cfg" # source
if [ "${ubtree}" = "undefined" ]; then if [ "${ubtree}" = "undefined" ]; then
printf "build/u-boot %s: ubtree undefined\n" \ printf "build/u-boot %s: ubtree undefined\n" \
@ -161,7 +162,12 @@ build_uboot_elf()
make -C "${ubdir}" olddefconfig make -C "${ubdir}" olddefconfig
make -C "${ubdir}" -j"$(nproc)" all 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 if [ -f "$f" ]; then
mv "$f" "${dest_dir}/" mv "$f" "${dest_dir}/"
fi fi

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: generate release archive (ROM images) # helper script: generate release archive (ROM images)
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: generate release archive (source code) # helper script: generate release archive (source code)
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# Copyright (C) 2021 Leah Rowe <info@minifree.org> # Copyright (C) 2021 Leah Rowe <info@minifree.org>
# #

View File

@ -1,8 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: modify coreboot configs (run make menuconfig) # helper script: modify coreboot configs (run make menuconfig)
# #
# Copyright (C) 2021, 2023 Leah Rowe <info@minifree.org> # Copyright (C) 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 # 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 # it under the terms of the GNU General Public License as published by
@ -49,7 +50,7 @@ modifyconf() {
fi fi
cbtree="" cbtree=""
source "resources/coreboot/${board}/board.cfg" # source . "resources/coreboot/${board}/board.cfg" # source
if [ -z ${cbtree} ]; then if [ -z ${cbtree} ]; then
return 0 return 0

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: modify coreboot configs (run make menuconfig) # helper script: modify coreboot configs (run make menuconfig)
# #

View File

@ -1,8 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: modify U-Boot configs (run make menuconfig) # helper script: modify U-Boot configs (run make menuconfig)
# #
# Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com> # Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com>
# Copyright (C) 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com>
# Copyright (C) 2023 Leah Rowe <info@minifree.org> # Copyright (C) 2023 Leah Rowe <info@minifree.org>
# #
# This program is free software: you can redistribute it and/or modify # This program is free software: you can redistribute it and/or modify
@ -50,7 +51,7 @@ modifyconf()
fi fi
ubtree="undefined" ubtree="undefined"
source "resources/u-boot/${board}/board.cfg" # source . "resources/u-boot/${board}/board.cfg" # source
if [ "${ubtree}" = "undefined" ]; then if [ "${ubtree}" = "undefined" ]; then
return 0 return 0

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# SPDX-FileCopyrightText: 2022 Caleb La Grange <thonkpeasant@protonmail.com> # SPDX-FileCopyrightText: 2022 Caleb La Grange <thonkpeasant@protonmail.com>
# SPDX-FileCopyrightText: 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com>
# SPDX-FileCopyrightText: 2023 Leah Rowe <info@minifree.org> # SPDX-FileCopyrightText: 2023 Leah Rowe <info@minifree.org>
# SPDX-License-Identifier: GPL-3.0-only # SPDX-License-Identifier: GPL-3.0-only
@ -63,23 +64,23 @@ detect_firmware()
. "${boarddir}/board.cfg" . "${boarddir}/board.cfg"
if [ "${CONFIG_HAVE_MRC}" = "y" ]; then if [ "${CONFIG_HAVE_MRC}" = "y" ]; then
needs+=" MRC" needs="${needs} MRC"
fi fi
if [ "${CONFIG_HAVE_IFD_BIN}" = "y" ]; then if [ "${CONFIG_HAVE_IFD_BIN}" = "y" ]; then
needs+=" IFD" needs="${needs} IFD"
fi fi
if [ "${CONFIG_HAVE_ME_BIN}" = "y" ]; then if [ "${CONFIG_HAVE_ME_BIN}" = "y" ]; then
needs+=" ME" needs="${needs} ME"
fi fi
if [ "${CONFIG_HAVE_GBE_BIN}" = "y" ]; then if [ "${CONFIG_HAVE_GBE_BIN}" = "y" ]; then
needs+=" GBE" needs="${needs} GBE"
fi fi
if [ "${CONFIG_KBC1126_FIRMWARE}" = "y" ]; then if [ "${CONFIG_KBC1126_FIRMWARE}" = "y" ]; then
needs+=" EC" needs="${needs} EC"
fi fi
if [ "${CONFIG_BOARD_DELL_E6400}" = "y" ] \ if [ "${CONFIG_BOARD_DELL_E6400}" = "y" ] \
&& [ "${CONFIG_VGA_BIOS_FILE}" != "" ]; then && [ "${CONFIG_VGA_BIOS_FILE}" != "" ]; then
needs+=" E6400VGA" needs="${needs} E6400VGA"
fi fi
if [ -z ${needs+x} ]; then if [ -z ${needs+x} ]; then
printf 'No binary blobs needed for this board\n' printf 'No binary blobs needed for this board\n'
@ -142,7 +143,9 @@ scan_sources_config()
e6400_vga_romname=${2} e6400_vga_romname=${2}
;; ;;
esac esac
done <<< $(eval "awk '${awkstr}' resources/blobs/sources") done << EOF
$(eval "awk '${awkstr}' resources/blobs/sources")
EOF
} }
build_dependencies() build_dependencies()
@ -178,16 +181,16 @@ download_blobs()
for need in ${needs}; do for need in ${needs}; do
case ${need} in case ${need} in
*ME*) *ME*)
download_blob_intel_me || _failed+=" me" download_blob_intel_me || _failed="${_failed} me"
;; ;;
*EC*) *EC*)
download_ec || _failed+=" ec" download_ec || _failed="${_failed} ec"
;; ;;
*E6400VGA*) *E6400VGA*)
download_e6400vga || _failed+=" e6400vga" download_e6400vga || _failed="${_failed} e6400vga"
;; ;;
*MRC*) *MRC*)
./download mrc || _failed+=" mrc" ./download mrc || _failed="${_failed} mrc"
;; ;;
esac esac
done done

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# script to automate extracting blobs from an existing vendor bios # script to automate extracting blobs from an existing vendor bios
# SPDX-FileCopyrightText: 2022 Caleb La Grange <thonkpeasant@protonmail.com> # SPDX-FileCopyrightText: 2022 Caleb La Grange <thonkpeasant@protonmail.com>

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# SPDX-FileCopyrightText: 2022 Caleb La Grange <thonkpeasant@protonmail.com> # SPDX-FileCopyrightText: 2022 Caleb La Grange <thonkpeasant@protonmail.com>
# SPDX-FileCopyrightText: 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com>
# SPDX-FileCopyrightText: 2023 Leah Rowe <info@minifree.org> # SPDX-FileCopyrightText: 2023 Leah Rowe <info@minifree.org>
# SPDX-License-Identifier: GPL-3.0-only # SPDX-License-Identifier: GPL-3.0-only
@ -111,10 +112,10 @@ detect_board()
filename=$(basename ${path}) filename=$(basename ${path})
case ${filename} in case ${filename} in
grub_*) grub_*)
board=$(cut -d '_' -f2-3 <<<${filename}) board=$(echo "${filename}" | cut -d '_' -f2-3)
;; ;;
seabios_withgrub_*) seabios_withgrub_*)
board=$(cut -d '_' -f3-4 <<<${filename}) board=$(echo "${filename}" | cut -d '_' -f3-4)
;; ;;
*.tar.xz) *.tar.xz)
_stripped_prefix=${filename#*_} _stripped_prefix=${filename#*_}

View File

@ -1,9 +1,10 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# #
# helper script: update coreboot configs (run make oldconfig) # helper script: update coreboot configs (run make oldconfig)
# #
# Copyright (C) 2021 Leah Rowe <info@minifree.org> # Copyright (C) 2021 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 # 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 # it under the terms of the GNU General Public License as published by
@ -54,7 +55,7 @@ updateconf()
if [ -f "${boarddir}/board.cfg" ]; then if [ -f "${boarddir}/board.cfg" ]; then
cbtree="undefined" cbtree="undefined"
source "${boarddir}/board.cfg" # source . "${boarddir}/board.cfg" # source
if [ "${cbtree}" = "undefined" ]; then if [ "${cbtree}" = "undefined" ]; then
return 0 return 0
fi fi

View File

@ -1,9 +1,10 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: download coreboot # helper script: download coreboot
# #
# Copyright (C) 2014-2016,2020,2021,2023 Leah Rowe <info@minifree.org> # Copyright (C) 2014-2016,2020,2021,2023 Leah Rowe <info@minifree.org>
# Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com> # Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com>
# Copyright (C) 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com>
# #
# This program is free software: you can redistribute it and/or modify # 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 # 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 check_config_for_board "${_board}" || return 1
# This is to override $cbrevision and $cbtree # This is to override $cbrevision and $cbtree
source "${cbcfgsdir}/${_board}/board.cfg" || exit 1 . "${cbcfgsdir}/${_board}/board.cfg" || exit 1
if [ "${_board}" != "${cbtree}" ]; then if [ "${_board}" != "${cbtree}" ]; then
_board="${cbtree}" _board="${cbtree}"

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: downloads flashrom and patches it # helper script: downloads flashrom and patches it
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: Downloads GRUB and patches it. # helper script: Downloads GRUB and patches it.
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# #
# Copyright (C) 2020 Leah Rowe <info@minifree.org> # Copyright (C) 2020 Leah Rowe <info@minifree.org>
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: Downloads MemTest86+ and patches it # helper script: Downloads MemTest86+ and patches it
# #

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# #
# Copyright (C) 2015, 2016, 2021 Leah Rowe <info@minifree.org> # Copyright (C) 2015, 2016, 2021 Leah Rowe <info@minifree.org>
# #

View File

@ -1,9 +1,10 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# helper script: download u-boot # helper script: download u-boot
# #
# Copyright (C) 2021 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org> # Copyright (C) 2021 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
# Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com> # Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com>
# Copyright (C) 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com>
# #
# This program is free software: you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by
@ -22,7 +23,7 @@
[ "x${DEBUG+set}" = 'xset' ] && set -v [ "x${DEBUG+set}" = 'xset' ] && set -v
set -u -e set -u -e
[[ -f build_error ]] && rm -f build_error [ -f build_error ] && rm -f build_error
list_supported_boards() { list_supported_boards() {
for board in resources/u-boot/*; do for board in resources/u-boot/*; do
@ -55,7 +56,7 @@ downloadfor() {
fi fi
# This is to override $ubrevision and $ubtree # 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 if [ -f build_error ]; then
printf "ERROR: %s: problem sourcing %s/board.cfg\n" \ printf "ERROR: %s: problem sourcing %s/board.cfg\n" \
"download/u-boot" "${board}" "download/u-boot" "${board}"
@ -239,10 +240,10 @@ if [ $# -eq 0 ] ; then
download_uboot_board "${board}" download_uboot_board "${board}"
done done
exit 0 exit 0
elif [ $# -eq 1 -a "$1" == "--help" ] ; then elif [ $# -eq 1 ] && [ "$1" = "--help" ] ; then
usage usage
exit 0 exit 0
elif [ $# -eq 1 -a "$1" == "--list-boards" ] ; then elif [ $# -eq 1 ] && [ "$1" = "--list-boards" ] ; then
list_supported_boards list_supported_boards
exit 0 exit 0
elif [ $# -eq 1 ] ; then elif [ $# -eq 1 ] ; then

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env sh
# #
# helper script: update U-Boot configs (run make oldconfig) # helper script: update U-Boot configs (run make oldconfig)
@ -33,7 +33,7 @@ updateconf() {
board="$1" board="$1"
if [ -f "resources/u-boot/${board}/board.cfg" ]; then if [ -f "resources/u-boot/${board}/board.cfg" ]; then
ubtree="undefined" ubtree="undefined"
source "resources/u-boot/${board}/board.cfg" # source . "resources/u-boot/${board}/board.cfg" # source
if [ "${ubtree}" = "undefined" ]; then if [ "${ubtree}" = "undefined" ]; then
return 0 return 0
fi fi