#!/bin/sh

# Contributor: Alexander Markov <apsheronets@gmail.com>
# The Glasgow Haskell Compiler
# http://www.haskell.org/ghc/

pkgname=ghc
pkgver=6.10.1
pkgrel=1
arch=i486
filename="${pkgname}-${pkgver}-${arch}-1ar.tgz"
startdir=`pwd`

echo "Making temporary directiries (src/ and pkg/)"
mkdir src/
mkdir pkg/

echo "Downloading sources"
[ -f $filename ] || wget -c "http://gorgias.mine.nu/slack/haskell/ghc-6.10.1-tool-chain/${filename}"

echo "Extracting sources"
installpkg -root ${startdir}/pkg/ $filename

echo "Copying slaxbuild"
mkdir -p ${startdir}/pkg/usr/src/slaxbuilds/
cp $0 ${startdir}/pkg/usr/src/slaxbuilds/

echo "Cleaning new module"
rm -rv ${startdir}/pkg/install/
rm -rv ${startdir}/var/log/{packages,removed_packages,removed_scripts,scripts,setup}
find ${startdir}/pkg/ -type d | xargs chmod -v 755;
find ${startdir}/pkg/usr/man/ -type l -name "*.gz" | xargs -r gunzip -f
find ${startdir}/pkg/usr/man/ ! -type l -name "*.gz" | xargs -r gunzip
find ${startdir}/pkg/ | xargs file | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded

echo "Making module"
dir2lzm ${startdir}/pkg/ ${startdir}/${pkgname}-${pkgver}-${arch}-${pkgrel}.lzm && echo || exit

echo "Removing temporary files (pkg/ and src/)"
rm -r ${startdir}/pkg/ ${startdir}/src/
