#!/bin/bash
set -x
set -e
date
test -e process-stack.pl
version=7.10.2
basedir=/afs/sipb.mit.edu/project/ghc/arch/$ATHENA_SYS/install
target=$basedir/$version
extrabin=$target/hackage-bin
export PATH=$target/bin:"$PATH"

pushd $target/bzip2
bzlib=$(find . -maxdepth 1 -type d -name 'bzip2*' -exec basename '{}' \;)
pushd $bzlib
popd
bzlib=$target/bzip2/$bzlib
popd
ls -l $bzlib

function prefetch_afs() {
    find $target/bin -type f -exec cat '{}' \; | cksum
    find $target/lib/ghc-$version -type f -exec cat '{}' \; | cksum
}
prefetch_afs
hash -r
which ghc
ghc --version

cabalconfig=$target/.cabal/config
which cabal
cabal --config-file=$cabalconfig install -v -p --global --prefix=$target --bindir=$extrabin --extra-include-dirs=$bzlib --extra-lib-dirs=$bzlib -fuse_sse2 $(perl process-stack.pl rest < $target/cabal.config) $morepackages
date
echo all done
