xenia-canary/third_party/binutils/build.sh

66 lines
1.4 KiB
Bash

#!/usr/bin/env bash
set -e
THIS_SCRIPT_DIR=$( cd "$( dirname "$0" )" && pwd )
SNAPSHOT_VERSION=2.24
echo ""
echo "Building binutils from snapshot version $SNAPSHOT_VERSION..."
echo ""
echo "Ensure you have the following packages installed:"
echo " build-essential texinfo flex bison"
echo ""
echo "Removing old output..."
rm -rf ./bin
rm -rf ./powerpc-none-elf
rm -rf ./share
SNAPSHOT_FILE=binutils-$SNAPSHOT_VERSION.tar.gz
if [ ! -f $SNAPSHOT_FILE ]; then
echo ""
echo "Grabbing binutils snapshot $SNAPSHOT_FILE..."
curl -nv http://mirrors.kernel.org/sourceware/binutils/releases/$SNAPSHOT_FILE > $SNAPSHOT_FILE
else
echo ""
echo "Reusing existing binutils snapshot file $SNAPSHOT_FILE..."
fi
echo ""
echo "Extracting binutils snapshot $SNAPSHOT_FILE..."
tar zxf $SNAPSHOT_FILE
cd binutils-$SNAPSHOT_VERSION/
echo ""
echo "Patching binutils with vmx128 support..."
patch -p0 < $THIS_SCRIPT_DIR/binutils-$SNAPSHOT_VERSION-vmx128.patch
echo ""
echo "Running ./configure..."
./configure \
--disable-debug \
--disable-dependency-tracking \
--disable-werror \
--enable-interwork \
--enable-multilib \
--target=powerpc-none-elf \
--with-gnu-ld \
--with-gnu-as \
--prefix=$THIS_SCRIPT_DIR
echo ""
echo "Running make..."
make
echo ""
echo "Running make install..."
make install
cd ..
echo ""
echo "Cleaning up binutils build temp"
#rm -rf ./binutils-$SNAPSHOT_VERSION