cabal-heroku-buildpack/scripts/functions
Yann Esposito (Yogsototh) f3e7231809 More log to debug
2012-04-13 14:58:10 +02:00

52 lines
1 KiB
Bash

#!/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() {
pushd $1;
# create build directory
[[ ! -d $2 ]] && mkdir -p $2
cmd="./configure --prefix=$2 && make && make install"
echo -n "Info: [MAKE] $cmd";
eval $cmd
echo "[OK]";
popd;
}
function mkCompilerDir() {
local compilerDir=$CACHE_DIR/compilers/$1;
[[ ! -d "$compilerDir" ]]; mkdir -p $compilerDir;
echo $compilerDir;
}