tandem: update package (#42785)

This commit is contained in:
Thomas-Ulrich 2024-02-22 15:45:20 +01:00 committed by GitHub
parent 1af57e13fb
commit 90778873d1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -7,7 +7,7 @@
from spack.package import * from spack.package import *
class Tandem(CMakePackage): class Tandem(CMakePackage, CudaPackage, ROCmPackage):
"""Tandem is a scientific software for SEAS modelling and for solving Poisson """Tandem is a scientific software for SEAS modelling and for solving Poisson
and linear elasticity problems. It implements the Symmetric Interior Penalty and linear elasticity problems. It implements the Symmetric Interior Penalty
Galerkin (SIPG) method using unstructured simplicial meshes (triangle meshes Galerkin (SIPG) method using unstructured simplicial meshes (triangle meshes
@ -21,6 +21,9 @@ class Tandem(CMakePackage):
version("main", branch="main", submodules=True) version("main", branch="main", submodules=True)
# we cannot use the tar.gz file because it does not contains submodules # we cannot use the tar.gz file because it does not contains submodules
version(
"1.1.0", tag="v1.1.0", commit="17c42dc9ae0ec519dcc1b5732681b2e4054666f1", submodules=True
)
version("1.0", tag="v1.0", commit="eccab10cbdf5842ed9903fac7a023be5e2779f36", submodules=True) version("1.0", tag="v1.0", commit="eccab10cbdf5842ed9903fac7a023be5e2779f36", submodules=True)
patch("fix_v1.0_compilation.diff", when="@1.0") patch("fix_v1.0_compilation.diff", when="@1.0")
@ -41,6 +44,13 @@ class Tandem(CMakePackage):
variant("libxsmm", default=False, description="Install libxsmm-generator") variant("libxsmm", default=False, description="Install libxsmm-generator")
depends_on("mpi") depends_on("mpi")
for var in ["openmpi", "mpich", "mvapich", "mvapich2", "mvapich2-gdr"]:
depends_on(f"{var} +cuda", when=f"+cuda ^[virtuals=mpi] {var}")
for var in ["mpich", "mvapich2-gdr"]:
depends_on(f"{var} +rocm", when=f"+rocm ^[virtuals=mpi] {var}")
depends_on("parmetis +int64 +shared") depends_on("parmetis +int64 +shared")
depends_on("metis +int64 +shared") depends_on("metis +int64 +shared")
depends_on("libxsmm@1.17 +generator", when="+libxsmm target=x86_64:") depends_on("libxsmm@1.17 +generator", when="+libxsmm target=x86_64:")
@ -50,6 +60,9 @@ class Tandem(CMakePackage):
depends_on("zlib-api") depends_on("zlib-api")
depends_on("petsc@3.14.6:3.18.5 +int64 +mumps +scalapack memalign=32") depends_on("petsc@3.14.6:3.18.5 +int64 +mumps +scalapack memalign=32")
depends_on("petsc@3.14.6:3.18.5 +int64 +mumps +scalapack +knl", when="target=skylake:") depends_on("petsc@3.14.6:3.18.5 +int64 +mumps +scalapack +knl", when="target=skylake:")
depends_on("petsc@3.14.6:3.18.5 +int64 +mumps +scalapack memalign=32 +cuda", when="+cuda")
depends_on("petsc@3.14.6:3.18.5 +int64 +mumps +scalapack memalign=32 +rocm", when="+rocm")
# see https://github.com/TEAR-ERC/tandem/issues/45 # see https://github.com/TEAR-ERC/tandem/issues/45
conflicts("%intel") conflicts("%intel")