diff --git a/MPI/trilinos/build b/MPI/trilinos/build index 3e84ad5..355d667 100755 --- a/MPI/trilinos/build +++ b/MPI/trilinos/build @@ -4,29 +4,41 @@ SOURCE_URL="http://trilinos.csbsju.edu/download/files/trilinos-${V_PKG}-Source.t declare -rx AR=ar -declare config_args=() -if [[ "${OS}" == "Linux" ]]; then - BLAS_PREFIX=$OPENBLAS_PREFIX - BLAS_INCLUDE_DIRS="$BLAS_PREFIX/include" - BLAS_LIBRARY_DIRS="$BLAS_PREFIX/lib" - BLAS_LIBRARY_NAMES="openblas" - LAPACK_PREFIX=$OPENBLAS_PREFIX - - LAPACK_INCLUDE_DIRS="$LAPACK_PREFIX/include" - LAPACK_LIBRARY_DIRS="$LAPACK_PREFIX/lib" - LAPACK_LIBRARY_NAMES="openblas" - config_args+=( "-D BLAS_LIBRARY_DIRS:PATH=${BLAS_LIBRARY_DIRS}" ) - config_args+=( "-D BLAS_INCLUDE_DIRS:PATH=${BLAS_LIBRARY_DIRS}" ) - config_args+=( "-D BLAS_LIBRARY_NAMES:STRING=${BLAS_LIBRARY_NAMES}" ) - config_args+=( "-D LAPACK_LIBRARY_DIRS:PATH=${LAPACK_LIBRARY_DIRS}" ) - config_args+=( "-D LAPACK_INCLUDE_DIRS:PATH=${LAPACK_INCLUDE_DIRS}" ) - config_args+=( "-D LAPACK_LIBRARY_NAMES:STRING=${LAPACK_LIBRARY_NAMES}" ) -fi - pbuild::configure() { + declare config_args=() + if [[ "${OS}" == "Linux" ]]; then + BLAS_PREFIX="${OPENBLAS_PREFIX}" + BLAS_INCLUDE_DIRS="${BLAS_PREFIX}/include" + BLAS_LIBRARY_DIRS="${BLAS_PREFIX}/lib" + BLAS_LIBRARY_NAMES="openblas" + LAPACK_PREFIX="${OPENBLAS_PREFIX}" - PARMETIS_INCLUDE_DIRS=$PARMETIS_PREFIX/include - PARMETIS_LIBRARIES=$PARMETIS_PREFIX/lib/libparmetis.a + LAPACK_INCLUDE_DIRS="${LAPACK_PREFIX}/include" + LAPACK_LIBRARY_DIRS="${LAPACK_PREFIX}/lib" + LAPACK_LIBRARY_NAMES="openblas" + config_args+=( "-DBLAS_LIBRARY_DIRS:PATH=${BLAS_LIBRARY_DIRS}" ) + config_args+=( "-DBLAS_INCLUDE_DIRS:PATH=${BLAS_LIBRARY_DIRS}" ) + config_args+=( "-DBLAS_LIBRARY_NAMES:STRING=${BLAS_LIBRARY_NAMES}" ) + config_args+=( "-DLAPACK_LIBRARY_DIRS:PATH=${LAPACK_LIBRARY_DIRS}" ) + config_args+=( "-DLAPACK_INCLUDE_DIRS:PATH=${LAPACK_INCLUDE_DIRS}" ) + config_args+=( "-DLAPACK_LIBRARY_NAMES:STRING=${LAPACK_LIBRARY_NAMES}" ) + fi + + if (( V_MAJOR == 12 && V_MINOR >= 12)); then + config_args+=( "-DTrilinos_ENABLE_SEACAS:BOOL=OFF" ) + config_args+=( "-DTrilinos_ENABLE_OpenMP:BOOL=OFF" ) + config_args+=( "-DKokkos_ENABLE_Serial:BOOL=ON" ) + config_args+=( "-DKokkos_ENABLE_OpenMP:BOOL=OFF" ) + config_args+=( "-DKokkos_ENABLE_Pthread:BOOL=OFF" ) + config_args+=( "-DKokkos_ENABLE_Cuda:BOOL=OFF" ) + config_args+=( "-DKokkos_ENABLE_Cuda_UVM:BOOL=OFF" ) + config_args+=( "-DTpetra_INST_SERIAL:BOOL=ON" ) + config_args+=( "-DTrilinos_ENABLE_TESTS:BOOL=OFF" ) + config_args+=( "-DTrilinos_ENABLE_MueLu:BOOL=ON" ) + fi + + 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" @@ -36,34 +48,34 @@ pbuild::configure() { -DCMAKE_INSTALL_PREFIX:PATH=$PREFIX \ -DCMAKE_CXX_FLAGS:STRING="-DMPICH_IGNORE_CXX_SEEK -fPIC" \ -DCMAKE_C_FLAGS:STRING="-DMPICH_IGNORE_CXX_SEEK -fPIC" \ - -D CMAKE_CXX_STANDARD:STRING="11" \ + -DCMAKE_CXX_STANDARD:STRING="11" \ -DCMAKE_Fortran_FLAGS:STRING="-fPIC" \ - -D TPL_ENABLE_DLlib:BOOL=OFF \ - -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 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 \ + -DTPL_ENABLE_DLlib:BOOL=OFF \ + -DTPL_ENABLE_QT:BOOL=OFF \ + -DTPL_ENABLE_MPI:BOOL=ON \ + -DTPL_ENABLE_BLAS:BOOL=ON \ + -DTPL_ENABLE_LAPACK:BOOL=ON \ + -DTPL_ENABLE_METIS:BOOL=ON \ + -DTPL_ENABLE_ParMETIS:BOOL=ON \ + -DTPL_METIS_INCLUDE_DIRS:PATH=$METIS_INCLUDE_DIRS \ + -DTPL_METIS_LIBRARIES:PATH=$METIS_LIBRARIES \ + -DTPL_ParMETIS_INCLUDE_DIRS:PATH=$PARMETIS_INCLUDE_DIRS \ + -DTPL_ParMETIS_LIBRARIES:PATH=$PARMETIS_LIBRARIES \ + -DTrilinos_ENABLE_Amesos:BOOL=ON \ + -DTrilinos_ENABLE_Amesos2:BOOL=ON \ + -DTrilinos_ENABLE_AztecOO:BOOL=ON \ + -DTrilinos_ENABLE_Belos:BOOL=ON \ + -DTrilinos_ENABLE_Epetra:BOOL=ON \ + -DTrilinos_ENABLE_EpetraExt:BOOL=ON \ + -DTrilinos_ENABLE_Galeri:BOOL=ON \ + -DTrilinos_ENABLE_Ifpack:BOOL=ON \ + -DTrilinos_ENABLE_Isorropia:BOOL=ON \ + -DTrilinos_ENABLE_ML:BOOL=ON \ + -DTrilinos_ENABLE_NOX:BOOL=ON \ + -DTrilinos_ENABLE_Optika:BOOL=OFF \ + -DTrilinos_ENABLE_Teuchos:BOOL=ON \ + -DTrilinos_ENABLE_Tpetra:BOOL=ON \ + -DTrilinos_ENABLE_TESTS:BOOL=OFF \ "${config_args[@]}" \ "${MODULE_SRCDIR}" || exit 1 }