diff options
Diffstat (limited to 'var/spack/repos/builtin/packages/cuda/package.py')
-rw-r--r-- | var/spack/repos/builtin/packages/cuda/package.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/cuda/package.py b/var/spack/repos/builtin/packages/cuda/package.py index 3e4316b7af..2ad654bbc0 100644 --- a/var/spack/repos/builtin/packages/cuda/package.py +++ b/var/spack/repos/builtin/packages/cuda/package.py @@ -5,6 +5,8 @@ from spack import * from glob import glob +from llnl.util.filesystem import LibraryList +import os class Cuda(Package): @@ -58,3 +60,22 @@ class Cuda(Package): '--toolkit', # install CUDA Toolkit '--toolkitpath=%s' % prefix ) + + @property + def libs(self): + prefix = self.prefix + search_paths = [(prefix.lib, False), (prefix.lib64, False), + (prefix, True)] + for search_root, recursive in search_paths: + libs = find_libraries( + 'libcuda', root=search_root, shared=True, recursive=recursive) + if libs: + break + + filtered_libs = [] + # CUDA 10.0 provides Compatability libraries for running newer versions + # of CUDA with older drivers. These do not work with newer drivers. + for lib in libs: + if 'compat' not in lib.split(os.sep): + filtered_libs.append(lib) + return LibraryList(filtered_libs) |