Specify dependencies specifically for building coreboot toolchains in the file, so they are not conflated with the dependencies required for building firmware-open. Remove building the toolchain when building firmware, so that the new script is the single source for building coreboot toolchains. Signed-off-by: Tim Crawford <tcrawford@system76.com>
64 lines
1.3 KiB
Bash
Executable File
64 lines
1.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# SPDX-License-Identifier: GPL-3.0-only
|
|
|
|
# Build the coreboot toolchains
|
|
|
|
# shellcheck disable=SC1091
|
|
|
|
set -e
|
|
|
|
. /etc/os-release
|
|
if [ "$ID" = "arch" ] || [[ "$ID_LIKE" =~ "arch" ]]; then
|
|
sudo pacman -S --noconfirm \
|
|
bison \
|
|
bzip2 \
|
|
ca-certificates \
|
|
curl \
|
|
flex \
|
|
gcc \
|
|
gcc-ada \
|
|
make \
|
|
patch \
|
|
tar \
|
|
xz \
|
|
zlib
|
|
elif [ "$ID" = "fedora" ] || [[ "$ID_LIKE" =~ "fedora" ]]; then
|
|
sudo dnf install --assumeyes \
|
|
bison \
|
|
bzip2 \
|
|
ca-certificates \
|
|
curl \
|
|
flex \
|
|
gcc \
|
|
gcc-c++ \
|
|
gcc-gnat \
|
|
make \
|
|
patch \
|
|
tar \
|
|
xz \
|
|
zlib-devel
|
|
elif [ "$ID" = "ubuntu" ] || [[ "$ID_LIKE" =~ "debian" ]]; then
|
|
sudo apt-get --quiet update
|
|
sudo apt-get --quiet install --no-install-recommends --assume-yes \
|
|
bison \
|
|
bzip2 \
|
|
ca-certificates \
|
|
curl \
|
|
flex \
|
|
g++ \
|
|
gcc \
|
|
gnat \
|
|
make \
|
|
patch \
|
|
tar \
|
|
xz-utils \
|
|
zlib1g-dev
|
|
else
|
|
printf "\e[1;31munsupported host:\e[0m %s\n" "$ID"
|
|
exit 1
|
|
fi
|
|
|
|
make -C coreboot CPUS="$(nproc)" crossgcc-i386
|
|
make -C coreboot CPUS="$(nproc)" crossgcc-x64
|
|
make -C coreboot gitconfig
|