Fix #608: broken numpy build.

- Failed to catch all instances of modify_module when it was renamed
  to setup_dependent_package.

- Refactored remaining modify_module calls.

- Also modified Python's setup_dependent_package slightly: only
  creates empty site-packages directory for Python extensions now, not
  for all dependents.
This commit is contained in:
Todd Gamblin
2016-03-23 00:36:32 -07:00
parent 2d69f386d0
commit c4134ee71e
4 changed files with 14 additions and 11 deletions

View File

@@ -160,8 +160,8 @@ def write(self):
# package-specific modifications
for extendee in self.pkg.extendees:
extendee_spec = self.spec[extendee]
extendee_spec.package.modify_module(
self.pkg.module, extendee_spec, self.spec)
extendee_spec.package.setup_dependent_package(
self.pkg.module, self.spec)
# Package-specific environment modifications
spack_env = EnvironmentModifications()

View File

@@ -150,7 +150,9 @@ def spec_has_preferred_provider(self, pkgname, provider_str):
def version_compare(self, pkgname, a, b):
"""Return less-than-0, 0, or greater than 0 if version a of pkgname is
respecively less-than, equal-to, or greater-than version b of pkgname.
One version is less-than another if it is preferred over the other."""
Versions marked 'preferred=True' in package.py take precedence over any
versions not marked preferred.
"""
return self._spec_compare(pkgname, 'version', a, b, True, None)