summaryrefslogtreecommitdiff
path: root/var/spack/repos/builtin/packages/umpire/package.py
diff options
context:
space:
mode:
Diffstat (limited to 'var/spack/repos/builtin/packages/umpire/package.py')
-rw-r--r--var/spack/repos/builtin/packages/umpire/package.py40
1 files changed, 30 insertions, 10 deletions
diff --git a/var/spack/repos/builtin/packages/umpire/package.py b/var/spack/repos/builtin/packages/umpire/package.py
index f67ec62f7b..028ba2ee17 100644
--- a/var/spack/repos/builtin/packages/umpire/package.py
+++ b/var/spack/repos/builtin/packages/umpire/package.py
@@ -21,8 +21,10 @@ class Umpire(CachedCMakePackage, CudaPackage, ROCmPackage):
maintainers = ['davidbeckingsale']
- version('develop', branch='develop', submodules=True)
- version('main', branch='main', submodules=True)
+ version('develop', branch='develop', submodules=False)
+ version('main', branch='main', submodules=False)
+ version('2022.03.1', tag='v2022.03.1', submodules=False)
+ version('2022.03.0', tag='v2022.03.0', submodules=False)
version('6.0.0', tag='v6.0.0', submodules=True)
version('5.0.1', tag='v5.0.1', submodules=True)
version('5.0.0', tag='v5.0.0', submodules=True)
@@ -70,19 +72,22 @@ class Umpire(CachedCMakePackage, CudaPackage, ROCmPackage):
variant('examples', default=True, description='Build Umpire Examples')
variant('tests', default='none', values=('none', 'basic', 'benchmarks'),
multi=False, description='Tests to run')
+ variant('device_alloc', default=True, description='Build Umpire Device Allocator')
depends_on('cmake@3.8:', type='build')
depends_on('cmake@3.9:', when='+cuda', type='build')
depends_on('cmake@:3.20', when='+rocm', type='build')
+ depends_on('cmake@3.14:', when='@2022.03.0:')
- depends_on('blt@0.5.0:', type='build', when='@6.0.1:')
+ depends_on('blt@0.5.0:', type='build', when='@2022.03.0:')
depends_on('blt@0.4.1', type='build', when='@6.0.0')
depends_on('blt@0.4.0:', type='build', when='@4.1.3:5.0.1')
depends_on('blt@0.3.6:', type='build', when='@:4.1.2')
depends_on('camp', when='@5.0.0:')
- depends_on('camp@0.2.2', when='@6.0.0:')
+ depends_on('camp@0.2.2', when='@6.0.0')
depends_on('camp@0.1.0', when='@5.0.0:5.0.1')
+ depends_on('camp@2022.03.0:', when='@2022.03.0:')
with when('@5.0.0:'):
with when('+cuda'):
@@ -99,6 +104,7 @@ class Umpire(CachedCMakePackage, CudaPackage, ROCmPackage):
conflicts('+numa', when='@:0.3.2')
conflicts('~c', when='+fortran', msg='Fortran API requires C API')
+ conflicts('+device_alloc', when='@:2022.03.0')
# device allocator exports device code, which requires static libs
# currently only available for cuda.
@@ -131,12 +137,15 @@ class Umpire(CachedCMakePackage, CudaPackage, ROCmPackage):
spec = self.spec
entries = super(Umpire, self).initconfig_compiler_entries()
+ option_prefix = "UMPIRE_" if spec.satisfies("@2022.03.0:") else ""
+
if '+fortran' in spec and self.compiler.fc is not None:
entries.append(cmake_cache_option("ENABLE_FORTRAN", True))
else:
entries.append(cmake_cache_option("ENABLE_FORTRAN", False))
- entries.append(cmake_cache_option("ENABLE_C", '+c' in spec))
+ entries.append(cmake_cache_option(
+ "{}ENABLE_C".format(option_prefix), '+c' in spec))
return entries
@@ -144,6 +153,8 @@ class Umpire(CachedCMakePackage, CudaPackage, ROCmPackage):
spec = self.spec
entries = super(Umpire, self).initconfig_hardware_entries()
+ option_prefix = "UMPIRE_" if spec.satisfies("@2022.03.0:") else ""
+
if '+cuda' in spec:
entries.append(cmake_cache_option("ENABLE_CUDA", True))
@@ -158,7 +169,8 @@ class Umpire(CachedCMakePackage, CudaPackage, ROCmPackage):
"CMAKE_CUDA_FLAGS", '{0}'.format(flag)))
entries.append(cmake_cache_option(
- "ENABLE_DEVICE_CONST", spec.satisfies('+deviceconst')))
+ "{}ENABLE_DEVICE_CONST".format(option_prefix),
+ spec.satisfies('+deviceconst')))
else:
entries.append(cmake_cache_option("ENABLE_CUDA", False))
@@ -180,6 +192,8 @@ class Umpire(CachedCMakePackage, CudaPackage, ROCmPackage):
spec = self.spec
entries = []
+ option_prefix = "UMPIRE_" if spec.satisfies("@2022.03.0:") else ""
+
# TPL locations
entries.append("#------------------{0}".format("-" * 60))
entries.append("# TPLs")
@@ -188,12 +202,18 @@ class Umpire(CachedCMakePackage, CudaPackage, ROCmPackage):
entries.append(cmake_cache_path("BLT_SOURCE_DIR", spec['blt'].prefix))
if spec.satisfies('@5.0.0:'):
entries.append(cmake_cache_path("camp_DIR", spec['camp'].prefix))
- entries.append(cmake_cache_option("ENABLE_NUMA", '+numa' in spec))
- entries.append(cmake_cache_option("ENABLE_OPENMP", '+openmp' in spec))
+ entries.append(cmake_cache_option(
+ "{}ENABLE_NUMA".format(option_prefix), '+numa' in spec))
+ entries.append(cmake_cache_option(
+ "{}ENABLE_OPENMP".format(option_prefix), '+openmp' in spec))
entries.append(cmake_cache_option(
"ENABLE_BENCHMARKS", 'tests=benchmarks' in spec))
- entries.append(cmake_cache_option("ENABLE_EXAMPLES", '+examples' in spec))
- entries.append(cmake_cache_option("ENABLE_DOCS", False))
+ entries.append(cmake_cache_option(
+ "{}ENABLE_EXAMPLES".format(option_prefix), '+examples' in spec))
+ entries.append(cmake_cache_option(
+ "{}ENABLE_DOCS".format(option_prefix), False))
+ entries.append(cmake_cache_option("UMPIRE_ENABLE_DEVICE_ALLOCATOR",
+ "+device_alloc" in spec))
entries.append(cmake_cache_option("BUILD_SHARED_LIBS", '+shared' in spec))
entries.append(cmake_cache_option("ENABLE_TESTS", 'tests=none' not in spec))