#!/bin/sh

set -e

die () {
    echo "$1" >&2
    exit 1
}

NO_CLEAN=0
if [ "$1" = "--no-clean" ]
then
    NO_CLEAN=1
    shift
fi
[ "$#" -eq 2 ] || die "Bad args. Usage: $0 [--no-clean] <Linux bindist> <Windows bindist>"

LINUX_BINDIST=`realpath "$1"`
WINDOWS_BINDIST=`realpath "$2"`

mkdir docs
cd docs
INST=`pwd`/inst
tar -Jxf "$LINUX_BINDIST"
mv ghc* linux
cd linux
./configure --prefix="$INST"
make install
cd ..
[ "$NO_CLEAN" -eq 0 ] && rm -r linux
tar -Jxf "$WINDOWS_BINDIST"
mv ghc* windows
cd inst/share/doc/ghc*/html/libraries
mv ../../../../../../windows/doc/html/libraries/Win32-* .
sh gen_contents_index
cd ..
for i in haddock libraries users_guide
do
    tar -Jcf ../../../../../$i.html.tar.xz $i
done
mv index.html ../../../../..
cd ..
mv *.pdf *.ps ../../../..
cd ../../../..
[ "$NO_CLEAN" -eq 0 ] && rm -r inst
[ "$NO_CLEAN" -eq 0 ] && rm -r windows

