#!/bin/bash


abort() {
    echo error: $@
    exec false
}

TARGET=powerpc-elf
ARCHITECTURE=powerpc
cd $HOME
VERZ=$HOME/ppc
mkdir $VERZ
cd $VERZ

mkdir cross-gcc
mkdir downloads-cross

# 1. install binutils-2.17
cd downloads-cross
test -f  binutils-2.17.tar.gz  || wget http://ftp.gnu.org/gnu/binutils/binutils-2.17.tar.gz
test -d  binutils-2.17 || tar -xzf binutils-2.17.tar.gz
cd binutils-2.17
./configure --prefix=$VERZ/cross-gcc --disable-nls --target=$TARGET --libdir=$VERZ/cross-gcc/lib
PATH=$VERZ/cross-gcc/bin:$PATH make all install || abort "make fuer binutils funktiontierte ned"



# 2. patch + install gcc-4.1.0
cd $VERZ/downloads-cross
wget http://www2.in.tum.de/~flexeder/patch-Makefile.in

test -f gcc-4.1.0.tar.bz2 || wget http://mirrors.kernel.org/gnu/gcc/gcc-4.1.0/gcc-4.1.0.tar.bz2
cd $VERZ/cross-gcc
test -d gcc-4.1.0 || tar -xjf $VERZ/downloads-cross/gcc-4.1.0.tar.bz2
cd gcc-4.1.0
patch -p0 < $VERZ/downloads-cross/patch-Makefile.in
PATH=$VERZ/cross-gcc/bin:$PATH ./configure --prefix=$VERZ/cross-gcc --disable-nls --with-system-zlib --target=$TARGET --libdir=$VERZ/cross-gcc/lib --enable-languages=c --with-dwarf2  --with-newlib --disable-shared --with-as=$VERZ/cross-gcc/bin/$TARGET-as  --with-ld=$VERZ/cross-gcc/bin/$TARGET-ld
PATH=$VERZ/cross-gcc/bin:$PATH MACHINE_ARCH=$ARCHITECTURE make all install || abort "make fuer gcc funktiontierte ned"

# 3.a) makeinfo installieren, falls nicht drauf
#wget http://ftp.gnu.org/gnu/texinfo/texinfo-4.8.tar.gz
#tar -xzf texinfo-4.8.tar.gz
#
#cd makeinfo-4.8
#./configure
#make all install
which makeinfo || abort "texinfo ist zu installieren"

# 3. install newlib 
cd $VERZ/downloads-cross
test -f newlib-1.15.0.tar.gz || wget ftp://sources.redhat.com/pub/newlib/newlib-1.15.0.tar.gz
test -d newlib-1.15.0  || tar -xzf newlib-1.15.0.tar.gz
cd newlib-1.15.0
PATH=$VERZ/cross-gcc/bin:$PATH ./configure --prefix=$VERZ/cross-gcc --target=$TARGET --libdir=$VERZ/cross-gcc/lib
PATH=$VERZ/cross-gcc/bin:$PATH make all install || abort "make fuer newlib funktiontierte ned"

#4. call ./gcc/bin/$TARGET-gcc -msim datei.c
# options:  -msim, -mads, -myellowknife, -mmvme
