summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorMassimiliano Culpo <massimiliano.culpo@googlemail.com>2020-12-07 14:45:42 -0800
committerTodd Gamblin <tgamblin@llnl.gov>2020-12-07 17:18:33 -0800
commit98c2627132f208289b556e67f45938c3b3749414 (patch)
tree44d37ffe9602f39b3c597db677021ba342d30d5e /lib
parent1343a815c02421fb94ddb2b80af76d35760bf4c4 (diff)
downloadspack-98c2627132f208289b556e67f45938c3b3749414.tar.gz
spack-98c2627132f208289b556e67f45938c3b3749414.tar.bz2
spack-98c2627132f208289b556e67f45938c3b3749414.tar.xz
spack-98c2627132f208289b556e67f45938c3b3749414.zip
bugfix: work around issue handling packages not in any repo
Diffstat (limited to 'lib')
-rw-r--r--lib/spack/spack/solver/asp.py4
-rw-r--r--lib/spack/spack/util/mock_package.py3
2 files changed, 7 insertions, 0 deletions
diff --git a/lib/spack/spack/solver/asp.py b/lib/spack/spack/solver/asp.py
index d5f288b3b6..7d0cd62410 100644
--- a/lib/spack/spack/solver/asp.py
+++ b/lib/spack/spack/solver/asp.py
@@ -1028,6 +1028,10 @@ class SpackSolverSetup(object):
if pkg_name == 'all':
continue
+ # This package does not appear in any repository
+ if pkg_name not in spack.repo.path:
+ continue
+
if 'externals' not in data:
self.gen.fact(fn.external(pkg_name).symbol(positive=False))
diff --git a/lib/spack/spack/util/mock_package.py b/lib/spack/spack/util/mock_package.py
index 4751f5af7e..5286b50464 100644
--- a/lib/spack/spack/util/mock_package.py
+++ b/lib/spack/spack/util/mock_package.py
@@ -102,6 +102,9 @@ class MockPackageMultiRepo(object):
Repo = collections.namedtuple('Repo', ['namespace'])
return Repo('mockrepo')
+ def __contains__(self, item):
+ return item in self.spec_to_pkg
+
def add_package(self, name, dependencies=None, dependency_types=None,
conditions=None):
"""Factory method for creating mock packages.