#!/bin/bash -x for f in "$@"; do eval "$f" done PREFIX=${PREFIX:-/usr/local} CC_DEFAULT=icc if which $CC_DEFAULT 2>/dev/null >/dev/null; then ## Intel Compiler FLAGS=${FLAGS:-"-g -O3 -ip -xTP -no-prec-div -axTP -openmp -parallel -I$PREFIX/include"} CC=${CC:-icc} FC=${FC:-ifort} EXTLIBS=${EXTLIBS:-"-L$PREFIX/lib -lGMRFLib -lgsl -ltaucs -lmetis -L/opt/intel/mkl/9.1/lib/32 -lmkl_lapack -lmkl_ia32 -lguide -lpthread -lz -L /opt/intel/fc/10.0.023/lib -lifcore -lsvml -lcrypto -lssl -lm"} FCEXTRAFLAGS=${FCEXTRAFLAGS:-} INLA_FLAGS=${INLA_FLAGS:-"-static"} else ## GNU FLAGS=${FLAGS:-"-g -O3 -march=native -mfpmath=sse -msse2 -funroll-loops -ftracer -fopenmp -pipe -I$PREFIX/include"} CC=${CC:-gcc} FC=${FC:-gfortran} EXTLIBS=${EXTLIBS:-"-L$PREFIX/lib -lGMRFLib -lgsl -ltaucs -lmetis -llapack -lblas -lgslcblas -lz -lgfortran -Wl,--whole-archive -lpthread -Wl,--no-whole-archive -lm"} FCEXTRAFLAGS=${FCEXTRAFLAGS:-"-fno-second-underscore"} INLA_FLAGS=${INLA_FLAGS:-"-static"} fi ################# smy_make () { $SUDO make CC="$CC" FC="$FC" FLAGS="$FLAGS" EXTLIBS="$EXTLIBS" FCEXTRAFLAGS="$FCEXTRAFLAGS" PREFIX="$PREFIX" "$@" || exit 99 } my_make () { make CC="$CC" FC="$FC" FLAGS="$FLAGS" EXTLIBS="$EXTLIBS" FCEXTRAFLAGS="$FCEXTRAFLAGS" PREFIX="$PREFIX" "$@" || exit 99 } TDIR=${TEMPDIR:-$(echo ~/tmp)} if [ ! -d $TDIR ]; then mkdir -p $TDIR || exit 99 fi WWWADR=${WWWADR:-http://www.math.ntnu.no/~hrue/GMRFLib} if [ ! -d $PREFIX ]; then mkdir -p $PREFIX || exit 99 fi if [ -w $PREFIX ]; then SUDO="" else SUDO=sudo fi cd $TDIR name=GMRFLib-latest.tgz wget -O - $WWWADR/$name | tar xvfz - my_make -C $TDIR/GMRFLib clean my_make -C $TDIR/GMRFLib depend my_make -C $TDIR/GMRFLib all smy_make -C $TDIR/GMRFLib all install cd $TDIR FLAGS="$FLAGS $INLA_FLAGS" name=inla-latest.tgz wget -O - $WWWADR/$name | tar xvfz - my_make -C $TDIR/inla clean my_make -C $TDIR/inla depend my_make -C $TDIR/inla all smy_make -C $TDIR/inla all install