cabal-heroku-buildpack/scripts/functions

53 lines
1 KiB
Text
Raw Permalink Normal View History

2012-04-13 08:39:54 +00:00
#!/bin/bash
loginfo() { echo "Info: $*"; }
error() { echo "Error: $*" >&2; exit 1; }
setIfUnset() {
varname="$1"
defaultValue="$2"
eval "if [ \"\$$varname\" = \"\" ]; then $varname=$defaultValue; loginfo \"$varname unset; use \$$varname\"; fi"
}
function indent() {
c='s/^/ /'
case $(uname) in
Darwin) sed -l "$c";;
*) sed -u "$c";;
esac
}
function clearEnvironment() {
unset GIT_DIR
}
function downloadAndExtract() {
case $2 in
*.tar) options=xf ;;
*.tar.gz) options=xzf ;;
*.tar.bz2) options=xjf;;
*) error "Unknow format for $2; should be tar, tar.gz or tar.bz2" ;;
esac
mkdir -p $1 && curl $2 -o - | tar $options - -C $1
}
function configureMakeInstall() {
2012-02-21 05:27:13 +00:00
pushd $1;
2012-04-13 08:39:54 +00:00
# create build directory
2012-04-13 12:58:10 +00:00
[[ ! -d $2 ]] && mkdir -p $2
cmd="./configure --prefix=$2 && make && make install"
2012-04-13 12:58:10 +00:00
echo -n "Info: [MAKE] $cmd";
eval $cmd
echo "[OK]";
2012-02-21 05:27:13 +00:00
popd;
}
function mkCompilerDir() {
local compilerDir=$CACHE_DIR/compilers/$1;
[[ ! -d "$compilerDir" ]]; mkdir -p $compilerDir;
echo $compilerDir;
}
2012-04-13 08:39:54 +00:00