acadia/scripts/build_toolchain.sh

52 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
set -e
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
echo $DIR
ARCH="x86_64"
TARGET="$ARCH-pc-acadia"
TOOLCHAIN="$DIR/../toolchain"
PREFIX="$TOOLCHAIN/local"
BUILD="$DIR/../builddbg"
SYSROOT="$DIR/../sysroot"
BINUTILS_VERSION="2.40"
BINUTILS_NAME="binutils-$BINUTILS_VERSION"
BINUTILS_PKG="${BINUTILS_NAME}.tar.xz"
BINUTILS_BASE_URL="https://ftp.gnu.org/gnu/binutils"
mkdir -p "$TOOLCHAIN/srcs"
pushd "$TOOLCHAIN/srcs"
# TODO: Check md5sum
if [ ! -e "$BINUTILS_PKG" ]; then
curl -LO "$BINUTILS_BASE_URL/$BINUTILS_PKG"
fi
if [ ! -d "$BINUTILS_NAME" ]; then
tar -xJf ${BINUTILS_PKG}
fi
popd
mkdir -p "$TOOLCHAIN/build"
pushd "$TOOLCHAIN/build"
# rm -rf binutils
if [ ! -d binutils ]; then
mkdir -p binutils
pushd binutils
# skip building documentation
export ac_cv_prog_MAKEINFO=true
"$TOOLCHAIN"/srcs/$BINUTILS_NAME/configure --prefix="$PREFIX" --target="$TARGET" --with-sysroot="$SYSROOT" --enable-shared --disable-nls
make MAKEINFO=true -j 8
make install MAKEINFO=true -j 8
popd
fi
popd