37 lines
1 KiB
Bash
Executable file
37 lines
1 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
# bin/compile BUILD_DIR CACHE_DIR
|
|
|
|
set -e
|
|
|
|
source $(dirname $0)/../scripts/functions
|
|
env
|
|
|
|
BUILD_DIR=$1
|
|
echo "Info: BUILD_DIR=$BUILD_DIR"
|
|
CACHE_DIR=$2
|
|
echo "Info: CACHE_DIR=$CACHE_DIR"
|
|
|
|
## CHECK BUILDPACK_GHC_BASE_URL is set
|
|
if [ "$BUILDPACK_GHC_BASE_URL" != "" ]; then
|
|
arch=$(uname -m)
|
|
ghcver=$GHC_BOOTSTRAP_VERSION
|
|
if [ "$ghcver" == "" ]; then
|
|
echo "Error: please set GHC_BOOTSTRAP_VERSION";
|
|
exit 1;
|
|
fi;
|
|
bsdir=$CACHE_DIR/bootstrap
|
|
ghcurl="$BUILDPACK_GHC_BASE_URL/$ghcver/ghc-$ghcver-$arch-unknown-linux.tar.bz2"
|
|
echo "Info: bootstrap directory: ${bsdir}";
|
|
echo "Info: bootstrap URL: $ghcurl";
|
|
if [ -f "$bsdir.completed" ]; then
|
|
echo "Info: already downloaded GHC bootstrap version ${ghcver}";
|
|
else
|
|
echo "Info: downloading GHC $ghcver form $ghcurl";
|
|
$(downloadAndExtract $bsdir $ghcurl);
|
|
$(configureMakeInstall $bsdir/ghc-$ghcver $BUILD_DIR/bootstrap/ghc-$ghcver);
|
|
touch $bsdir.completed
|
|
fi;
|
|
else
|
|
echo "Error: please set BUILDPACK_GHC_BASE_URL";
|
|
exit 1;
|
|
fi
|