diff options
author | Todd Gamblin <tgamblin@llnl.gov> | 2015-10-29 00:01:30 -0700 |
---|---|---|
committer | Todd Gamblin <tgamblin@llnl.gov> | 2015-10-29 00:01:30 -0700 |
commit | fec6674597dfc4c48b489b484e281582c5b881fb (patch) | |
tree | aa5fb835633e6b877b55d8ead61953336c4c7296 | |
parent | dab230845d976ea048a02f27b06f2a791e911bac (diff) | |
parent | 6c9b10f73dc2c5bf2281d6434d3aaa5cf2ded056 (diff) | |
download | spack-fec6674597dfc4c48b489b484e281582c5b881fb.tar.gz spack-fec6674597dfc4c48b489b484e281582c5b881fb.tar.bz2 spack-fec6674597dfc4c48b489b484e281582c5b881fb.tar.xz spack-fec6674597dfc4c48b489b484e281582c5b881fb.zip |
Merge pull request #139 from mathstuf/use-uname-for-arch
architecture: use uname if available
-rw-r--r-- | lib/spack/spack/architecture.py | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/lib/spack/spack/architecture.py b/lib/spack/spack/architecture.py index 0c4b605e91..05ac5d6f35 100644 --- a/lib/spack/spack/architecture.py +++ b/lib/spack/spack/architecture.py @@ -23,13 +23,12 @@ # Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ############################################################################## import os -import platform as py_platform +import subprocess from llnl.util.lang import memoized import spack import spack.error as serr -from spack.version import Version class InvalidSysTypeError(serr.SpackError): @@ -59,22 +58,23 @@ def get_sys_type_from_environment(): return os.environ.get('SYS_TYPE') -def get_mac_sys_type(): - """Return a Mac OS SYS_TYPE or None if this isn't a mac.""" - mac_ver = py_platform.mac_ver()[0] - if not mac_ver: +def get_sys_type_from_uname(): + """Return the architecture from uname.""" + try: + arch_proc = subprocess.Popen(['uname', '-i'], + stdout=subprocess.PIPE) + arch, _ = arch_proc.communicate() + return arch.strip() + except: return None - return "macosx_%s_%s" % ( - Version(mac_ver).up_to(2), py_platform.machine()) - @memoized def sys_type(): """Returns a SysType for the current machine.""" methods = [get_sys_type_from_spack_globals, get_sys_type_from_environment, - get_mac_sys_type] + get_sys_type_from_uname] # search for a method that doesn't return None sys_type = None |