111 lines
3.4 KiB
Groff
111 lines
3.4 KiB
Groff
|
#!/bin/sh
|
||
|
# sit class file
|
||
|
#
|
||
|
# Christoph Niethammer <niethammer@hlrs.de> (C) 2012
|
||
|
#
|
||
|
# sit command:
|
||
|
# PREFIX_BASE=/opt ./sit numlib/trilinos/11.4.3
|
||
|
#
|
||
|
# sit command for trilinos with mpi:
|
||
|
# PREFIX_BASE=/opt COMPILER=gnu COMPILER_VERSION=4.7.3 MPI=openmpi MPI_VERSION=1.6.5 ./sit numlib/trilinos/11.4.3
|
||
|
|
||
|
CATEGORY="numlib"
|
||
|
PACKAGE="trilinos"
|
||
|
VERSION="11.4.3"
|
||
|
URL="http://trilinos.sandia.gov/"
|
||
|
INSTALLER="Elke Flehmig <flehmig@hlrs.de>"
|
||
|
|
||
|
# cmake 2.8 or higher is required
|
||
|
case $PLATFORM in
|
||
|
hermit|hermit1)
|
||
|
sit_fail "on hermit, trilinos is installed by cray!"
|
||
|
;;
|
||
|
esac
|
||
|
|
||
|
# now continue for laki
|
||
|
|
||
|
module load tools/cmake/2.8.12
|
||
|
|
||
|
# Archive A and package name P
|
||
|
A=${PACKAGE}-${VERSION}-Source.tar.gz
|
||
|
P=${PACKAGE}-${VERSION}-Source
|
||
|
|
||
|
src_configure() {
|
||
|
cd $BUILDDIR
|
||
|
export TRILINOS_PATH=$SRCDIR
|
||
|
|
||
|
# export EXTRA_ARGS=$@
|
||
|
export EXTRA_ARGS=""
|
||
|
|
||
|
# Each invocation of CMake caches the values of build options in a
|
||
|
# CMakeCache.txt file. If you run CMake again without deleting the
|
||
|
# CMakeCache.txt file, CMake won't notice any build options that have
|
||
|
# changed, because it found their original values in the cache file.
|
||
|
# Deleting the CMakeCache.txt file before invoking CMake will insure
|
||
|
# that CMake learns about any build options you may have changed.
|
||
|
#
|
||
|
# not necessary because sit reruns clean up everything at first
|
||
|
# rm -f CMakeCache.txt
|
||
|
#
|
||
|
# A sampling of CMake build options.
|
||
|
#
|
||
|
# CMAKE_INSTALL_PREFIX: Where to install Trilinos.
|
||
|
# CMAKE_BUILD_TYPE: DEBUG or RELEASE.
|
||
|
# CMAKE_CXX_COMPILER: The C++ compiler to use when building Trilinos.
|
||
|
# CMAKE_C_COMPILER: The C compiler to use when building Trilinos.
|
||
|
# Some parts of Trilinos are implemented in C.
|
||
|
# CMAKE_Fortran_COMPILER: The Fortran compiler to use when building
|
||
|
# Trilinos. Some parts of Trilinos are implemented in Fortran.
|
||
|
# HAVE_GCC_ABI_DEMANGLE: Setting this option to ON improves
|
||
|
# debugging messages.
|
||
|
# CMAKE_VERBOSE_MAKEFILE: Set to OFF (or FALSE) if you prefer a quiet
|
||
|
# build.
|
||
|
# Trilinos_ENABLE_ALL_PACKAGES: If you like, you can build _all_ of
|
||
|
# Trilinos, but you don't have to.
|
||
|
# Trilinos_ENABLE_Epetra: If ON, build Epetra.
|
||
|
# Trilinos_ENABLE_Triutils: If ON, bulid Triutils.
|
||
|
# Trilinos_ENABLE_TESTS: If ON, build the tests for all packages that
|
||
|
# are to be built.
|
||
|
# Trilinos_ENABLE_EXAMPLES: If ON, build the examples for all
|
||
|
# packages that are to be built.
|
||
|
|
||
|
if [ -z "$MPI" ] ; then
|
||
|
export CMAKE_ARGS="
|
||
|
-D CMAKE_INSTALL_PREFIX:PATH=$PREFIX \
|
||
|
-D CMAKE_BUILD_TYPE:STRING=DEBUG \
|
||
|
-D CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/g++ \
|
||
|
-D CMAKE_C_COMPILER:FILEPATH=/usr/bin/gcc \
|
||
|
-D CMAKE_Fortran_COMPILER:FILEPATH=/usr/bin/gfortran \
|
||
|
-D HAVE_GCC_ABI_DEMANGLE:BOOL=ON \
|
||
|
-D Trilinos_WARNINGS_AS_ERRORS_FLAGS:STRING="" \
|
||
|
-D CMAKE_VERBOSE_MAKEFILE:BOOL=ON \
|
||
|
-D Trilinos_ENABLE_ALL_PACKAGES:BOOL=ON \
|
||
|
-D Trilinos_ENABLE_TESTS:BOOL=ON \
|
||
|
"
|
||
|
else
|
||
|
export CMAKE_ARGS="
|
||
|
-D CMAKE_INSTALL_PREFIX:PATH=$PREFIX \
|
||
|
-D CMAKE_BUILD_TYPE:STRING=DEBUG \
|
||
|
-D CMAKE_CXX_COMPILER:FILEPATH=mpicxx \
|
||
|
-D CMAKE_C_COMPILER:FILEPATH=mpicc \
|
||
|
-D CMAKE_Fortran_COMPILER:FILEPATH=mpif90 \
|
||
|
-D HAVE_GCC_ABI_DEMANGLE:BOOL=ON \
|
||
|
-D Trilinos_WARNINGS_AS_ERRORS_FLAGS:STRING="" \
|
||
|
-D CMAKE_VERBOSE_MAKEFILE:BOOL=ON \
|
||
|
-D Trilinos_ENABLE_ALL_PACKAGES:BOOL=ON \
|
||
|
-D Trilinos_ENABLE_TESTS:BOOL=ON \
|
||
|
-D TPL_ENABLE_MPI:BOOL=ON \
|
||
|
-D MPI_BASE_DIR:PATH=/opt/mpi/$MPI/$MPI_VERSION \
|
||
|
"
|
||
|
fi
|
||
|
|
||
|
cmake \
|
||
|
${CMAKE_ARGS} \
|
||
|
$EXTRA_ARGS \
|
||
|
${TRILINOS_PATH}
|
||
|
}
|
||
|
|
||
|
src_pretest() {
|
||
|
make test $MAKEOPTS
|
||
|
}
|