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>fsdg20230625
parent
d45b2e70dc
commit
f787044642
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/bin/sh
|
||||||
# SPDX-FileCopyrightText: 2022 Caleb La Grange <thonkpeasant@protonmail.com>
|
# SPDX-FileCopyrightText: 2022 Caleb La Grange <thonkpeasant@protonmail.com>
|
||||||
# SPDX-License-Identifier: GPL-3.0-only
|
# SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
|
|
11
Makefile
11
Makefile
|
@ -5,6 +5,7 @@
|
||||||
# See docs/maintain/ and docs/git/ for information about the build system
|
# See docs/maintain/ and docs/git/ for information about the build system
|
||||||
#
|
#
|
||||||
# Copyright (C) 2020, 2021 Leah Rowe <info@minifree.org>
|
# Copyright (C) 2020, 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
|
||||||
|
@ -20,10 +21,12 @@
|
||||||
# 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
|
# clean crossgcc-clean install-dependencies-ubuntu \
|
||||||
|
# install-dependencies-debian install-dependencies-arch \
|
||||||
|
# install-dependencies-void
|
||||||
|
|
||||||
all: roms
|
all: roms
|
||||||
|
|
||||||
|
|
2
blobutil
2
blobutil
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/bin/sh
|
||||||
# SPDX-FileCopyrightText: 2022 Caleb La Grange <thonkpeasant@protonmail.com>
|
# SPDX-FileCopyrightText: 2022 Caleb La Grange <thonkpeasant@protonmail.com>
|
||||||
# SPDX-License-Identifier: GPL-3.0-only
|
# SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
|
|
2
build
2
build
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/bin/sh
|
||||||
|
|
||||||
# generic build script, for building components (all of them)
|
# generic build script, for building components (all of them)
|
||||||
#
|
#
|
||||||
|
|
2
download
2
download
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/bin/sh
|
||||||
|
|
||||||
# Generic script for downloading programs used by the build system
|
# Generic script for downloading programs used by the build system
|
||||||
#
|
#
|
||||||
|
|
2
modify
2
modify
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/bin/sh
|
||||||
|
|
||||||
# generic scripts for modifying configs and such
|
# generic scripts for modifying configs and such
|
||||||
#
|
#
|
||||||
|
|
|
@ -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
|
||||||
|
@ -6,6 +6,7 @@
|
||||||
# Copyright (C) 2014, 2015, 2016, 2020, 2021 Leah Rowe <info@minifree.org>
|
# Copyright (C) 2014, 2015, 2016, 2020, 2021 Leah Rowe <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
|
||||||
|
@ -80,6 +81,7 @@ buildrom() {
|
||||||
}
|
}
|
||||||
|
|
||||||
if [ $# -gt 0 ]; then
|
if [ $# -gt 0 ]; then
|
||||||
|
boards=
|
||||||
firstoption="${1}"
|
firstoption="${1}"
|
||||||
if [ "${firstoption}" = "help" ]; then
|
if [ "${firstoption}" = "help" ]; then
|
||||||
help
|
help
|
||||||
|
@ -90,19 +92,19 @@ if [ $# -gt 0 ]; then
|
||||||
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
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
#!/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 Leah Rowe <info@minifree.org>
|
# 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 Caleb La Grange <thonkpeasant@protonmail.com>
|
||||||
# Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com>
|
# Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com>
|
||||||
#
|
#
|
||||||
|
@ -33,16 +33,16 @@ projectname="$(cat projectname)"
|
||||||
displaymodes=""
|
displaymodes=""
|
||||||
payloads=""
|
payloads=""
|
||||||
keyboard_layouts=""
|
keyboard_layouts=""
|
||||||
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} ;;
|
||||||
|
@ -79,7 +79,7 @@ payload_memtest="n"
|
||||||
payload_uboot="n"
|
payload_uboot="n"
|
||||||
uboot_config="undefined"
|
uboot_config="undefined"
|
||||||
# Override the above defaults using board.cfg
|
# Override the above defaults using board.cfg
|
||||||
source "resources/coreboot/${board}/board.cfg"
|
. "resources/coreboot/${board}/board.cfg"
|
||||||
|
|
||||||
if [ "${grub_scan_disk}" = "undefined" ]; then
|
if [ "${grub_scan_disk}" = "undefined" ]; then
|
||||||
printf "build/roms: Target %s does not define grub_scan_disk. Defaulting to 'both'.\n" "${board}"
|
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}"
|
printf "\nCreating new ROM image: %s\n" "${newrompath}"
|
||||||
|
|
||||||
if [ "${cuttype}" = "4MiB IFD BIOS region" ]; then
|
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
|
else
|
||||||
cp ${rompath} ${newrompath}
|
cp ${rompath} ${newrompath}
|
||||||
fi
|
fi
|
||||||
|
@ -316,8 +316,8 @@ moverom() {
|
||||||
done
|
done
|
||||||
|
|
||||||
if [ "${cuttype}" = "i945 laptop" ]; then
|
if [ "${cuttype}" = "i945 laptop" ]; then
|
||||||
dd if=${newrompath} of=top64k.bin bs=1 skip=$[$(stat -c %s ${newrompath}) - 0x10000] count=64k
|
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=top64k.bin of=${newrompath} bs=1 seek=$(($(stat -c %s ${newrompath}) - 0x20000)) count=64k conv=notrunc
|
||||||
rm -f top64k.bin
|
rm -f top64k.bin
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@ -479,7 +479,7 @@ mkRomsWithGrub() {
|
||||||
keymaps="resources/grub/keymap/*"
|
keymaps="resources/grub/keymap/*"
|
||||||
else
|
else
|
||||||
for keymapname in ${keyboard_layouts}; do
|
for keymapname in ${keyboard_layouts}; do
|
||||||
keymaps+="resources/grub/keymap/${keymapname}.gkb"
|
keymaps="${keymaps} resources/grub/keymap/${keymapname}.gkb"
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
for keymapfile in ${keymaps}; do
|
for keymapfile in ${keymaps}; do
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#!/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
|
||||||
#
|
#
|
||||||
|
@ -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
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
# helper script: clean the crossgcc builds
|
# helper script: clean the crossgcc builds
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#!/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
|
||||||
#
|
#
|
||||||
|
|
|
@ -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
|
||||||
#
|
#
|
||||||
|
|
|
@ -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
|
||||||
#
|
#
|
||||||
|
|
|
@ -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+
|
||||||
#
|
#
|
||||||
|
|
|
@ -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!
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
# helper script: delete the ROM images
|
# helper script: delete the ROM images
|
||||||
#
|
#
|
||||||
|
|
|
@ -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
|
||||||
#
|
#
|
||||||
|
|
|
@ -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
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
# arch script: installs build dependencies for Arch Linux
|
# arch script: installs build dependencies for Arch Linux
|
||||||
#
|
#
|
||||||
# Copyright (C) 2021 Melissa Goad <mszoopers@protonmail.com>
|
# Copyright (C) 2021 Melissa Goad <mszoopers@protonmail.com>
|
||||||
# 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
|
||||||
|
@ -20,7 +21,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
if [ $EUID -ne 0 ]; then
|
if [ "$(id -u)" -ne 0 ]; then
|
||||||
printf "This script must be run as root\n"
|
printf "This script must be run as root\n"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
#!/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
|
||||||
#
|
#
|
||||||
# Copyright (C) 2014, 2015, 2021 Leah Rowe <info@minifree.org>
|
# Copyright (C) 2014, 2015, 2021 Leah Rowe <info@minifree.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
|
||||||
|
@ -18,7 +19,7 @@
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
if [ $EUID -ne 0 ]; then
|
if [ "$(id -u)" -ne 0 ]; then
|
||||||
printf "This script must be run as root\n"
|
printf "This script must be run as root\n"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
#!/bin/bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
# Fedora script: installs build dependencies for Fedora
|
# Fedora script: installs build dependencies for Fedora
|
||||||
#
|
#
|
||||||
# Copyright (C) 2021 Melody Goad <mszoopers@protonmail.com>
|
# Copyright (C) 2021 Melody Goad <mszoopers@protonmail.com>
|
||||||
# Copyright (C) 2021 Wei Mingzhi <whistler@member.fsf.org>
|
# Copyright (C) 2021 Wei Mingzhi <whistler@member.fsf.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
|
||||||
|
@ -20,7 +21,7 @@
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
if [ $EUID -ne 0 ]; then
|
if [ "$(id -u)" -ne 0 ]; then
|
||||||
printf "This script must be run as root\n"
|
printf "This script must be run as root\n"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
#!/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
|
||||||
#
|
#
|
||||||
# Copyright (C) 2014, 2015, 2021 Leah Rowe <info@minifree.org>
|
# Copyright (C) 2014, 2015, 2021 Leah Rowe <info@minifree.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
|
||||||
|
@ -18,7 +19,7 @@
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
if [ $EUID -ne 0 ]; then
|
if [ "$(id -u)" -ne 0 ]; then
|
||||||
printf "This script must be run as root\n"
|
printf "This script must be run as root\n"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
# void script: installs build dependencies for Void Linux
|
# void script: installs build dependencies for Void Linux
|
||||||
#
|
#
|
||||||
# Copyright (C) 2021 Caleb La Grange <thonkpeasant@protonmail.com>
|
# Copyright (C) 2021 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
|
||||||
|
@ -18,7 +19,7 @@
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
if [ $EUID -ne 0 ]; then
|
if [ "$(id -u)" -ne 0 ]; then
|
||||||
printf "This script must be run as root\n"
|
printf "This script must be run as root\n"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -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>
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
# helper script: build various coreboot utilities
|
# helper script: build various coreboot utilities
|
||||||
#
|
#
|
||||||
|
@ -34,7 +34,7 @@ buildutils() {
|
||||||
printf "build/cbutils: coreboot/%s not found. Exiting\n" "${cbtree}"
|
printf "build/cbutils: coreboot/%s not found. Exiting\n" "${cbtree}"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
for util in {cbfs,ifd}tool; do
|
for util in cbfstool ifdtool; do
|
||||||
(
|
(
|
||||||
cd "coreboot/${cbtree}/util/${util}/"
|
cd "coreboot/${cbtree}/util/${util}/"
|
||||||
make -j$(nproc) || return 1
|
make -j$(nproc) || return 1
|
||||||
|
@ -52,7 +52,7 @@ buildfromboardconfig() {
|
||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
cbtree="undefined"
|
cbtree="undefined"
|
||||||
source "resources/coreboot/${board}/board.cfg"
|
. "resources/coreboot/${board}/board.cfg" # source
|
||||||
if [ "${cbtree}" = "undefined" ]; then
|
if [ "${cbtree}" = "undefined" ]; then
|
||||||
printf "build/cbutils: improper cbtree definition for '%s'" "${board}"
|
printf "build/cbutils: improper cbtree definition for '%s'" "${board}"
|
||||||
return 1
|
return 1
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
# helper script: builds flashrom source code
|
# helper script: builds flashrom source code
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
# helper script: builds GRUB2 source code
|
# helper script: builds GRUB2 source code
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
# helper script: build ich9utils
|
# helper script: build ich9utils
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
# helper script: builds memtest86+ source code
|
# helper script: builds memtest86+ source code
|
||||||
#
|
#
|
||||||
|
|
|
@ -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
|
||||||
#
|
#
|
||||||
|
@ -22,7 +22,7 @@
|
||||||
set -u -e
|
set -u -e
|
||||||
|
|
||||||
# This is where GRUB is expected to be (outside of the grub-assemble, instead in main checkout)
|
# This is where GRUB is expected to be (outside of the grub-assemble, instead in main checkout)
|
||||||
source "resources/grub/modules.list"
|
. "resources/grub/modules.list" # source
|
||||||
|
|
||||||
printf "Creating GRUB payloads and configuration files\n"
|
printf "Creating GRUB payloads and configuration files\n"
|
||||||
|
|
||||||
|
|
|
@ -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 Leah Rowe <info@minifree.org>
|
# Copyright (C) 2020, 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
|
||||||
|
@ -38,7 +39,7 @@ fi
|
||||||
cd seabios/
|
cd seabios/
|
||||||
|
|
||||||
# for libgfxinit setup:
|
# for libgfxinit setup:
|
||||||
[[ -f Makefile ]] && make distclean
|
[ -f Makefile ] && make distclean
|
||||||
cp ../resources/seabios/config/libgfxinit .config
|
cp ../resources/seabios/config/libgfxinit .config
|
||||||
make silentoldconfig -j$(nproc)
|
make silentoldconfig -j$(nproc)
|
||||||
make -j$(nproc)
|
make -j$(nproc)
|
||||||
|
@ -47,7 +48,7 @@ mv out/vgabios.bin ../payload/seabios/seavgabios.bin
|
||||||
rm .config
|
rm .config
|
||||||
|
|
||||||
# for vgarom setup:
|
# for vgarom setup:
|
||||||
[[ -f Makefile ]] && make distclean
|
[ -f Makefile ] && make distclean
|
||||||
cp ../resources/seabios/config/vgarom .config
|
cp ../resources/seabios/config/vgarom .config
|
||||||
make silentoldconfig -j$(nproc)
|
make silentoldconfig -j$(nproc)
|
||||||
make -j$(nproc)
|
make -j$(nproc)
|
||||||
|
@ -55,7 +56,7 @@ mv out/bios.bin.elf ../payload/seabios/seabios_vgarom.elf
|
||||||
rm .config
|
rm .config
|
||||||
|
|
||||||
# clean it again. gotta keep it clean!
|
# clean it again. gotta keep it clean!
|
||||||
[[ -f Makefile ]] && make distclean
|
[ -f Makefile ] && make distclean
|
||||||
|
|
||||||
printf "Done! SeaBIOS files are in payload/seabios/\n\n"
|
printf "Done! SeaBIOS files are in payload/seabios/\n\n"
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
# helper script: builds U-Boot source code
|
# helper script: builds U-Boot source code
|
||||||
#
|
#
|
||||||
# Copyright (C) 2020, 2021 Leah Rowe <info@minifree.org>
|
# 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 Alper Nebi Yasak <alpernebiyasak@gmail.com>
|
# Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.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
|
||||||
|
@ -63,7 +63,7 @@ for board in "$@"; do
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Override the above defaults using board.cfg
|
# Override the above defaults using board.cfg
|
||||||
source "${board_dir}/board.cfg"
|
. "${board_dir}/board.cfg" # source
|
||||||
|
|
||||||
if [ "${ubtree}" = "undefined" ]; then
|
if [ "${ubtree}" = "undefined" ]; then
|
||||||
printf "%s: Target %s does not define a U-Boot tree. Skipping build.\n" \
|
printf "%s: Target %s does not define a U-Boot tree. Skipping build.\n" \
|
||||||
|
@ -119,7 +119,8 @@ for board in "$@"; do
|
||||||
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
|
||||||
|
|
|
@ -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)
|
||||||
|
|
|
@ -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)
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
#!/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 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
|
||||||
|
@ -32,7 +33,7 @@ modifyconf() {
|
||||||
board="$1"
|
board="$1"
|
||||||
if [ -f "resources/coreboot/${board}/board.cfg" ]; then
|
if [ -f "resources/coreboot/${board}/board.cfg" ]; then
|
||||||
cbtree="undefined"
|
cbtree="undefined"
|
||||||
source "resources/coreboot/${board}/board.cfg"
|
. "resources/coreboot/${board}/board.cfg" # source
|
||||||
if [ "${cbtree}" = "undefined" ]; then
|
if [ "${cbtree}" = "undefined" ]; then
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -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)
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
#!/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>
|
||||||
#
|
#
|
||||||
# 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
|
||||||
|
@ -32,7 +33,7 @@ modifyconf() {
|
||||||
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"
|
. "resources/u-boot/${board}/board.cfg" # source
|
||||||
if [ "${ubtree}" = "undefined" ]; then
|
if [ "${ubtree}" = "undefined" ]; then
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -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
|
||||||
|
@ -32,7 +33,7 @@ updateconf() {
|
||||||
board="$1"
|
board="$1"
|
||||||
if [ -f "resources/coreboot/${board}/board.cfg" ]; then
|
if [ -f "resources/coreboot/${board}/board.cfg" ]; then
|
||||||
cbtree="undefined"
|
cbtree="undefined"
|
||||||
source "resources/coreboot/${board}/board.cfg"
|
. "resources/coreboot/${board}/board.cfg" # source
|
||||||
if [ "${cbtree}" = "undefined" ]; then
|
if [ "${cbtree}" = "undefined" ]; then
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
#
|
#
|
||||||
# helper script: update coreboot configs (run make oldconfig)
|
# helper script: update coreboot configs (run make oldconfig)
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
#!/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)
|
||||||
#
|
#
|
||||||
# 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
|
||||||
|
@ -32,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"
|
. "resources/u-boot/${board}/board.cfg" # source
|
||||||
if [ "${ubtree}" = "undefined" ]; then
|
if [ "${ubtree}" = "undefined" ]; then
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
Loading…
Reference in New Issue