Files
MX_Pmodule/scripts/trilinos.build

79 lines
2.8 KiB
Bash
Executable File

#!/bin/bash
source "$(dirname $0)/../lib/libem.bash"
declare -rx AR=ar
function em.configure() {
CC=$MPICC
CXX=$MPICXX
F77=$MPIF77
F90=$MPIF90
FC=$MPIFC
FORTRAN=$MPIFORTRAN
BLAS_PREFIX=$OPENBLAS_PREFIX
LAPACK_PREFIX=$OPENBLAS_PREFIX
PARMETIS_INCLUDE_DIRS=$PARMETIS_PREFIX/include
PARMETIS_LIBRARIES=$PARMETIS_PREFIX/lib/libparmetis.a
METIS_INCLUDE_DIRS=$PARMETIS_PREFIX/include/metis
METIS_LIBRARIES=$PARMETIS_PREFIX/lib/libmetis.a
BLAS_INCLUDE_DIRS="$BLAS_PREFIX/include"
BLAS_LIBRARY_DIRS="$BLAS_PREFIX/lib"
BLAS_LIBRARY_NAMES="openblas"
LAPACK_INCLUDE_DIRS="$LAPACK_PREFIX/include"
LAPACK_LIBRARY_DIRS="$LAPACK_PREFIX/lib"
LAPACK_LIBRARY_NAMES="openblas"
cmake \
--prefix=$PREFIX \
-DCMAKE_INSTALL_PREFIX:PATH=$PREFIX \
-DCMAKE_CXX_FLAGS:STRING="-DMPICH_IGNORE_CXX_SEEK -fPIC -fpermissive" \
-DCMAKE_C_FLAGS:STRING="-DMPICH_IGNORE_CXX_SEEK -fPIC" \
-DCMAKE_Fortran_FLAGS:STRING="-fPIC" \
-D CMAKE_BUILD_TYPE:STRING=DEBUG \
-D TPL_ENABLE_QT:BOOL=OFF \
-D TPL_ENABLE_MPI:BOOL=ON \
-D TPL_ENABLE_BLAS:BOOL=ON \
-D TPL_ENABLE_LAPACK:BOOL=ON \
-D TPL_ENABLE_METIS:BOOL=ON \
-D TPL_ENABLE_ParMETIS:BOOL=ON \
-D BLAS_LIBRARY_DIRS:PATH="$BLAS_LIBRARY_DIRS" \
-D BLAS_INCLUDE_DIRS:PATH="$BLAS_LIBRARY_DIRS" \
-D BLAS_LIBRARY_NAMES:STRING="$BLAS_LIBRARY_NAMES" \
-D LAPACK_LIBRARY_DIRS:PATH="$LAPACK_LIBRARY_DIRS" \
-D LAPACK_INCLUDE_DIRS:PATH="$LAPACK_INCLUDE_DIRS" \
-D LAPACK_LIBRARY_NAMES:STRING="$LAPACK_LIBRARY_NAMES" \
-D TPL_METIS_INCLUDE_DIRS:PATH=$METIS_INCLUDE_DIRS \
-D TPL_METIS_LIBRARIES:PATH=$METIS_LIBRARIES \
-D TPL_ParMETIS_INCLUDE_DIRS:PATH=$PARMETIS_INCLUDE_DIRS \
-D TPL_ParMETIS_LIBRARIES:PATH=$PARMETIS_LIBRARIES \
-D Trilinos_ENABLE_Amesos:BOOL=ON \
-D Trilinos_ENABLE_Amesos2:BOOL=ON \
-D Trilinos_ENABLE_AztecOO:BOOL=ON \
-D Trilinos_ENABLE_Belos:BOOL=ON \
-D Trilinos_ENABLE_Epetra:BOOL=ON \
-D Trilinos_ENABLE_EpetraExt:BOOL=ON \
-D Trilinos_ENABLE_Galeri:BOOL=ON \
-D Trilinos_ENABLE_Ifpack:BOOL=ON \
-D Trilinos_ENABLE_Isorropia:BOOL=ON \
-D Trilinos_ENABLE_ML:BOOL=ON \
-D Trilinos_ENABLE_NOX:BOOL=ON \
-D Trilinos_ENABLE_Optika:BOOL=OFF \
-D Trilinos_ENABLE_Teuchos:BOOL=ON \
-D Trilinos_ENABLE_Tpetra:BOOL=ON \
-D Trilinos_ENABLE_TESTS:BOOL=OFF \
"${MODULE_SRCDIR}" || exit 1
}
em.add_to_family 'MPI'
em.set_runtime_dependencies "${COMPILER}" "${MPI}" 'OpenBLAS' 'parmetis'
em.set_build_dependencies 'cmake' "${COMPILER}" "${MPI}" 'OpenBLAS' 'parmetis'
em.set_docfiles Copyright.txt LICENSE README RELEASE_NOTES
em.make_all