summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorMassimiliano Culpo <massimiliano.culpo@gmail.com>2021-10-06 19:28:12 +0200
committerGitHub <noreply@github.com>2021-10-06 10:28:12 -0700
commit319ae9254ea38dc33a8cdbb285aa9dd76a1133da (patch)
tree80d04b6d87880cf224ade8f0159bd29029e9cdf7 /var
parent232086c6af2301bcd329b8b857b67284cfb4f2b2 (diff)
downloadspack-319ae9254ea38dc33a8cdbb285aa9dd76a1133da.tar.gz
spack-319ae9254ea38dc33a8cdbb285aa9dd76a1133da.tar.bz2
spack-319ae9254ea38dc33a8cdbb285aa9dd76a1133da.tar.xz
spack-319ae9254ea38dc33a8cdbb285aa9dd76a1133da.zip
Remove the spack.architecture module (#25986)
The `spack.architecture` module contains an `Arch` class that is very similar to `spack.spec.ArchSpec` but points to platform, operating system and target objects rather than "names". There's a TODO in the class since 2016: https://github.com/spack/spack/blob/abb0f6e27c45758c37fd45d663214b86413fb4f6/lib/spack/spack/architecture.py#L70-L75 and this PR basically addresses that. Since there are just a few places where the `Arch` class was used, here we query the relevant platform objects where they are needed directly from `spack.platforms`. This permits to clean the code from vestigial logic. Modifications: - [x] Remove the `spack.architecture` module and replace its use by `spack.platforms` - [x] Remove unneeded tests
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin.mock/packages/multimethod/package.py4
-rw-r--r--var/spack/repos/builtin/packages/arm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gcc/package.py4
-rw-r--r--var/spack/repos/builtin/packages/sqlite/package.py8
-rw-r--r--var/spack/repos/builtin/packages/upcxx/package.py2
5 files changed, 9 insertions, 11 deletions
diff --git a/var/spack/repos/builtin.mock/packages/multimethod/package.py b/var/spack/repos/builtin.mock/packages/multimethod/package.py
index 8ae2bd1bbe..492ae0853f 100644
--- a/var/spack/repos/builtin.mock/packages/multimethod/package.py
+++ b/var/spack/repos/builtin.mock/packages/multimethod/package.py
@@ -5,7 +5,7 @@
from six import string_types
-import spack.architecture
+import spack.platforms
from spack import *
from spack.pkg.builtin.mock.multimethod_base import MultimethodBase
@@ -83,7 +83,7 @@ class Multimethod(MultimethodBase):
#
# Make sure we can switch methods on different target
#
- platform = spack.architecture.platform()
+ platform = spack.platforms.host()
targets = list(platform.targets.values())
if len(targets) > 1:
targets = targets[:-1]
diff --git a/var/spack/repos/builtin/packages/arm/package.py b/var/spack/repos/builtin/packages/arm/package.py
index c1d149d80f..fcb9530ec9 100644
--- a/var/spack/repos/builtin/packages/arm/package.py
+++ b/var/spack/repos/builtin/packages/arm/package.py
@@ -43,7 +43,7 @@ _versions = {
def get_os():
- spack_os = spack.architecture.platform().default_os
+ spack_os = spack.platforms.host().default_os
return _os_map.get(spack_os, 'RHEL-7')
diff --git a/var/spack/repos/builtin/packages/gcc/package.py b/var/spack/repos/builtin/packages/gcc/package.py
index 307cd75404..d8772b215e 100644
--- a/var/spack/repos/builtin/packages/gcc/package.py
+++ b/var/spack/repos/builtin/packages/gcc/package.py
@@ -10,7 +10,7 @@ import sys
import llnl.util.tty as tty
-import spack.architecture
+import spack.platforms
import spack.util.executable
from spack.operating_systems.mac_os import macos_sdk_path, macos_version
@@ -324,7 +324,7 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
continue
# Filter out links in favor of real executables on
# all systems but Cray
- host_platform = str(spack.architecture.platform())
+ host_platform = str(spack.platforms.host())
if os.path.islink(exe) and host_platform != 'cray':
continue
diff --git a/var/spack/repos/builtin/packages/sqlite/package.py b/var/spack/repos/builtin/packages/sqlite/package.py
index 53e24e1c48..7f7948a39e 100644
--- a/var/spack/repos/builtin/packages/sqlite/package.py
+++ b/var/spack/repos/builtin/packages/sqlite/package.py
@@ -2,12 +2,11 @@
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
import os
import re
from tempfile import NamedTemporaryFile
-from spack import architecture
+import spack.platforms
class Sqlite(AutotoolsPackage):
@@ -168,9 +167,8 @@ class Sqlite(AutotoolsPackage):
return find_libraries('libsqlite3', root=self.prefix.lib)
def get_arch(self):
- arch = architecture.Arch()
- arch.platform = architecture.platform()
- return str(arch.platform.target('default_target'))
+ host_platform = spack.platforms.host()
+ return str(host_platform.target('default_target'))
def configure_args(self):
args = []
diff --git a/var/spack/repos/builtin/packages/upcxx/package.py b/var/spack/repos/builtin/packages/upcxx/package.py
index 5b55de5c2f..2661be4283 100644
--- a/var/spack/repos/builtin/packages/upcxx/package.py
+++ b/var/spack/repos/builtin/packages/upcxx/package.py
@@ -7,7 +7,7 @@ from spack import *
def cross_detect():
- if spack.architecture.platform().name == 'cray':
+ if spack.platforms.host().name == 'cray':
if which('srun'):
return 'cray-aries-slurm'
if which('aprun'):