summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/spack/llnl/util/filesystem.py28
-rw-r--r--lib/spack/spack/spec.py2
-rw-r--r--var/spack/repos/builtin/packages/armadillo/package.py4
-rw-r--r--var/spack/repos/builtin/packages/cp2k/package.py2
-rw-r--r--var/spack/repos/builtin/packages/elemental/package.py2
-rw-r--r--var/spack/repos/builtin/packages/netlib-lapack/package.py4
-rw-r--r--var/spack/repos/builtin/packages/netlib-scalapack/package.py2
-rw-r--r--var/spack/repos/builtin/packages/octopus/package.py8
-rw-r--r--var/spack/repos/builtin/packages/openspeedshop/package.py6
-rw-r--r--var/spack/repos/builtin/packages/veclibfort/package.py2
10 files changed, 31 insertions, 29 deletions
diff --git a/lib/spack/llnl/util/filesystem.py b/lib/spack/llnl/util/filesystem.py
index 79f15f9a21..7f6773266d 100644
--- a/lib/spack/llnl/util/filesystem.py
+++ b/lib/spack/llnl/util/filesystem.py
@@ -568,20 +568,22 @@ def find_libraries(args, root, shared=True, recurse=False):
"""Returns an iterable object containing a list of full paths to
libraries if found.
- Args:
- args: iterable object containing a list of library names to \
- search for (e.g. 'libhdf5')
- root: root folder where to start searching
- shared: if True searches for shared libraries, otherwise for static
- recurse: if False search only root folder, if True descends top-down \
- from the root
-
- Returns:
- list of full paths to the libraries that have been found
+ :param args: Library name(s) to search for
+ :type args: str or collections.Sequence
+ :param str root: The root directory to start searching from
+ :param bool shared: if True searches for shared libraries,
+ otherwise for static
+ :param bool recurse: if False search only root folder,
+ if True descends top-down from the root
+
+ :returns: The libraries that have been found
+ :rtype: LibraryList
"""
- if not isinstance(args, collections.Sequence) or isinstance(args, str):
- message = '{0} expects a sequence of strings as first argument'
- message += ' [got {1} instead]'
+ if isinstance(args, str):
+ args = [args]
+ elif not isinstance(args, collections.Sequence):
+ message = '{0} expects a string or sequence of strings as the '
+ message += 'first argument [got {1} instead]'
raise TypeError(message.format(find_libraries.__name__, type(args)))
# Construct the right suffix for the library
diff --git a/lib/spack/spack/spec.py b/lib/spack/spack/spec.py
index c0ee8486db..9fc2c99e4a 100644
--- a/lib/spack/spack/spec.py
+++ b/lib/spack/spack/spec.py
@@ -767,7 +767,7 @@ def _libs_default_handler(descriptor, spec, cls):
name = 'lib' + spec.name
shared = '+shared' in spec
return find_libraries(
- [name], root=spec.prefix, shared=shared, recurse=True
+ name, root=spec.prefix, shared=shared, recurse=True
)
diff --git a/var/spack/repos/builtin/packages/armadillo/package.py b/var/spack/repos/builtin/packages/armadillo/package.py
index 9ab1b66880..7bf28efc0d 100644
--- a/var/spack/repos/builtin/packages/armadillo/package.py
+++ b/var/spack/repos/builtin/packages/armadillo/package.py
@@ -47,9 +47,9 @@ class Armadillo(Package):
depends_on('hdf5', when='+hdf5')
def install(self, spec, prefix):
- arpack = find_libraries(['libarpack'], root=spec[
+ arpack = find_libraries('libarpack', root=spec[
'arpack-ng'].prefix.lib, shared=True)
- superlu = find_libraries(['libsuperlu'], root=spec[
+ superlu = find_libraries('libsuperlu', root=spec[
'superlu'].prefix, shared=False, recurse=True)
cmake_args = [
# ARPACK support
diff --git a/var/spack/repos/builtin/packages/cp2k/package.py b/var/spack/repos/builtin/packages/cp2k/package.py
index 9bf7a5bc6b..0909d8cb81 100644
--- a/var/spack/repos/builtin/packages/cp2k/package.py
+++ b/var/spack/repos/builtin/packages/cp2k/package.py
@@ -92,7 +92,7 @@ class Cp2k(Package):
]
fcflags = copy.deepcopy(optflags[self.spec.compiler.name])
fcflags.append(spec['fftw'].cppflags)
- fftw = find_libraries(['libfftw3'], root=spec['fftw'].prefix.lib)
+ fftw = find_libraries('libfftw3', root=spec['fftw'].prefix.lib)
ldflags = [fftw.search_flags]
libs = [
join_path(spec['libint'].prefix.lib, 'libint.so'),
diff --git a/var/spack/repos/builtin/packages/elemental/package.py b/var/spack/repos/builtin/packages/elemental/package.py
index dd4ae291ec..ccc55092d0 100644
--- a/var/spack/repos/builtin/packages/elemental/package.py
+++ b/var/spack/repos/builtin/packages/elemental/package.py
@@ -82,7 +82,7 @@ class Elemental(CMakePackage):
def elemental_libs(self):
shared = True if '+shared' in self.spec else False
return find_libraries(
- ['libEl'], root=self.prefix, shared=shared, recurse=True
+ 'libEl', root=self.prefix, shared=shared, recurse=True
)
def build_type(self):
diff --git a/var/spack/repos/builtin/packages/netlib-lapack/package.py b/var/spack/repos/builtin/packages/netlib-lapack/package.py
index 9d0ebae371..fa11ae6367 100644
--- a/var/spack/repos/builtin/packages/netlib-lapack/package.py
+++ b/var/spack/repos/builtin/packages/netlib-lapack/package.py
@@ -74,14 +74,14 @@ class NetlibLapack(Package):
def blas_libs(self):
shared = True if '+shared' in self.spec else False
return find_libraries(
- ['libblas'], root=self.prefix, shared=shared, recurse=True
+ 'libblas', root=self.prefix, shared=shared, recurse=True
)
@property
def lapack_libs(self):
shared = True if '+shared' in self.spec else False
return find_libraries(
- ['liblapack'], root=self.prefix, shared=shared, recurse=True
+ 'liblapack', root=self.prefix, shared=shared, recurse=True
)
def install_one(self, spec, prefix, shared):
diff --git a/var/spack/repos/builtin/packages/netlib-scalapack/package.py b/var/spack/repos/builtin/packages/netlib-scalapack/package.py
index 7d8b803abf..6a97180328 100644
--- a/var/spack/repos/builtin/packages/netlib-scalapack/package.py
+++ b/var/spack/repos/builtin/packages/netlib-scalapack/package.py
@@ -62,7 +62,7 @@ class NetlibScalapack(Package):
def scalapack_libs(self):
shared = True if '+shared' in self.spec else False
return find_libraries(
- ['libscalapack'], root=self.prefix, shared=shared, recurse=True
+ 'libscalapack', root=self.prefix, shared=shared, recurse=True
)
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/octopus/package.py b/var/spack/repos/builtin/packages/octopus/package.py
index 81e4543745..88350f50bc 100644
--- a/var/spack/repos/builtin/packages/octopus/package.py
+++ b/var/spack/repos/builtin/packages/octopus/package.py
@@ -38,7 +38,7 @@ class Octopus(Package):
# Sample url is:
# "http://www.tddft.org/programs/octopus/down.php?file=5.0.1/octopus-5.0.1.tar.gz"
def url_for_version(self, version):
- return '{0}/{1}/octopus-{1}.tar.gz'.format(Octopus.base_url,
+ return '{0}/{1}/octopus-{1}.tar.gz'.format(Octopus.base_url,
version.dotted)
variant('scalapack', default=False,
@@ -69,7 +69,7 @@ class Octopus(Package):
# feast, libfm, pfft, isf, pnfft
def install(self, spec, prefix):
- arpack = find_libraries(['libarpack'], root=spec[
+ arpack = find_libraries('libarpack', root=spec[
'arpack-ng'].prefix.lib, shared=True)
lapack = spec['lapack'].libs
blas = spec['blas'].libs
@@ -96,12 +96,12 @@ class Octopus(Package):
if '+netcdf' in spec:
args.extend([
'--with-netcdf-prefix=%s' % spec['netcdf-fortran'].prefix,
- '--with-netcdf-include=%s' %
+ '--with-netcdf-include=%s' %
spec['netcdf-fortran'].prefix.include,
])
if '+arpack-ng' in spec:
args.extend([
- '--with-arpack={0}'.format(arpack.joined()),
+ '--with-arpack={0}'.format(arpack.joined()),
])
if '+scalapack' in spec:
args.extend([
diff --git a/var/spack/repos/builtin/packages/openspeedshop/package.py b/var/spack/repos/builtin/packages/openspeedshop/package.py
index 2e908b4099..ae2655735a 100644
--- a/var/spack/repos/builtin/packages/openspeedshop/package.py
+++ b/var/spack/repos/builtin/packages/openspeedshop/package.py
@@ -60,7 +60,7 @@ class Openspeedshop(Package):
"""
homepage = "http://www.openspeedshop.org"
- url = "https://github.com/OpenSpeedShop"
+ url = "https://github.com/OpenSpeedShop"
version('2.2', '16cb051179c2038de4e8a845edf1d573')
# Use when the git repository is available
version('2.3', branch='master',
@@ -230,7 +230,7 @@ class Openspeedshop(Package):
# set the DYNINSTAPI_RT_LIB library which is
# required for OpenSpeedShop to find loop level
# performance information
- dyninst_libdir = find_libraries(['libdyninstAPI_RT'],
+ dyninst_libdir = find_libraries('libdyninstAPI_RT',
root=self.spec['dyninst'].prefix,
shared=True, recurse=True)
@@ -238,7 +238,7 @@ class Openspeedshop(Package):
run_env.set('DYNINSTAPI_RT_LIB', dyninst_libdir)
# Find openspeedshop library path
- oss_libdir = find_libraries(['libopenss-framework'],
+ oss_libdir = find_libraries('libopenss-framework',
root=self.spec['openspeedshop'].prefix,
shared=True, recurse=True)
run_env.prepend_path('LD_LIBRARY_PATH',
diff --git a/var/spack/repos/builtin/packages/veclibfort/package.py b/var/spack/repos/builtin/packages/veclibfort/package.py
index fa99acfa97..26e64248bb 100644
--- a/var/spack/repos/builtin/packages/veclibfort/package.py
+++ b/var/spack/repos/builtin/packages/veclibfort/package.py
@@ -47,7 +47,7 @@ class Veclibfort(Package):
def libs(self):
shared = True if '+shared' in self.spec else False
return find_libraries(
- ['libvecLibFort'], root=self.prefix, shared=shared, recurse=True
+ 'libvecLibFort', root=self.prefix, shared=shared, recurse=True
)
def install(self, spec, prefix):