#!/bin/sh # sit class file # # Christoph Niethammer (C) 2012 # # sit command for intel: # PREFIX_BASE=/opt COMPILER=intel COMPILER_VERSION=13.1.3 MPI=impi MPI_VERSION=4.1.3.045 ./sit numlib/petsc/3.4.0 # # sit command for gnu: # PREFIX_BASE=/opt COMPILER=gnu COMPILER_VERSION=4.8.1 MPI=openmpi MPI_VERSION=1.6.5 ./sit numlib/petsc/3.4.0 CATEGORY="numlib" PACKAGE="petsc" VERSION="3.4.0" URL="http://www.mcs.anl.gov/petsc/" INSTALLER="Elke Flehmig " #module load tools/cmake/2.8.11.1 # Archive A and package name P A=${PACKAGE}-${VERSION}.tar.gz P=${PACKAGE}-${VERSION} # our petsc default config: 32bit real double precision # blas_lapack: with intel compiler, use intel's mkl instead case $COMPILER in gnu) ARCH=linux-gnu BLAS_LAPACK="--download-f-blas-lapack=$SRC_POOL/fblaslapack-3.1.1.tar.gz" ;; intel) ARCH=linux-gnu-intel module load numlib/intel/mkl/11.0 BLAS_LAPACK="--with-blas-lapack-dir=$MKLPATH" echo "BLAS_LAPACK=$BLAS_LAPACK" #BLAS_LAPACK="--with-blas-lapack-dir=/opt/compiler/intel/composer_xe_2013-2-146/composer_xe_2013/mkl/lib/intel64" ;; esac # Other interesting configure options: # --enable-mpi-threads # --enable-progress-threads CONFIGURE_OPTS=" --CC=$MPICC --CXX=$MPICXX --FC=$MPIFC \ --with-mpiexec=mpirun \ PETSC_ARCH=$ARCH \ --with-clanguage=cxx \ --with-c-support \ --with-fortran-datatypes=1 \ $BLAS_LAPACK \ " # default is make -j, which doesn't work here! #(petsc automatically builds parallel) MAKEOPTS="" BUILDDIR=$SRCDIR src_prepare() { export PETSC_DIR=${SRCDIR} } src_pretest() { make PETSC_DIR=$SRCDIR PETSC_ARCH=$ARCH test }