diff options
Diffstat (limited to 'var')
-rw-r--r-- | var/spack/repos/builtin/packages/dealii/package.py | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/var/spack/repos/builtin/packages/dealii/package.py b/var/spack/repos/builtin/packages/dealii/package.py index e26da2bf8a..593b9511ea 100644 --- a/var/spack/repos/builtin/packages/dealii/package.py +++ b/var/spack/repos/builtin/packages/dealii/package.py @@ -151,6 +151,9 @@ class Dealii(CMakePackage, CudaPackage): depends_on('trilinos+amesos+aztec+epetra+ifpack+ml+muelu+rol+sacado+teuchos~hypre', when='+trilinos+mpi+int64') # check that the combination of variants makes sense + conflicts('^openblas+ilp64', when='@:8.5.1') + conflicts('^intel-mkl+ilp64', when='@:8.5.1') + conflicts('^intel-parallel-studio+mkl+ilp64', when='@:8.5.1') conflicts('+assimp', when='@:8.5.1') conflicts('+gmsh', when='@:8.5.1') conflicts('+nanoflann', when='@:8.5.1') @@ -190,6 +193,11 @@ class Dealii(CMakePackage, CudaPackage): '-DDEAL_II_ALLOW_BUNDLED=OFF' ]) + if (spec.satisfies('^openblas+ilp64') or + spec.satisfies('^intel-mkl+ilp64') or + spec.satisfies('^intel-parallel-studio+mkl+ilp64')): + options.append('-DLAPACK_WITH_64BIT_BLAS_INDICES=ON') + if spec.satisfies('@:8.99'): options.extend([ # Cmake may still pick up system's bzip2, fix this: @@ -270,7 +278,7 @@ class Dealii(CMakePackage, CudaPackage): for library in ( 'gsl', 'hdf5', 'p4est', 'petsc', 'slepc', 'trilinos', 'metis', 'sundials', 'nanoflann', 'assimp', 'gmsh'): - if library in spec: + if ('+' + library) in spec: options.extend([ '-D%s_DIR=%s' % (library.upper(), spec[library].prefix), '-DDEAL_II_WITH_%s:BOOL=ON' % library.upper() |