summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--var/spack/repos/builtin/packages/qmcpack/package.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/var/spack/repos/builtin/packages/qmcpack/package.py b/var/spack/repos/builtin/packages/qmcpack/package.py
index ec6f1e0f16..f25a289a0f 100644
--- a/var/spack/repos/builtin/packages/qmcpack/package.py
+++ b/var/spack/repos/builtin/packages/qmcpack/package.py
@@ -215,9 +215,15 @@ class Qmcpack(CMakePackage, CudaPackage):
if '+cuda' in spec:
args.append('-DQMC_CUDA=1')
- cuda_arch = spec.variants['cuda_arch'].value
+ cuda_arch_list = spec.variants['cuda_arch'].value
+ cuda_arch = cuda_arch_list[0]
+ if len(cuda_arch_list) > 1:
+ raise InstallError(
+ 'QMCPACK only supports compilation for a single '
+ 'GPU architecture at a time'
+ )
if cuda_arch != 'none':
- args.append('-DCUDA_ARCH=sm_{0}'.format(cuda_arch[0]))
+ args.append('-DCUDA_ARCH=sm_{0}'.format(cuda_arch))
else:
# This is the default value set in QMCPACK's CMake
# Not possible to set default value for cuda_arch,