summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTeodor Nikolov <teodor.nikolov22@gmail.com>2020-08-09 20:44:05 +0200
committerGitHub <noreply@github.com>2020-08-09 20:44:05 +0200
commit902fac185a22cab19a36a73916c93e9ad7f0dd1a (patch)
treec84e45c4cff3c7ce413ded62bb56829fd9042be6
parentbad87343166e48063fecfd8f949814afd13714a9 (diff)
downloadspack-902fac185a22cab19a36a73916c93e9ad7f0dd1a.tar.gz
spack-902fac185a22cab19a36a73916c93e9ad7f0dd1a.tar.bz2
spack-902fac185a22cab19a36a73916c93e9ad7f0dd1a.tar.xz
spack-902fac185a22cab19a36a73916c93e9ad7f0dd1a.zip
blaspp: added explicit dependency on CUDA (#17965)
-rw-r--r--var/spack/repos/builtin/packages/blaspp/package.py12
1 files changed, 11 insertions, 1 deletions
diff --git a/var/spack/repos/builtin/packages/blaspp/package.py b/var/spack/repos/builtin/packages/blaspp/package.py
index bcc5e80292..ddacfa22aa 100644
--- a/var/spack/repos/builtin/packages/blaspp/package.py
+++ b/var/spack/repos/builtin/packages/blaspp/package.py
@@ -6,7 +6,7 @@
from spack import *
-class Blaspp(CMakePackage):
+class Blaspp(CMakePackage, CudaPackage):
"""C++ API for the Basic Linear Algebra Subroutines. Developed by the
Innovative Computing Laboratory at the University of Tennessee,
Knoxville."""
@@ -62,6 +62,16 @@ class Blaspp(CMakePackage):
else:
args.append('-DBLAS_LIBRARY_THREADING="sequential"')
+ # `blaspp` has an implicit CUDA detection mechanism. This disables it
+ # in cases where it may backfire. One such case is when `cuda` is
+ # external and marked with `buildable=false`. `blaspp`'s CMake CUDA
+ # detection mechanism finds CUDA but doesn't set certain paths properly
+ # which leads to a build issues [1].
+ #
+ # [1]: https://bitbucket.org/icl/blaspp/issues/6/compile-error-due-to-implicit-cuda
+ if '~cuda' in spec:
+ args.append('-DCMAKE_CUDA_COMPILER=')
+
# Missing:
#
# - acml : BLAS_LIBRARY="AMD ACML"