diff options
author | Peter Scheibel <scheibel1@llnl.gov> | 2019-06-10 16:56:11 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-06-10 16:56:11 -0700 |
commit | 406c791b88a9402f91d44e546781585c5d88fc69 (patch) | |
tree | f29839bb65b8bc1410b0bfede63dd30196c23d2f /bin | |
parent | 35b1b81129b400ca670d05a9d8cadc34610dcaf8 (diff) | |
download | spack-406c791b88a9402f91d44e546781585c5d88fc69.tar.gz spack-406c791b88a9402f91d44e546781585c5d88fc69.tar.bz2 spack-406c791b88a9402f91d44e546781585c5d88fc69.tar.xz spack-406c791b88a9402f91d44e546781585c5d88fc69.zip |
Fix recursive module find for upstream dependencies (#11304)
"spack module tcl find -r <spec>" (and equivalents for other module
systems) was failing when a dependency was installed in an upstream
Spack instance. This updates the module index to handle locating
module files for upstream Spack installations (encapsulating the
logic in a new class called UpstreamModuleIndex); the updated index
handles the case where a Spack installation has multiple upstream
instances.
Note that if a module is not available locally but we are using the
local package, then we shouldn't use a module (i.e. if the package is
also installed upstream, and there is a module file for it, Spack
should not use that module). Likewise, if we are instance X using
upstreams Y and Z like X->Y->Z, and if we are using a package from
instance Y, then we should only use a module from instance Y. This
commit includes tests to check that this is handled properly.
Diffstat (limited to 'bin')
0 files changed, 0 insertions, 0 deletions