From 0168047429b46ea08ccdfee59dc0be462a6095c6 Mon Sep 17 00:00:00 2001 From: Valentin Volkl Date: Fri, 25 Mar 2022 01:38:56 +0100 Subject: vecgeom: fix install error when ~cuda (#29716) --- var/spack/repos/builtin/packages/vecgeom/package.py | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/vecgeom/package.py b/var/spack/repos/builtin/packages/vecgeom/package.py index caaf2eb4b0..fc6238d07a 100644 --- a/var/spack/repos/builtin/packages/vecgeom/package.py +++ b/var/spack/repos/builtin/packages/vecgeom/package.py @@ -101,17 +101,19 @@ class Vecgeom(CMakePackage, CudaPackage): if spec.satisfies('@:1.1.18'): args.append(self.define_from_variant('CUDA')) - arch = spec.variants['cuda_arch'].value - if len(arch) != 1 or arch[0] == 'none': - raise InstallError("Exactly one cuda_arch must be specified") - args.append(define('CUDA_ARCH', arch[0])) + if '+cuda' in spec: + arch = spec.variants['cuda_arch'].value + if len(arch) != 1 or arch[0] == 'none': + raise InstallError("Exactly one cuda_arch must be specified") + args.append(define('CUDA_ARCH', arch[0])) else: args.append(self.define_from_variant('VECGEOM_ENABLE_CUDA', 'cuda')) - # This will add an (ignored) empty string if no values are - # selected, otherwise will add a CMake list of arch values - args.append(self.define( - 'CMAKE_CUDA_ARCHITECTURES', spec.variants['cuda_arch'].value - )) + if '+cuda' in spec: + # This will add an (ignored) empty string if no values are + # selected, otherwise will add a CMake list of arch values + args.append(self.define( + 'CMAKE_CUDA_ARCHITECTURES', spec.variants['cuda_arch'].value + )) # Set testing flags build_tests = self.run_tests -- cgit v1.2.3-70-g09d2