redoing project, starting with incremental updates

This commit is contained in:
ag-tsotetsi
2026-02-19 22:19:51 +02:00
parent 6fe169f427
commit 44581e8bc8

68
build.sh Executable file
View File

@@ -0,0 +1,68 @@
#!/usr/bin/env bash
set -euo pipefail
umask 022
export LC_ALL="POSIX"
export TARGET="x86_64-axe-linux-gnu"
export MAKEFLAGS="-j$(nproc)"
export SYSROOT="$PWD/sysroot"
export PROJDIR="$PWD"
export SOURCES="$SYSROOT/sources"
export CROSS="$SYSROOT/cross"
export PATH="$CROSS/bin:/usr/bin:/usr/sbin"
export CONFIG_SITE="$SYSROOT/usr/share/config.site"
BINUTILS_VERSION=2.45.1
BINUTILS_URL=https://mirror.ufs.ac.za/gnu/binutils/binutils-$BINUTILS_VERSION.tar.xz
if [ ! -d "$SYSROOT" ]; then
mkdir -p "$SYSROOT"/{etc,cross,sources,usr,dev,proc,sys,run}
mkdir -p "$SYSROOT"/usr/{bin,sbin,lib,include}
for directory in bin sbin lib; do
ln -fs "usr/$directory" "$SYSROOT/$directory"
done
fi
fetch() {
wget -N -c --show-progress -q -P "$SOURCES" $1
}
bootstrap_binutils() {
fetch $BINUTILS_URL
cd "$SOURCES"
tar xf binutils-$BINUTILS_VERSION.tar.xz
cd binutils-$BINUTILS_VERSION
mkdir -p build
cd build
../configure \
--prefix="$CROSS" \
--with-sysroot="$SYSROOT" \
--target="$TARGET" \
--disable-nls \
--enable-gprofng=no \
--disable-werror \
--enable-new-dtags \
--enable-default-hash-style=gnu
make
make install
}
bootstrap_binutils