diff options
Diffstat (limited to 'lib/spack/spack/spec.py')
-rw-r--r-- | lib/spack/spack/spec.py | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/lib/spack/spack/spec.py b/lib/spack/spack/spec.py index 522485f57e..1605152450 100644 --- a/lib/spack/spack/spec.py +++ b/lib/spack/spack/spec.py @@ -679,6 +679,16 @@ class CompilerSpec(object): d = d["compiler"] return CompilerSpec(d["name"], vn.VersionList.from_dict(d)) + @property + def display_str(self): + """Equivalent to {compiler.name}{@compiler.version} for Specs, without extra + @= for readability.""" + if self.concrete: + return f"{self.name}@{self.version}" + elif self.versions != vn.any_version: + return f"{self.name}@{self.versions}" + return self.name + def __str__(self): out = self.name if self.versions and self.versions != vn.any_version: @@ -1730,14 +1740,14 @@ class Spec(object): def short_spec(self): """Returns a version of the spec with the dependencies hashed instead of completely enumerated.""" - spec_format = "{name}{@version}{%compiler}" + spec_format = "{name}{@version}{%compiler.name}{@compiler.version}" spec_format += "{variants}{arch=architecture}{/hash:7}" return self.format(spec_format) @property def cshort_spec(self): """Returns an auto-colorized version of ``self.short_spec``.""" - spec_format = "{name}{@version}{%compiler}" + spec_format = "{name}{@version}{%compiler.name}{@compiler.version}" spec_format += "{variants}{arch=architecture}{/hash:7}" return self.cformat(spec_format) |