update of package scripts for new versions
This commit is contained in:
parent
37d7badfaf
commit
a02204d66d
6 changed files with 302 additions and 26 deletions
|
@ -4,7 +4,7 @@
|
|||
# Christoph Niethammer <niethammer@hlrs.de> (C) 2012
|
||||
#
|
||||
# sit command for intel:
|
||||
# PREFIX_BASE=/opt COMPILER=intel COMPILER_VERSION=13.1.2 MPI=impi MPI_VERSION=4.1.1.036 ./sit numlib/petsc/petsc-3.4.0
|
||||
# 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.7.3 MPI=openmpi MPI_VERSION=1.6.5 ./sit numlib/petsc/3.4.0
|
||||
|
@ -32,7 +32,9 @@ case $COMPILER in
|
|||
intel)
|
||||
ARCH=linux-gnu-intel
|
||||
module load numlib/intel/mkl/11.0
|
||||
BLAS_LAPACK="--with-blas-lapack-dir=/opt/compiler/intel/composer_xe_2013-2-146/composer_xe_2013/mkl/lib/intel64"
|
||||
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
|
||||
|
||||
|
@ -49,7 +51,6 @@ CONFIGURE_OPTS="
|
|||
--with-fortran-datatypes=1 \
|
||||
$BLAS_LAPACK \
|
||||
"
|
||||
|
||||
# default is make -j, which doesn't work here!
|
||||
#(petsc automatically builds parallel)
|
||||
MAKEOPTS=""
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
# Christoph Niethammer <niethammer@hlrs.de> (C) 2012
|
||||
#
|
||||
# laki sit command:
|
||||
# PREFIX_BASE=/opt COMPILER=gnu COMPILER_VERSION=4.7.3 MPI=openmpi MPI_VERSION=1.6.4 ./sit numlib/scotch/6.0.0
|
||||
# PREFIX_BASE=/opt COMPILER=gnu COMPILER_VERSION=4.7.3 MPI=openmpi MPI_VERSION=1.6.5 ./sit numlib/scotch/6.0.0
|
||||
#
|
||||
# hermit sit command:
|
||||
# PREFIX_BASE=/opt/hlrs ./sit numlib/scotch/6.0.0
|
||||
|
@ -22,7 +22,7 @@ P=${PACKAGE}_${VERSION}/src
|
|||
BUILDDIR=$SRCDIR
|
||||
|
||||
src_prepare() {
|
||||
case $PLATFORM in
|
||||
case $PLATFORM in
|
||||
hermit|hermit1)
|
||||
# there are some GNU extensions Cray compiler doesn't (yet) know about
|
||||
module swap PrgEnv-cray PrgEnv-gnu
|
||||
|
@ -44,7 +44,7 @@ case $PLATFORM in
|
|||
echo "Building for laki."
|
||||
# link most fitting Makefile.inc sample:
|
||||
cd $SRCDIR
|
||||
ln -s Make.inc/Makefile.inc.x86-64_pc_linux2 Makefile.inc
|
||||
cp Make.inc/Makefile.inc.x86-64_pc_linux2 Makefile.inc
|
||||
echo "Linking Makefile.inc in $SRCDIR"
|
||||
# add options to CFLAGS:
|
||||
# -DINTSIZE64 -DCOMMON_MEMORY_TRACE -DSCOTCH_METIS_PREFIX
|
||||
|
@ -52,27 +52,15 @@ case $PLATFORM in
|
|||
# -DCOMMON_MEMORY_TRACE - enable monitoring of memory allocation
|
||||
# -DSCOTCH_METIS_PREFIX - prefix scotch versions of metis files so as to avoid multiply defined symbol conflicts when using scotch and metis together
|
||||
# set CCD to avoid compilation errors for ptscotch:
|
||||
# CCD = mpicc
|
||||
# CCD = mpicc
|
||||
patch Makefile.inc < $SRC_POOL/6.0.0_Makefile.inc_patch_laki
|
||||
|
||||
# check fails on cray (for now...)
|
||||
src_pretest() {
|
||||
# add stdint.h to testfile to avoid failure
|
||||
patch check/test_strat_seq.c < $SRC_POOL/6.0.0_test_strat_seq.c_patch_laki
|
||||
sit_info "Checking scotch..."
|
||||
make check || sit_fail "Checking scotch failed"
|
||||
# ptcheck uses mpirun/requires qsub, which we will not process here
|
||||
# may be done separately after installation...
|
||||
# patch check/test_strat_par.c < $SRC_POOL/6.0.0_test_strat_par.c_patch_laki
|
||||
# make ptcheck
|
||||
}
|
||||
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
|
||||
# set installation target path for prefix:
|
||||
cd $SRCDIR
|
||||
sed -i -e "/^prefix.*\?= /s#/usr/local#$PREFIX#" Makefile
|
||||
cd $SRCDIR
|
||||
sed -i -e "/^prefix.*\?= /s#/usr/local#$PREFIX#" Makefile
|
||||
|
||||
}
|
||||
|
||||
sit_configure() {
|
||||
|
@ -86,6 +74,18 @@ src_build() {
|
|||
make ptscotch || sit_fail "Building ptscotch failed"
|
||||
}
|
||||
|
||||
# check fails on cray (for now...)
|
||||
src_pretest() {
|
||||
# add stdint.h to testfile to avoid failure
|
||||
patch check/test_strat_seq.c < $SRC_POOL/6.0.0_test_strat_seq.c_patch_laki
|
||||
sit_info "Checking scotch..."
|
||||
make check || sit_fail "Checking scotch failed"
|
||||
# ptcheck uses mpirun/requires qsub, which we will not process here
|
||||
# may be done separately after installation...
|
||||
# patch check/test_strat_par.c < $SRC_POOL/6.0.0_test_strat_par.c_patch_laki
|
||||
# make ptcheck
|
||||
}
|
||||
|
||||
src_install() {
|
||||
mkdir -p $PREFIX
|
||||
make install || sit_fail "Installation failed"
|
||||
|
|
110
packages/numlib/trilinos/11.4.3
Executable file
110
packages/numlib/trilinos/11.4.3
Executable file
|
@ -0,0 +1,110 @@
|
|||
#!/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
|
||||
}
|
50
packages/numlib/zoltan/3.6-parmetis-4.0.3-scotch-6.0.0
Executable file
50
packages/numlib/zoltan/3.6-parmetis-4.0.3-scotch-6.0.0
Executable file
|
@ -0,0 +1,50 @@
|
|||
#!/bin/sh
|
||||
# sit class file
|
||||
#
|
||||
# Christoph Niethammer <niethammer@hlrs.de> (C) 2012
|
||||
#
|
||||
# laki sit command:
|
||||
# TODO! not yet installed with sit
|
||||
#
|
||||
# hermit sit command:
|
||||
# PREFIX_BASE=/opt/hlrs ./sit numlib/zoltan/3.6-parmetis-4.0.3-scotch-6.0.0
|
||||
|
||||
CATEGORY="numlib"
|
||||
PACKAGE="zoltan"
|
||||
ZOLTAN_VERSION="3.6"
|
||||
VERSION="3.6-parmetis-4.0.3-scotch-6.0.0"
|
||||
URL="http://www.labri.fr/perso/pelegrin/scotch/"
|
||||
INSTALLER="Elke Flehmig <flehmig@hlrs.de>"
|
||||
|
||||
# Archive A and package name P
|
||||
A=${PACKAGE}_${ZOLTAN_VERSION}.tgz
|
||||
P=${PACKAGE}_${ZOLTAN_VERSION}/Zoltan_v3.6
|
||||
|
||||
module load numlib/scotch/6.0.0
|
||||
module load numlib/parmetis/4.0.3
|
||||
module load numlib/metis/5.1.0
|
||||
|
||||
src_prepare() {
|
||||
case $PLATFORM in
|
||||
hermit|hermit1)
|
||||
echo "Building for hermit."
|
||||
;;
|
||||
laki|*)
|
||||
echo "Building for laki."
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
CONFIGURE_OPTS="CC=cc CXX=CC --with-id-type=ullong --with-scotch --with-scotch-incdir=/sw/hermit1/hlrs/numlib/scotch/6.0.0/include --with-scotch-libdir=/sw/hermit1/hlrs/numlib/scotch/6.0.0/lib --with-parmetis --with-parmetis-incdir=/sw/hermit1/hlrs/numlib/parmetis/4.0.3/include --with-parmetis-libdir=/sw/hermit1/hlrs/numlib/parmetis/4.0.3/lib --with-libdirs=\"-L/sw/hermit1/hlrs/numlib/metis/5.1.0/lib\" --with-incdirs=\"-I/sw/hermit1/hlrs/numlib/metis/5.1.0/include\" --with-libs=\"-lscotch\""
|
||||
|
||||
src_pretest() {
|
||||
sit_info "Checking zoltan ..."
|
||||
make check || sit_fail "Checking zoltan failed"
|
||||
}
|
||||
|
||||
src_postinst() {
|
||||
# as examples and doc are already installed with zoltan/3.6, simply set a link:
|
||||
cd $PREFIX
|
||||
ln -s /sw/hermit1/hlrs/numlib/zoltan/3.6/examples
|
||||
ln -s /sw/hermit1/hlrs/numlib/zoltan/3.6/doc
|
||||
}
|
47
packages/numlib/zoltan/3.8
Executable file
47
packages/numlib/zoltan/3.8
Executable file
|
@ -0,0 +1,47 @@
|
|||
#!/bin/sh
|
||||
# sit class file
|
||||
#
|
||||
# Christoph Niethammer <niethammer@hlrs.de> (C) 2012
|
||||
#
|
||||
# laki sit command:
|
||||
# PREFIX_BASE=/opt COMPILER=gnu COMPILER_VERSION=4.7.3 MPI=openmpi MPI_VERSION=1.6.5 ./sit numlib/zoltan/3.8
|
||||
#
|
||||
# hermit sit command:
|
||||
# PREFIX_BASE=/opt/hlrs COMPILER=pgi COMPILER_VERSION=13.9.0 ./sit numlib/zoltan/3.8
|
||||
|
||||
CATEGORY="numlib"
|
||||
PACKAGE="zoltan"
|
||||
VERSION="3.8"
|
||||
URL="http://www.labri.fr/perso/pelegrin/scotch/"
|
||||
INSTALLER="Elke Flehmig <flehmig@hlrs.de>"
|
||||
|
||||
# Archive A and package name P
|
||||
A=${PACKAGE}_distrib_v${VERSION}.tar.gz
|
||||
P=Zoltan_v${VERSION}
|
||||
|
||||
src_prepare() {
|
||||
case $PLATFORM in
|
||||
hermit|hermit1)
|
||||
echo "Building for hermit."
|
||||
CONFIGURE_OPTS="--with-id-type=ullong CC=cc CXX=CC"
|
||||
;;
|
||||
laki|*)
|
||||
echo "Building for laki."
|
||||
CONFIGURE_OPTS="--with-id-type=ullong CC=mpicc CXX=mpicxx"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
src_pretest() {
|
||||
sit_info "Checking zoltan ..."
|
||||
make check || sit_fail "Checking zoltan failed"
|
||||
sit_info "Building examples ..."
|
||||
make examples || sit_fail"Building examples failed"
|
||||
}
|
||||
|
||||
src_postinst() {
|
||||
# mv examples to target (not included in any make install version)
|
||||
mv $BUILDDIR/example $PREFIX
|
||||
# mv documentation to target (not included in make install)
|
||||
mv $SRCDIR/doc $PREFIX
|
||||
}
|
68
packages/numlib/zoltan/3.8-parmetis-4.0.3-scotch-6.0.0
Executable file
68
packages/numlib/zoltan/3.8-parmetis-4.0.3-scotch-6.0.0
Executable file
|
@ -0,0 +1,68 @@
|
|||
#!/bin/sh
|
||||
# sit class file
|
||||
#
|
||||
# Christoph Niethammer <niethammer@hlrs.de> (C) 2012
|
||||
#
|
||||
# laki sit command:
|
||||
# PREFIX_BASE=/opt COMPILER=gnu COMPILER_VERSION=4.7.3 MPI=openmpi MPI_VERSION=1.6.5 ./sit numlib/zoltan/3.8-parmetis-4.0.3-scotch-6.0.0
|
||||
#
|
||||
# hermit sit command:
|
||||
# PREFIX_BASE=/opt/hlrs COMPILER=pgi COMPILER_VERSION=13.9.0 ./sit numlib/zoltan/3.8-parmetis-4.0.3-scotch-6.0.0
|
||||
|
||||
CATEGORY="numlib"
|
||||
PACKAGE="zoltan"
|
||||
VERSION="3.8"
|
||||
ADD_PACKAGES="parmetis-4.0.3-scotch-6.0.0"
|
||||
URL="http://www.labri.fr/perso/pelegrin/scotch/"
|
||||
INSTALLER="Elke Flehmig <flehmig@hlrs.de>"
|
||||
|
||||
# Archive A and package name P
|
||||
A=${PACKAGE}_distrib_v${VERSION}.tar.gz
|
||||
P=Zoltan_v${VERSION}
|
||||
|
||||
case $PLATFORM in
|
||||
hermit|hermit1)
|
||||
echo "Building for hermit."
|
||||
# target prefix - show compiler version before additional packages:
|
||||
PREFIX="${PREFIX_BASE}/${CATEGORY}/${PACKAGE}/${VERSION}-$COMPILER-$COMPILER_VERSION-$ADD_PACKAGES"
|
||||
|
||||
SCOTCH=numlib/scotch/6.0.0
|
||||
PARMETIS=numlib/parmetis/4.0.3
|
||||
metis=numlib/metis/5.1.0
|
||||
CC_CMD=cc
|
||||
CXX_CMD=CC
|
||||
;;
|
||||
laki|*)
|
||||
echo "Building for laki."
|
||||
# target prefix - show mpi and compiler version before additional packages:
|
||||
PREFIX="${PREFIX_BASE}/${CATEGORY}/${PACKAGE}/${VERSION}-$MPI-$MPI_VERSION-$ADD_PACKAGES"
|
||||
|
||||
SCOTCH=numlib/scotch/6.0.0-openmpi-1.6.5-gnu-4.7.3
|
||||
PARMETIS=numlib/parmetis/4.0.3-openmpi-1.6.5-gnu-4.7.3
|
||||
METIS=numlib/metis/5.1.0
|
||||
CC_CMD=mpicc
|
||||
CXX_CMD=mpicxx
|
||||
;;
|
||||
esac
|
||||
|
||||
CONFIGURE_OPTS="CC=mpicc CXX=mpicxx --with-id-type=ullong --with-scotch --with-scotch-incdir=$PREFIX_BASE/$SCOTCH/include --with-scotch-libdir=$PREFIX_BASE/$SCOTCH/lib --with-parmetis --with-parmetis-incdir=$PREFIX_BASE/$PARMETIS/include --with-parmetis-libdir=$PREFIX_BASE/$PARMETIS/lib --with-libdirs=\"-L$PREFIX_BASE/$METIS/lib\" --with-incdirs=\"-I$PREFIX_BASE/$METIS/include\" --with-libs=\"-lscotch\""
|
||||
|
||||
src_pretest() {
|
||||
sit_info "Checking zoltan ..."
|
||||
make check || sit_fail "Checking zoltan failed"
|
||||
}
|
||||
|
||||
src_postinst() {
|
||||
# as examples and doc are already installed with zoltan, set a link:
|
||||
cd $PREFIX
|
||||
case $PLATFORM in
|
||||
hermit|hermit1)
|
||||
ln -s ${PREFIX_BASE}/${CATEGORY}/${PACKAGE}/${VERSION}-$COMPILER-$COMPILER_VERSION/example
|
||||
ln -s ${PREFIX_BASE}/${CATEGORY}/${PACKAGE}/${VERSION}-$COMPILER-$COMPILER_VERSION/doc
|
||||
;;
|
||||
laki|*)
|
||||
ln -s ${PREFIX_BASE}/${CATEGORY}/${PACKAGE}/${VERSION}-$MPI-$MPI_VERSION/example
|
||||
ln -s ${PREFIX_BASE}/${CATEGORY}/${PACKAGE}/${VERSION}-$MPI-$MPI_VERSION/doc
|
||||
;;
|
||||
esac
|
||||
}
|
Loading…
Reference in a new issue