Files
MX_Pmodule/scripts/MPI/SuperLU_DIST/build
2015-07-02 11:16:53 +02:00

60 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
source "$(dirname $0)/../../../lib/libpmodules.bash"
pmodules.configure() {
case ${COMPILER} in
gcc )
LOADER='mpif90'
;;
intel )
LOADER='mpicc'
;;
* )
die 3 "Oops: unknown compiler: ${COMPILER}"
;;
esac
cat <<EOF > "${MODULE_SRCDIR}/make.inc"
PLAT =
DSuperLUroot = \${PREFIX}
DSUPERLULIB = \$(DSuperLUroot)/lib/libsuperlu_dist.a
BLASDEF = -DUSE_VENDOR_BLAS
BLASLIB = \${OPENBLAS_PREFIX}/lib/libopenblas.a
METISLIB = \${PARMETIS_PREFIX}/lib/libmetis.a
PARMETISLIB = \${PARMETIS_PREFIX}/lib/libparmetis.a
FLIBS =
LIBS = \$(DSUPERLULIB) \$(BLASLIB) \$(PARMETISLIB) \$(METISLIB)
ARCH = ar
ARCHFLAGS = cr
RANLIB = ranlib
CC = mpicc
CFLAGS = -pipe -O3
NOOPTS =
FORTRAN = mpif90
F90FLAGS =
LOADER = mpicc
LOADOPTS =
CDEFS = -DAdd__
EOF
}
pmodules.build() {
cd "${MODULE_SRCDIR}"
mkdir -p "${PREFIX}/lib"
make
}
pmodules.install() {
make install
mkdir -p "${PREFIX}/include"
install -m 0444 "${MODULE_SRCDIR}"/SRC/*.h "${PREFIX}/include"
}
pmodules.add_to_group 'MPI'
pmodules.set_runtime_dependencies "${COMPILER}" "${MPI} 'OpenBLAS' 'parmetis'"
pmodules.set_build_dependencies "${COMPILER}" "${MPI}" 'OpenBLAS' 'parmetis'
pmodules.set_docfiles 'README'
pmodules.make_all
pmodules.cleanup_src