diff --git a/var/spack/repos/builtin/packages/elmerfem/package.py b/var/spack/repos/builtin/packages/elmerfem/package.py index 4f664c26ec..1ece8bf783 100644 --- a/var/spack/repos/builtin/packages/elmerfem/package.py +++ b/var/spack/repos/builtin/packages/elmerfem/package.py @@ -36,7 +36,8 @@ class Elmerfem(CMakePackage): depends_on('blas') depends_on('lapack') depends_on('scalapack', when='+mpi') - depends_on('mumps', when='+mumps') + depends_on('mumps+openmp', when='+mumps+openmp') + depends_on('mumps~openmp', when='+mumps~openmp') depends_on('hypre', when='+hypre') depends_on('trilinos~hypre~zoltan~zoltan2', when='+trilinos') depends_on('zoltan+fortran', when='+zoltan') diff --git a/var/spack/repos/builtin/packages/mumps/package.py b/var/spack/repos/builtin/packages/mumps/package.py index b82d143013..9b9346785e 100644 --- a/var/spack/repos/builtin/packages/mumps/package.py +++ b/var/spack/repos/builtin/packages/mumps/package.py @@ -13,6 +13,7 @@ class Mumps(Package): homepage = "http://mumps.enseeiht.fr" url = "http://mumps.enseeiht.fr/MUMPS_5.3.5.tar.gz" + version('5.4.0', sha256='c613414683e462da7c152c131cebf34f937e79b30571424060dd673368bbf627') version('5.3.5', sha256='e5d665fdb7043043f0799ae3dbe3b37e5b200d1ab7a6f7b2a4e463fd89507fa4') version('5.3.3', sha256='27e7749ac05006bf8e81a457c865402bb72a42bf3bc673da49de1020f0f32011') version('5.2.0', sha256='41f2c7cb20d69599fb47e2ad6f628f3798c429f49e72e757e70722680f70853f') @@ -43,7 +44,7 @@ class Mumps(Package): variant('int64', default=False, description='Use int64_t/integer*8 as default index type') variant('shared', default=True, description='Build shared libraries') - variant('openmp', default=False, + variant('openmp', default=True, description='Compile MUMPS with OpenMP support') variant('blr_mt', default=False, description='Allow BLAS calls in OpenMP regions ' + @@ -323,7 +324,10 @@ def install(self, spec, prefix): ['d', '+double'], ['z', '+complex+double']] for ltr, v in letters_variants: if v in spec: - make(ltr + 'examples') + if self.spec.satisfies('@5.4:'): + make(ltr) + else: + make(ltr + 'examples') install_tree('lib', prefix.lib) install_tree('include', prefix.include) diff --git a/var/spack/repos/builtin/packages/trilinos/package.py b/var/spack/repos/builtin/packages/trilinos/package.py index 2b3dd1987d..1012055549 100644 --- a/var/spack/repos/builtin/packages/trilinos/package.py +++ b/var/spack/repos/builtin/packages/trilinos/package.py @@ -391,7 +391,8 @@ class Trilinos(CMakePackage, CudaPackage): # (or alike) and adding results to -DTrilinos_EXTRA_LINK_FLAGS together # with Blas and Lapack and ScaLAPACK and Blacs and -lgfortran and it may # work at the end. But let's avoid all this by simply using shared libs - depends_on('mumps@5.0:+mpi+shared', when='+mumps') + depends_on('mumps@5.0:+mpi+shared+openmp', when='+mumps+openmp') + depends_on('mumps@5.0:+mpi+shared~openmp', when='+mumps~openmp') depends_on('scalapack', when='+mumps') depends_on('superlu-dist', when='+superlu-dist') depends_on('superlu-dist@:4.3', when='@11.14.1:12.6.1+superlu-dist')