summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorGregory Becker <becker33@llnl.gov>2016-01-06 13:00:22 -0800
committerGregory Becker <becker33@llnl.gov>2016-01-06 13:00:22 -0800
commit51bd91edc0679d21c26df8af17eaafb2a0ca6d56 (patch)
treeaae7277b75b7fbf48049fe2ce13fa082ff7a9f6e /lib
parent61b03b72b0fb1aa5c4ddbaff8079d9c0258efb76 (diff)
downloadspack-51bd91edc0679d21c26df8af17eaafb2a0ca6d56.tar.gz
spack-51bd91edc0679d21c26df8af17eaafb2a0ca6d56.tar.bz2
spack-51bd91edc0679d21c26df8af17eaafb2a0ca6d56.tar.xz
spack-51bd91edc0679d21c26df8af17eaafb2a0ca6d56.zip
made the compiler strategy more easily controllable
Diffstat (limited to 'lib')
-rw-r--r--lib/spack/spack/architecture.py15
-rw-r--r--lib/spack/spack/architectures/bgq.py4
-rw-r--r--lib/spack/spack/architectures/cray.py6
-rw-r--r--lib/spack/spack/architectures/darwin.py2
-rw-r--r--lib/spack/spack/architectures/linux.py2
-rw-r--r--lib/spack/spack/build_environment.py2
6 files changed, 16 insertions, 15 deletions
diff --git a/lib/spack/spack/architecture.py b/lib/spack/spack/architecture.py
index 1b4b7730b2..81aac6cc33 100644
--- a/lib/spack/spack/architecture.py
+++ b/lib/spack/spack/architecture.py
@@ -55,19 +55,20 @@ class Target(object):
they came from using the set_architecture method. Targets will have compiler finding strategies
"""
- def __init__(self,name, module_name=None):
+ def __init__(self, name, compiler_strategy, module_name=None):
self.name = name # case of cray "ivybridge" but if it's x86_64
+ self.compiler_strategy = compiler_strategy
self.module_name = module_name # craype-ivybridge
def set_architecture(self, architecture): # Target should get the architecture class.
self.architecture = architecture
- @property
- def compiler_strategy(self):
- if self.module_name: # If there is a module_name given then use MODULES
- return "MODULES"
- else:
- return "PATH"
+# @property
+# def compiler_strategy(self):
+# if self.module_name: # If there is a module_name given then use MODULES
+# return "MODULES"
+# else:
+# return "PATH"
def to_dict(self):
d = {}
diff --git a/lib/spack/spack/architectures/bgq.py b/lib/spack/spack/architectures/bgq.py
index 85487626f1..3ac5a59546 100644
--- a/lib/spack/spack/architectures/bgq.py
+++ b/lib/spack/spack/architectures/bgq.py
@@ -10,8 +10,8 @@ class Bgq(Architecture):
def __init__(self):
super(Bgq, self).__init__('cray')
- self.add_target(self.front_end, Target(self.front_end))
- self.add_target(self.back_end, Target(self.back_end))
+ self.add_target(self.front_end, Target(self.front_end, 'PATH'))
+ self.add_target(self.back_end, Target(self.back_end, 'PATH'))
@classmethod
def detect(self):
diff --git a/lib/spack/spack/architectures/cray.py b/lib/spack/spack/architectures/cray.py
index dac3943fb7..f109b48867 100644
--- a/lib/spack/spack/architectures/cray.py
+++ b/lib/spack/spack/architectures/cray.py
@@ -26,10 +26,10 @@ class Cray(Architecture):
# Could switch to use modules and fe targets for front end
# Currently using compilers by path for front end.
- self.add_target(self.front_end, Target(self.front_end))
+ self.add_target(self.front_end, Target(self.front_end, 'PATH'))
# Back End compiler needs the proper target module loaded.
- self.add_target(self.back_end, Target(self.front_end,'craype-'+ self.back_end))
- self.add_target(self.default, Target(self.default,'craype-' + self.default))
+# self.add_target(self.back_end, Target(self.front_end, 'MODULES', 'craype-'+ self.back_end))
+ self.add_target(self.default, Target(self.default, 'MODULES', 'craype-' + self.default))
# This is kludgy and the order matters when the targets are all haswell
# This is because the last one overwrites the others when they have the
# same name.
diff --git a/lib/spack/spack/architectures/darwin.py b/lib/spack/spack/architectures/darwin.py
index 2f0d34c38d..30fbde39bb 100644
--- a/lib/spack/spack/architectures/darwin.py
+++ b/lib/spack/spack/architectures/darwin.py
@@ -9,7 +9,7 @@ class Darwin(Architecture):
def __init__(self):
super(Darwin, self).__init__('darwin')
- self.add_target(self.default, Target(self.default))
+ self.add_target(self.default, Target(self.default, 'PATH'))
@classmethod
def detect(self):
diff --git a/lib/spack/spack/architectures/linux.py b/lib/spack/spack/architectures/linux.py
index d63cf9179a..bb3089ebf6 100644
--- a/lib/spack/spack/architectures/linux.py
+++ b/lib/spack/spack/architectures/linux.py
@@ -9,7 +9,7 @@ class Linux(Architecture):
def __init__(self):
super(Linux, self).__init__('linux')
- self.add_target(self.default, Target(self.default))
+ self.add_target(self.default, Target(self.default, 'PATH'))
@classmethod
def detect(self):
diff --git a/lib/spack/spack/build_environment.py b/lib/spack/spack/build_environment.py
index 781039e073..fc71ae0331 100644
--- a/lib/spack/spack/build_environment.py
+++ b/lib/spack/spack/build_environment.py
@@ -226,7 +226,7 @@ def set_build_environment_variables(pkg):
pkg_config_dirs.append(pcdir)
path_put_first("PKG_CONFIG_PATH", pkg_config_dirs)
- if pkg.spec.architecture.compiler_strategy.lower() == 'module':
+ if pkg.spec.architecture.module_name:
load_module(pkg.spec.architecture.module_name)
def set_module_variables_for_package(pkg):