summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorAxel Huebl <axel.huebl@plasma.ninja>2021-09-06 06:26:04 -0700
committerGitHub <noreply@github.com>2021-09-06 15:26:04 +0200
commit1badb47b80243e9d035edcba766968347ddd5134 (patch)
treebffdd42dc39e77130b305675ec54be7f411f4572 /var
parent1a48c0f51c9ef1c6bc4d9a1f68b2b0c7c036abb7 (diff)
downloadspack-1badb47b80243e9d035edcba766968347ddd5134.tar.gz
spack-1badb47b80243e9d035edcba766968347ddd5134.tar.bz2
spack-1badb47b80243e9d035edcba766968347ddd5134.tar.xz
spack-1badb47b80243e9d035edcba766968347ddd5134.zip
WarpX/HiPACE/openPMD-api: Use when(...) (#25789)
Use the new with `when()` syntax for variant dependencies.
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/hipace/package.py23
-rw-r--r--var/spack/repos/builtin/packages/openpmd-api/package.py34
-rw-r--r--var/spack/repos/builtin/packages/warpx/package.py32
3 files changed, 50 insertions, 39 deletions
diff --git a/var/spack/repos/builtin/packages/hipace/package.py b/var/spack/repos/builtin/packages/hipace/package.py
index 7fca84cf72..2f487bc72b 100644
--- a/var/spack/repos/builtin/packages/hipace/package.py
+++ b/var/spack/repos/builtin/packages/hipace/package.py
@@ -36,17 +36,20 @@ class Hipace(CMakePackage):
depends_on('cmake@3.15.0:', type='build')
depends_on('cuda@9.2.88:', when='compute=cuda')
- depends_on('fftw@3: +openmp', when='compute=omp')
- depends_on('fftw +mpi', when='+mpi compute=omp')
depends_on('mpi', when='+mpi')
- depends_on('openpmd-api@hipace', when='+openpmd')
- depends_on('openpmd-api ~mpi', when='+openpmd ~mpi')
- depends_on('openpmd-api +mpi', when='+openpmd +mpi')
- depends_on('pkgconfig', type='build', when='compute=omp')
- depends_on('rocfft', when='compute=hip')
- depends_on('rocprim', when='compute=hip')
- depends_on('rocrand', when='compute=hip')
- depends_on('llvm-openmp', when='%apple-clang compute=omp')
+ with when('+openpmd'):
+ depends_on('openpmd-api@hipace')
+ depends_on('openpmd-api ~mpi', when='~mpi')
+ depends_on('openpmd-api +mpi', when='+mpi')
+ with when('compute=omp'):
+ depends_on('fftw@3: +openmp')
+ depends_on('fftw +mpi', when='+mpi')
+ depends_on('pkgconfig', type='build')
+ depends_on('llvm-openmp', when='%apple-clang')
+ with when('compute=hip'):
+ depends_on('rocfft')
+ depends_on('rocprim')
+ depends_on('rocrand')
def cmake_args(self):
spec = self.spec
diff --git a/var/spack/repos/builtin/packages/openpmd-api/package.py b/var/spack/repos/builtin/packages/openpmd-api/package.py
index 37c166f7d3..06ea51cd2b 100644
--- a/var/spack/repos/builtin/packages/openpmd-api/package.py
+++ b/var/spack/repos/builtin/packages/openpmd-api/package.py
@@ -49,22 +49,26 @@ class OpenpmdApi(CMakePackage):
depends_on('catch2@2.6.1:', type='test')
depends_on('catch2@2.13.4:', type='test', when='@0.14.0:')
depends_on('mpi@2.3:', when='+mpi') # might become MPI 3.0+
- depends_on('hdf5@1.8.13:', when='+hdf5')
- depends_on('hdf5@1.8.13: ~mpi', when='~mpi +hdf5')
- depends_on('hdf5@1.8.13: +mpi', when='+mpi +hdf5')
- depends_on('adios@1.13.1: ~sz', when='+adios1')
- depends_on('adios@1.13.1: ~mpi ~sz', when='~mpi +adios1')
- depends_on('adios@1.13.1: +mpi ~sz', when='+mpi +adios1')
- depends_on('adios2@2.5.0:', when='+adios2')
- depends_on('adios2@2.6.0:', when='+adios2 @0.12.0:')
- depends_on('adios2@2.7.0:', when='+adios2 @0.14.0:')
- depends_on('adios2@2.5.0: ~mpi', when='~mpi +adios2')
- depends_on('adios2@2.5.0: +mpi', when='+mpi +adios2')
depends_on('nlohmann-json@3.9.1:')
- depends_on('py-pybind11@2.6.2:', when='+python', type='link')
- depends_on('py-numpy@1.15.1:', when='+python', type=['test', 'run'])
- depends_on('py-mpi4py@2.1.0:', when='+python +mpi', type=['test', 'run'])
- depends_on('python@3.6:', when='+python', type=['link', 'test', 'run'])
+ with when('+hdf5'):
+ depends_on('hdf5@1.8.13:')
+ depends_on('hdf5@1.8.13: ~mpi', when='~mpi')
+ depends_on('hdf5@1.8.13: +mpi', when='+mpi')
+ with when('+adios1'):
+ depends_on('adios@1.13.1: ~sz')
+ depends_on('adios@1.13.1: ~mpi ~sz', when='~mpi')
+ depends_on('adios@1.13.1: +mpi ~sz', when='+mpi')
+ with when('+adios2'):
+ depends_on('adios2@2.5.0:')
+ depends_on('adios2@2.6.0:', when='@0.12.0:')
+ depends_on('adios2@2.7.0:', when='@0.14.0:')
+ depends_on('adios2@2.5.0: ~mpi', when='~mpi')
+ depends_on('adios2@2.5.0: +mpi', when='+mpi')
+ with when('+python'):
+ depends_on('py-pybind11@2.6.2:', type='link')
+ depends_on('py-numpy@1.15.1:', type=['test', 'run'])
+ depends_on('py-mpi4py@2.1.0:', when='+mpi', type=['test', 'run'])
+ depends_on('python@3.6:', type=['link', 'test', 'run'])
conflicts('^hdf5 api=v16', msg='openPMD-api requires HDF5 APIs for 1.8+')
diff --git a/var/spack/repos/builtin/packages/warpx/package.py b/var/spack/repos/builtin/packages/warpx/package.py
index 533e858707..180c89bd6d 100644
--- a/var/spack/repos/builtin/packages/warpx/package.py
+++ b/var/spack/repos/builtin/packages/warpx/package.py
@@ -77,24 +77,28 @@ class Warpx(CMakePackage):
# automatically
depends_on('ascent +cuda ~shared', when='+ascent compute=cuda')
depends_on('ascent +mpi', when='+ascent +mpi')
- depends_on('blaspp', when='+psatd dims=rz')
- depends_on('blaspp +cuda', when='+psatd dims=rz compute=cuda')
depends_on('boost@1.66.0: +math', when='+qedtablegen')
depends_on('cmake@3.15.0:', type='build')
depends_on('cuda@9.2.88:', when='compute=cuda')
- depends_on('fftw@3: +openmp', when='+psatd compute=omp')
- depends_on('fftw +mpi', when='+psatd +mpi compute=omp')
- depends_on('lapackpp', when='+psatd dims=rz')
- depends_on('mpi', when='+mpi')
- depends_on('openpmd-api@0.13.1:', when='+openpmd')
- depends_on('openpmd-api@0.14.2:', when='+openpmd @21.09:')
- depends_on('openpmd-api ~mpi', when='+openpmd ~mpi')
- depends_on('openpmd-api +mpi', when='+openpmd +mpi')
- depends_on('pkgconfig', type='build', when='+psatd compute=omp')
- depends_on('rocfft', when='+psatd compute=hip')
- depends_on('rocprim', when='compute=hip')
- depends_on('rocrand', when='compute=hip')
depends_on('llvm-openmp', when='%apple-clang compute=omp')
+ depends_on('mpi', when='+mpi')
+ with when('+psatd dims=rz'):
+ depends_on('lapackpp')
+ depends_on('blaspp')
+ depends_on('blaspp +cuda', when='compute=cuda')
+ with when('+psatd compute=omp'):
+ depends_on('fftw@3: +openmp')
+ depends_on('fftw +mpi', when='+mpi')
+ depends_on('pkgconfig', type='build')
+ with when('+openpmd'):
+ depends_on('openpmd-api@0.13.1:')
+ depends_on('openpmd-api@0.14.2:', when='@21.09:')
+ depends_on('openpmd-api ~mpi', when='~mpi')
+ depends_on('openpmd-api +mpi', when='+mpi')
+ with when('compute=hip'):
+ depends_on('rocfft', when='+psatd')
+ depends_on('rocprim')
+ depends_on('rocrand')
conflicts('~qed +qedtablegen',
msg='WarpX PICSAR QED table generation needs +qed')