diff options
author | Denis Davydov <davydden@gmail.com> | 2019-04-09 22:54:21 +0200 |
---|---|---|
committer | Gregory Lee <lee218@llnl.gov> | 2019-04-09 13:54:21 -0700 |
commit | 1f1ea2c8596c8b2985a39a81f8e9a53422bff9a2 (patch) | |
tree | 3c3bc5fa253c0de835462e746a62542368519528 | |
parent | 82455a30d0586b44fe4657e8d3784a6793cdf1e1 (diff) | |
download | spack-1f1ea2c8596c8b2985a39a81f8e9a53422bff9a2.tar.gz spack-1f1ea2c8596c8b2985a39a81f8e9a53422bff9a2.tar.bz2 spack-1f1ea2c8596c8b2985a39a81f8e9a53422bff9a2.tar.xz spack-1f1ea2c8596c8b2985a39a81f8e9a53422bff9a2.zip |
intel: consolidate libs() in the base class (#11143)
* intel: consolidate libs() in the base class
* white space
* flake8
-rw-r--r-- | lib/spack/spack/build_systems/intel.py | 13 | ||||
-rw-r--r-- | var/spack/repos/builtin/packages/intel-mkl/package.py | 14 | ||||
-rw-r--r-- | var/spack/repos/builtin/packages/intel-parallel-studio/package.py | 14 |
3 files changed, 10 insertions, 31 deletions
diff --git a/lib/spack/spack/build_systems/intel.py b/lib/spack/spack/build_systems/intel.py index 7bc32d61e2..7882d55f87 100644 --- a/lib/spack/spack/build_systems/intel.py +++ b/lib/spack/spack/build_systems/intel.py @@ -935,18 +935,25 @@ class IntelPackage(PackageBase): @property def libs(self): result = LibraryList([]) + if '+tbb' in self.spec or self.provides('tbb'): + result = self.tbb_libs + result + if '+mkl' in self.spec or self.provides('blas'): + result = self.blas_libs + result + if '+mkl' in self.spec or self.provides('lapack'): + result = self.lapack_libs + result if '+mpi' in self.spec or self.provides('mpi'): # If prefix is too general, recursive searches may get files from # supported but inappropriate sub-architectures like 'mic'. libnames = ['libmpifort', 'libmpi'] if 'cxx' in self.spec.last_query.extra_parameters: libnames = ['libmpicxx'] + libnames - result += find_libraries( + result = find_libraries( libnames, root=self.component_lib_dir('mpi'), - shared=True, recursive=True) + shared=True, recursive=True) + result - # NB: MKL uses domain-specifics: blas_libs/lapack_libs/scalapack_libs + if '+mkl' in self.spec or self.provides('scalapack'): + result = self.scalapack_libs + result debug_print(result) return result diff --git a/var/spack/repos/builtin/packages/intel-mkl/package.py b/var/spack/repos/builtin/packages/intel-mkl/package.py index e447d88894..2ed678df1f 100644 --- a/var/spack/repos/builtin/packages/intel-mkl/package.py +++ b/var/spack/repos/builtin/packages/intel-mkl/package.py @@ -6,7 +6,6 @@ import sys from spack import * -from spack.build_systems.intel import debug_print class IntelMkl(IntelPackage): @@ -65,16 +64,3 @@ class IntelMkl(IntelPackage): if sys.platform == 'darwin': # there is no libmkl_gnu_thread on macOS conflicts('threads=openmp', when='%gcc') - - @property - def libs(self): - libs = LibraryList([]) - if self.provides('blas'): - libs = self.blas_libs - if self.provides('lapack'): - libs = self.lapack_libs + libs - if self.provides('scalapack'): - libs = self.scalapack_libs + libs - - debug_print(libs) - return libs diff --git a/var/spack/repos/builtin/packages/intel-parallel-studio/package.py b/var/spack/repos/builtin/packages/intel-parallel-studio/package.py index b0793adf5f..8eaef6bf9a 100644 --- a/var/spack/repos/builtin/packages/intel-parallel-studio/package.py +++ b/var/spack/repos/builtin/packages/intel-parallel-studio/package.py @@ -4,7 +4,6 @@ # SPDX-License-Identifier: (Apache-2.0 OR MIT) from spack import * -from spack.build_systems.intel import debug_print class IntelParallelStudio(IntelPackage): @@ -196,16 +195,3 @@ class IntelParallelStudio(IntelPackage): 'F90': spack_fc, 'FC': spack_fc, }) - - @property - def libs(self): - libs = LibraryList([]) - if self.provides('blas'): - libs = self.blas_libs - if self.provides('lapack'): - libs = self.lapack_libs + libs - if self.provides('scalapack'): - libs = self.scalapack_libs + libs - - debug_print(libs) - return libs |