summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorTodd Gamblin <tgamblin@llnl.gov>2015-02-15 01:58:35 -0800
committerTodd Gamblin <tgamblin@llnl.gov>2015-02-15 01:58:35 -0800
commitc0c08799249fb56c281f62b3659e7cf7d7080188 (patch)
tree1df0dc57d97d85b947356c1b0cab7da6f591a902 /var
parent82dc935a50874e899380f32a9a35b7cc4f76df87 (diff)
downloadspack-c0c08799249fb56c281f62b3659e7cf7d7080188.tar.gz
spack-c0c08799249fb56c281f62b3659e7cf7d7080188.tar.bz2
spack-c0c08799249fb56c281f62b3659e7cf7d7080188.tar.xz
spack-c0c08799249fb56c281f62b3659e7cf7d7080188.zip
Better extension activation/deactivation
Diffstat (limited to 'var')
-rw-r--r--var/spack/packages/python/package.py16
1 files changed, 8 insertions, 8 deletions
diff --git a/var/spack/packages/python/package.py b/var/spack/packages/python/package.py
index 4b3b31eb6b..de7f412b52 100644
--- a/var/spack/packages/python/package.py
+++ b/var/spack/packages/python/package.py
@@ -98,9 +98,9 @@ class Python(Package):
return ignore
- def write_easy_install_pth(self, extensions):
+ def write_easy_install_pth(self, exts):
paths = []
- for ext in extensions:
+ for ext in sorted(exts.values()):
ext_site_packages = os.path.join(ext.prefix, self.site_packages_dir)
easy_pth = "%s/easy-install.pth" % ext_site_packages
@@ -139,15 +139,15 @@ class Python(Package):
args.update(ignore=self.python_ignore(ext_pkg, args))
super(Python, self).activate(ext_pkg, **args)
- extensions = set(spack.install_layout.get_extensions(self.spec))
- extensions.add(ext_pkg.spec)
- self.write_easy_install_pth(extensions)
+ exts = spack.install_layout.extension_map(self.spec)
+ exts[ext_pkg.name] = ext_pkg.spec
+ self.write_easy_install_pth(exts)
def deactivate(self, ext_pkg, **args):
args.update(ignore=self.python_ignore(ext_pkg, args))
super(Python, self).deactivate(ext_pkg, **args)
- extensions = set(spack.install_layout.get_extensions(self.spec))
- extensions.remove(ext_pkg.spec)
- self.write_easy_install_pth(extensions)
+ exts = spack.install_layout.extension_map(self.spec)
+ del exts[ext_pkg.name]
+ self.write_easy_install_pth(exts)