diff options
Diffstat (limited to 'var/spack/repos/builtin/packages/elemental/package.py')
-rw-r--r-- | var/spack/repos/builtin/packages/elemental/package.py | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/var/spack/repos/builtin/packages/elemental/package.py b/var/spack/repos/builtin/packages/elemental/package.py index 49306457d6..85dba11538 100644 --- a/var/spack/repos/builtin/packages/elemental/package.py +++ b/var/spack/repos/builtin/packages/elemental/package.py @@ -6,7 +6,6 @@ import os from spack.package import * -from spack.spec import UnsupportedCompilerError class Elemental(CMakePackage): @@ -23,6 +22,9 @@ class Elemental(CMakePackage): version("0.87.7", sha256="7becfdbc223e9c72e65ae876d842c48d2037d13f83e9f41cea285e21b840d7d9") version("0.87.6", sha256="b597987c99ddd3462e0619524c5b7f711177ae8ae541b1b961e11d96e15afc64") + depends_on("c", type="build") # generated + depends_on("cxx", type="build") # generated + variant("shared", default=True, description="Enables the build of shared libraries") variant("hybrid", default=True, description="Make use of OpenMP within MPI packing/unpacking") variant( @@ -91,6 +93,8 @@ class Elemental(CMakePackage): patch("elemental_cublas.patch", when="+cublas") patch("cmake_0.87.7.patch", when="@0.87.7") + conflicts("%intel@:17.0.2", when="@:0.87.7") + @property def libs(self): shared = True if "+shared" in self.spec else False @@ -98,14 +102,6 @@ class Elemental(CMakePackage): def cmake_args(self): spec = self.spec - - if "@:0.87.7" in spec and "%intel@:17.0.2" in spec: - raise UnsupportedCompilerError( - "Elemental {0} has a known bug with compiler: {1} {2}".format( - spec.version, spec.compiler.name, spec.compiler.version - ) - ) - args = [ "-DCMAKE_INSTALL_MESSAGE:STRING=LAZY", "-DCMAKE_C_COMPILER=%s" % spec["mpi"].mpicc, @@ -147,7 +143,7 @@ class Elemental(CMakePackage): # If using 64bit int BLAS libraries, elemental has to build # them internally - if "+int64_blas" in spec: + if spec.satisfies("+int64_blas"): args.extend( [ "-DEL_BLAS_SUFFIX:STRING={0}".format( @@ -156,7 +152,7 @@ class Elemental(CMakePackage): "-DCUSTOM_BLAS_SUFFIX:BOOL=TRUE", ] ), - if "+scalapack" in spec: + if spec.satisfies("+scalapack"): args.extend( [ "-DEL_LAPACK_SUFFIX:STRING={0}".format( @@ -168,7 +164,7 @@ class Elemental(CMakePackage): else: math_libs = spec["lapack"].libs + spec["blas"].libs - if "+scalapack" in spec: + if spec.satisfies("+scalapack"): math_libs = spec["scalapack"].libs + math_libs args.extend(["-DMATH_LIBS:STRING={0}".format(math_libs.ld_flags)]) |