summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorAdam J. Stewart <ajstewart426@gmail.com>2020-10-12 19:59:20 -0500
committerGitHub <noreply@github.com>2020-10-12 17:59:20 -0700
commitcb4e30b477027c515ffc64ab513963d1e126bb90 (patch)
tree9877f6eba2055b8244e8caa89234e7de10f8e0d0 /var
parent82a224b0daab28b8ca1c231be0886fc421c1a6dc (diff)
downloadspack-cb4e30b477027c515ffc64ab513963d1e126bb90.tar.gz
spack-cb4e30b477027c515ffc64ab513963d1e126bb90.tar.bz2
spack-cb4e30b477027c515ffc64ab513963d1e126bb90.tar.xz
spack-cb4e30b477027c515ffc64ab513963d1e126bb90.zip
Python: add both lib and lib64 to PYTHONPATH (#18523)
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/python/package.py17
1 files changed, 11 insertions, 6 deletions
diff --git a/var/spack/repos/builtin/packages/python/package.py b/var/spack/repos/builtin/packages/python/package.py
index e9bae81ce5..e8e2f3c0de 100644
--- a/var/spack/repos/builtin/packages/python/package.py
+++ b/var/spack/repos/builtin/packages/python/package.py
@@ -929,11 +929,14 @@ class Python(AutotoolsPackage):
env.prepend_path('PATH', path)
python_paths = []
- for d in dependent_spec.traverse(
- deptype=('build', 'run', 'test')):
+ for d in dependent_spec.traverse(deptype=('build', 'run', 'test')):
if d.package.extends(self.spec):
- python_paths.append(join_path(d.prefix,
- self.site_packages_dir))
+ # Python libraries may be installed in lib or lib64
+ # See issues #18520 and #17126
+ for lib in ['lib', 'lib64']:
+ python_paths.append(join_path(
+ d.prefix, lib, 'python' + str(self.version.up_to(2)),
+ 'site-packages'))
pythonpath = ':'.join(python_paths)
env.set('PYTHONPATH', pythonpath)
@@ -942,8 +945,10 @@ class Python(AutotoolsPackage):
# For run time environment set only the path for
# dependent_spec and prepend it to PYTHONPATH
if dependent_spec.package.extends(self.spec):
- env.prepend_path('PYTHONPATH', join_path(
- dependent_spec.prefix, self.site_packages_dir))
+ for lib in ['lib', 'lib64']:
+ env.prepend_path('PYTHONPATH', join_path(
+ dependent_spec.prefix, lib,
+ 'python' + str(self.version.up_to(2)), 'site-packages'))
def setup_dependent_package(self, module, dependent_spec):
"""Called before python modules' install() methods.