#!/bin/bash

# clean old stuff if it's there
rm -rf llvm-2.0
rm -rf llvm-gcc4 
rm -rf $HOME/local/llvm/llvm-2.0/*

# unpack llvm-2.0
tar xvzf llvm-2.0.tar.gz

# configure llvm-2.0 for a tools-only build, the build it
mv llvm-2.0 llvm
cd llvm
./configure --disable-optimized --prefix=$HOME/local/llvm/llvm-2.0/llvm
make tools-only

# drop back to the devel/llvm root dir
cd ..

# unpack the frontend, set up frontend dirs
mkdir llvm-gcc4 
cd llvm-gcc4
tar xvzf ../llvm-gcc4-2.0.source.tar.gz
mkdir obj install
cd obj

# configure the frontend then build it
# ./configure --prefix=/misc/project/fernando/llvm2_0_x86/llvm-gcc4 -enable-llvm=/misc/project/fernando/llvm2_0_x86 --enable-languages=c,c++ --program-prefix=llvm- --disable-shared --disable-threads --disable-nls

CFLAGS=-m64
../llvm-gcc4-2.0.source/configure --prefix=$HOME/local/llvm/llvm-2.0/llvm-gcc4 --enable-llvm=$HOME/devel/llvm/llvm-2.0/llvm --enable-languages=c,c++ --program-prefix=llvm- --enable-checking --disable-shared --disable-threads --disable-nls --disable-multilib
make
make install

# back to the llvm-2.0 dir, reconfigure for a full build, build it, install it
cd ../../llvm
./configure --disable-optimized --prefix=$HOME/local/llvm/llvm-2.0/llvm --with-llvmgccdir=$HOME/local/llvm/llvm-2.0/llvm-gcc4
make
make install

# switch to the projects dir, check out testing framework, configure and build it
cd projects
cvs -d :pserver:anon@llvm.org:/var/cvs/llvm co -PRD 2006-12-17 llvm-test
cd llvm-test
./configure --with-llvmsrc=$HOME/devel/llvm/llvm-2.0/llvm --with-llvmobj=$HOME/devel/llvm/llvm-2.0/llvm
make report.html TEST=nightly DISABLE_JIT=1 2>&1 > debug.out
