diff options
author | Massimiliano Culpo <massimiliano.culpo@gmail.com> | 2024-11-14 09:17:41 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-14 09:17:41 +0100 |
commit | c0196cde398babcb4d412ac03dc80f946646c921 (patch) | |
tree | d6ec6bda8ed1da1c39d578d54384da6886e99f7e /lib | |
parent | d091172d67f94ee8e7b99c0d3b95dacb0d200e03 (diff) | |
download | spack-c0196cde398babcb4d412ac03dc80f946646c921.tar.gz spack-c0196cde398babcb4d412ac03dc80f946646c921.tar.bz2 spack-c0196cde398babcb4d412ac03dc80f946646c921.tar.xz spack-c0196cde398babcb4d412ac03dc80f946646c921.zip |
Remove support for PGI compilers (#47195)
Diffstat (limited to 'lib')
-rw-r--r-- | lib/spack/docs/environments.rst | 4 | ||||
-rw-r--r-- | lib/spack/docs/getting_started.rst | 63 | ||||
-rw-r--r-- | lib/spack/docs/packaging_guide.rst | 74 | ||||
-rw-r--r-- | lib/spack/spack/build_systems/cuda.py | 10 | ||||
-rw-r--r-- | lib/spack/spack/cmd/help.py | 4 | ||||
-rw-r--r-- | lib/spack/spack/compilers/clang.py | 2 | ||||
-rw-r--r-- | lib/spack/spack/compilers/pgi.py | 77 | ||||
-rw-r--r-- | lib/spack/spack/install_test.py | 2 | ||||
-rw-r--r-- | lib/spack/spack/package_base.py | 2 | ||||
-rw-r--r-- | lib/spack/spack/test/compilers/basics.py | 16 | ||||
-rw-r--r-- | lib/spack/spack/test/data/compiler_verbose_output/pgcc-16.3.txt | 11 | ||||
-rw-r--r-- | lib/spack/spack/test/link_paths.py | 11 | ||||
-rw-r--r-- | lib/spack/spack/test/spec_semantics.py | 12 |
13 files changed, 28 insertions, 260 deletions
diff --git a/lib/spack/docs/environments.rst b/lib/spack/docs/environments.rst index 2a9bb5c3f2..988dd71ba8 100644 --- a/lib/spack/docs/environments.rst +++ b/lib/spack/docs/environments.rst @@ -1042,7 +1042,7 @@ file snippet we define a view named ``mpis``, rooted at ``/path/to/view`` in which all projections use the package name, version, and compiler name to determine the path for a given package. This view selects all packages that depend on MPI, and -excludes those built with the PGI compiler at version 18.5. +excludes those built with the GCC compiler at version 18.5. The root specs with their (transitive) link and run type dependencies will be put in the view due to the ``link: all`` option, and the files in the view will be symlinks to the spack install @@ -1056,7 +1056,7 @@ directories. mpis: root: /path/to/view select: [^mpi] - exclude: ['%pgi@18.5'] + exclude: ['%gcc@18.5'] projections: all: '{name}/{version}-{compiler.name}' link: all diff --git a/lib/spack/docs/getting_started.rst b/lib/spack/docs/getting_started.rst index 6654f50e77..418e84b5cd 100644 --- a/lib/spack/docs/getting_started.rst +++ b/lib/spack/docs/getting_started.rst @@ -283,10 +283,6 @@ compilers`` or ``spack compiler list``: intel@14.0.1 intel@13.0.1 intel@12.1.2 intel@10.1 -- clang ------------------------------------------------------- clang@3.4 clang@3.3 clang@3.2 clang@3.1 - -- pgi --------------------------------------------------------- - pgi@14.3-0 pgi@13.2-0 pgi@12.1-0 pgi@10.9-0 pgi@8.0-1 - pgi@13.10-0 pgi@13.1-1 pgi@11.10-0 pgi@10.2-0 pgi@7.1-3 - pgi@13.6-0 pgi@12.8-0 pgi@11.1-0 pgi@9.0-4 pgi@7.0-6 Any of these compilers can be used to build Spack packages. More on how this is done is in :ref:`sec-specs`. @@ -807,65 +803,6 @@ flags to the ``icc`` command: ^^^ -PGI -^^^ - -PGI comes with two sets of compilers for C++ and Fortran, -distinguishable by their names. "Old" compilers: - -.. code-block:: yaml - - cc: /soft/pgi/15.10/linux86-64/15.10/bin/pgcc - cxx: /soft/pgi/15.10/linux86-64/15.10/bin/pgCC - f77: /soft/pgi/15.10/linux86-64/15.10/bin/pgf77 - fc: /soft/pgi/15.10/linux86-64/15.10/bin/pgf90 - -"New" compilers: - -.. code-block:: yaml - - cc: /soft/pgi/15.10/linux86-64/15.10/bin/pgcc - cxx: /soft/pgi/15.10/linux86-64/15.10/bin/pgc++ - f77: /soft/pgi/15.10/linux86-64/15.10/bin/pgfortran - fc: /soft/pgi/15.10/linux86-64/15.10/bin/pgfortran - -Older installations of PGI contains just the old compilers; whereas -newer installations contain the old and the new. The new compiler is -considered preferable, as some packages -(``hdf``) will not build with the old compiler. - -When auto-detecting a PGI compiler, there are cases where Spack will -find the old compilers, when you really want it to find the new -compilers. It is best to check this ``compilers.yaml``; and if the old -compilers are being used, change ``pgf77`` and ``pgf90`` to -``pgfortran``. - -Other issues: - -* There are reports that some packages will not build with PGI, - including ``libpciaccess`` and ``openssl``. A workaround is to - build these packages with another compiler and then use them as - dependencies for PGI-build packages. For example: - - .. code-block:: console - - $ spack install openmpi%pgi ^libpciaccess%gcc - - -* PGI requires a license to use; see :ref:`licensed-compilers` for more - information on installation. - -.. note:: - - It is believed the problem with HDF 4 is that everything is - compiled with the ``F77`` compiler, but at some point some Fortran - 90 code slipped in there. So compilers that can handle both FORTRAN - 77 and Fortran 90 (``gfortran``, ``pgfortran``, etc) are fine. But - compilers specific to one or the other (``pgf77``, ``pgf90``) won't - work. - - -^^^ NAG ^^^ diff --git a/lib/spack/docs/packaging_guide.rst b/lib/spack/docs/packaging_guide.rst index 87fb184c65..9b3c2829f7 100644 --- a/lib/spack/docs/packaging_guide.rst +++ b/lib/spack/docs/packaging_guide.rst @@ -1928,71 +1928,29 @@ to the empty list. String. A URL pointing to license setup instructions for the software. Defaults to the empty string. -For example, let's take a look at the package for the PGI compilers. +For example, let's take a look at the Arm Forge package. .. code-block:: python # Licensing license_required = True - license_comment = "#" - license_files = ["license.dat"] - license_vars = ["PGROUPD_LICENSE_FILE", "LM_LICENSE_FILE"] - license_url = "http://www.pgroup.com/doc/pgiinstall.pdf" - -As you can see, PGI requires a license. Its license manager, FlexNet, uses -the ``#`` symbol to denote a comment. It expects the license file to be -named ``license.dat`` and to be located directly in the installation prefix. -If you would like the installation file to be located elsewhere, simply set -``PGROUPD_LICENSE_FILE`` or ``LM_LICENSE_FILE`` after installation. For -further instructions on installation and licensing, see the URL provided. - -Let's walk through a sample PGI installation to see exactly what Spack is -and isn't capable of. Since PGI does not provide a download URL, it must -be downloaded manually. It can either be added to a mirror or located in -the current directory when ``spack install pgi`` is run. See :ref:`mirrors` -for instructions on setting up a mirror. - -After running ``spack install pgi``, the first thing that will happen is -Spack will create a global license file located at -``$SPACK_ROOT/etc/spack/licenses/pgi/license.dat``. It will then open up the -file using :ref:`your favorite editor <controlling-the-editor>`. It will look like -this: - -.. code-block:: sh - - # A license is required to use pgi. - # - # The recommended solution is to store your license key in this global - # license file. After installation, the following symlink(s) will be - # added to point to this file (relative to the installation prefix): - # - # license.dat - # - # Alternatively, use one of the following environment variable(s): - # - # PGROUPD_LICENSE_FILE - # LM_LICENSE_FILE - # - # If you choose to store your license in a non-standard location, you may - # set one of these variable(s) to the full pathname to the license file, or - # port@host if you store your license keys on a dedicated license server. - # You will likely want to set this variable in a module file so that it - # gets loaded every time someone tries to use pgi. - # - # For further information on how to acquire a license, please refer to: - # - # http://www.pgroup.com/doc/pgiinstall.pdf - # - # You may enter your license below. - -You can add your license directly to this file, or tell FlexNet to use a -license stored on a separate license server. Here is an example that -points to a license server called licman1: + license_comment = "#" + license_files = ["licences/Licence"] + license_vars = [ + "ALLINEA_LICENSE_DIR", + "ALLINEA_LICENCE_DIR", + "ALLINEA_LICENSE_FILE", + "ALLINEA_LICENCE_FILE", + ] + license_url = "https://developer.arm.com/documentation/101169/latest/Use-Arm-Licence-Server" -.. code-block:: none +Arm Forge requires a license. Its license manager uses the ``#`` symbol to denote a comment. +It expects the license file to be named ``License`` and to be located in a ``licenses`` directory +in the installation prefix. - SERVER licman1.mcs.anl.gov 00163eb7fba5 27200 - USE_SERVER +If you would like the installation file to be located elsewhere, simply set ``ALLINEA_LICENSE_DIR`` or +one of the other license variables after installation. For further instructions on installation and +licensing, see the URL provided. If your package requires the license to install, you can reference the location of this global license using ``self.global_license_file``. diff --git a/lib/spack/spack/build_systems/cuda.py b/lib/spack/spack/build_systems/cuda.py index 5bfe0cfcad..d25c63ed19 100644 --- a/lib/spack/spack/build_systems/cuda.py +++ b/lib/spack/spack/build_systems/cuda.py @@ -180,13 +180,6 @@ class CudaPackage(PackageBase): conflicts("%gcc@7:", when="+cuda ^cuda@:9.1 target=x86_64:") conflicts("%gcc@8:", when="+cuda ^cuda@:10.0.130 target=x86_64:") conflicts("%gcc@9:", when="+cuda ^cuda@:10.2.89 target=x86_64:") - conflicts("%pgi@:14.8", when="+cuda ^cuda@:7.0.27 target=x86_64:") - conflicts("%pgi@:15.3,15.5:", when="+cuda ^cuda@7.5 target=x86_64:") - conflicts("%pgi@:16.2,16.0:16.3", when="+cuda ^cuda@8 target=x86_64:") - conflicts("%pgi@:15,18:", when="+cuda ^cuda@9.0:9.1 target=x86_64:") - conflicts("%pgi@:16,19:", when="+cuda ^cuda@9.2.88:10.0 target=x86_64:") - conflicts("%pgi@:17,20:", when="+cuda ^cuda@10.1.105:10.2.89 target=x86_64:") - conflicts("%pgi@:17,21:", when="+cuda ^cuda@11.0.2:11.1.0 target=x86_64:") conflicts("%clang@:3.4", when="+cuda ^cuda@:7.5 target=x86_64:") conflicts("%clang@:3.7,4:", when="+cuda ^cuda@8.0:9.0 target=x86_64:") conflicts("%clang@:3.7,4.1:", when="+cuda ^cuda@9.1 target=x86_64:") @@ -212,9 +205,6 @@ class CudaPackage(PackageBase): conflicts("%gcc@8:", when="+cuda ^cuda@:10.0.130 target=ppc64le:") conflicts("%gcc@9:", when="+cuda ^cuda@:10.1.243 target=ppc64le:") # officially, CUDA 11.0.2 only supports the system GCC 8.3 on ppc64le - conflicts("%pgi", when="+cuda ^cuda@:8 target=ppc64le:") - conflicts("%pgi@:16", when="+cuda ^cuda@:9.1.185 target=ppc64le:") - conflicts("%pgi@:17", when="+cuda ^cuda@:10 target=ppc64le:") conflicts("%clang@4:", when="+cuda ^cuda@:9.0.176 target=ppc64le:") conflicts("%clang@5:", when="+cuda ^cuda@:9.1 target=ppc64le:") conflicts("%clang@6:", when="+cuda ^cuda@:9.2 target=ppc64le:") diff --git a/lib/spack/spack/cmd/help.py b/lib/spack/spack/cmd/help.py index 9a4023c87a..1a38d55cb6 100644 --- a/lib/spack/spack/cmd/help.py +++ b/lib/spack/spack/cmd/help.py @@ -78,8 +78,8 @@ spec expression syntax: boxlib @B{dim=2} boxlib built for 2 dimensions libdwarf @g{%intel} ^libelf@g{%gcc} libdwarf, built with intel compiler, linked to libelf built with gcc - mvapich2 @g{%pgi} @B{fabrics=psm,mrail,sock} - mvapich2, built with pgi compiler, with support for multiple fabrics + mvapich2 @g{%gcc} @B{fabrics=psm,mrail,sock} + mvapich2, built with gcc compiler, with support for multiple fabrics """ diff --git a/lib/spack/spack/compilers/clang.py b/lib/spack/spack/compilers/clang.py index 98e00aa270..f4a2708164 100644 --- a/lib/spack/spack/compilers/clang.py +++ b/lib/spack/spack/compilers/clang.py @@ -16,7 +16,6 @@ f77_mapping = [ ("gfortran", os.path.join("clang", "gfortran")), ("xlf_r", os.path.join("xl_r", "xlf_r")), ("xlf", os.path.join("xl", "xlf")), - ("pgfortran", os.path.join("pgi", "pgfortran")), ("ifort", os.path.join("intel", "ifort")), ] @@ -25,7 +24,6 @@ fc_mapping = [ ("gfortran", os.path.join("clang", "gfortran")), ("xlf90_r", os.path.join("xl_r", "xlf90_r")), ("xlf90", os.path.join("xl", "xlf90")), - ("pgfortran", os.path.join("pgi", "pgfortran")), ("ifort", os.path.join("intel", "ifort")), ] diff --git a/lib/spack/spack/compilers/pgi.py b/lib/spack/spack/compilers/pgi.py deleted file mode 100644 index bb7f290be3..0000000000 --- a/lib/spack/spack/compilers/pgi.py +++ /dev/null @@ -1,77 +0,0 @@ -# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other -# Spack Project Developers. See the top-level COPYRIGHT file for details. -# -# SPDX-License-Identifier: (Apache-2.0 OR MIT) - -import os - -from spack.compiler import Compiler, UnsupportedCompilerFlag -from spack.version import Version - - -class Pgi(Compiler): - # Named wrapper links within build_env_path - link_paths = { - "cc": os.path.join("pgi", "pgcc"), - "cxx": os.path.join("pgi", "pgc++"), - "f77": os.path.join("pgi", "pgfortran"), - "fc": os.path.join("pgi", "pgfortran"), - } - - version_argument = "-V" - ignore_version_errors = [2] # `pgcc -V` on PowerPC annoyingly returns 2 - version_regex = r"pg[^ ]* ([0-9.]+)-[0-9]+ (LLVM )?[^ ]+ target on " - - @property - def verbose_flag(self): - return "-v" - - @property - def debug_flags(self): - return ["-g", "-gopt"] - - @property - def opt_flags(self): - return ["-O", "-O0", "-O1", "-O2", "-O3", "-O4"] - - @property - def openmp_flag(self): - return "-mp" - - @property - def cxx11_flag(self): - return "-std=c++11" - - @property - def cc_pic_flag(self): - return "-fpic" - - @property - def cxx_pic_flag(self): - return "-fpic" - - @property - def f77_pic_flag(self): - return "-fpic" - - @property - def fc_pic_flag(self): - return "-fpic" - - required_libs = ["libpgc", "libpgf90"] - - @property - def c99_flag(self): - if self.real_version >= Version("12.10"): - return "-c99" - raise UnsupportedCompilerFlag(self, "the C99 standard", "c99_flag", "< 12.10") - - @property - def c11_flag(self): - if self.real_version >= Version("15.3"): - return "-c11" - raise UnsupportedCompilerFlag(self, "the C11 standard", "c11_flag", "< 15.3") - - @property - def stdcxx_libs(self): - return ("-pgc++libs",) diff --git a/lib/spack/spack/install_test.py b/lib/spack/spack/install_test.py index f21f4f8cde..d1c5197598 100644 --- a/lib/spack/spack/install_test.py +++ b/lib/spack/spack/install_test.py @@ -764,7 +764,7 @@ def virtuals(pkg): # hack for compilers that are not dependencies (yet) # TODO: this all eventually goes away - c_names = ("gcc", "intel", "intel-parallel-studio", "pgi") + c_names = ("gcc", "intel", "intel-parallel-studio") if pkg.name in c_names: v_names.extend(["c", "cxx", "fortran"]) if pkg.spec.satisfies("llvm+clang"): diff --git a/lib/spack/spack/package_base.py b/lib/spack/spack/package_base.py index 943c4eb0a4..5410f72ab1 100644 --- a/lib/spack/spack/package_base.py +++ b/lib/spack/spack/package_base.py @@ -1016,7 +1016,7 @@ class PackageBase(WindowsRPath, PackageViewMixin, RedistributionMixin, metaclass * ``"none"``: filter out all ``-Werror*`` flags. * ``None``: respect the user's configuration (``"none"`` by default). """ - if self.spec.satisfies("%nvhpc@:23.3") or self.spec.satisfies("%pgi"): + if self.spec.satisfies("%nvhpc@:23.3"): # Filtering works by replacing -Werror with -Wno-error, but older nvhpc and # PGI do not understand -Wno-error, so we disable filtering. return "all" diff --git a/lib/spack/spack/test/compilers/basics.py b/lib/spack/spack/test/compilers/basics.py index 75e79d497c..14567745fa 100644 --- a/lib/spack/spack/test/compilers/basics.py +++ b/lib/spack/spack/test/compilers/basics.py @@ -537,22 +537,6 @@ def test_nvhpc_flags(): supported_flag_test("stdcxx_libs", ("-c++libs",), "nvhpc@=20.9") -def test_pgi_flags(): - supported_flag_test("openmp_flag", "-mp", "pgi@=1.0") - supported_flag_test("cxx11_flag", "-std=c++11", "pgi@=1.0") - unsupported_flag_test("c99_flag", "pgi@=12.9") - supported_flag_test("c99_flag", "-c99", "pgi@=12.10") - unsupported_flag_test("c11_flag", "pgi@=15.2") - supported_flag_test("c11_flag", "-c11", "pgi@=15.3") - supported_flag_test("cc_pic_flag", "-fpic", "pgi@=1.0") - supported_flag_test("cxx_pic_flag", "-fpic", "pgi@=1.0") - supported_flag_test("f77_pic_flag", "-fpic", "pgi@=1.0") - supported_flag_test("fc_pic_flag", "-fpic", "pgi@=1.0") - supported_flag_test("stdcxx_libs", ("-pgc++libs",), "pgi@=1.0") - supported_flag_test("debug_flags", ["-g", "-gopt"], "pgi@=1.0") - supported_flag_test("opt_flags", ["-O", "-O0", "-O1", "-O2", "-O3", "-O4"], "pgi@=1.0") - - def test_xl_flags(): supported_flag_test("openmp_flag", "-qsmp=omp", "xl@=1.0") unsupported_flag_test("cxx11_flag", "xl@=13.0") diff --git a/lib/spack/spack/test/data/compiler_verbose_output/pgcc-16.3.txt b/lib/spack/spack/test/data/compiler_verbose_output/pgcc-16.3.txt deleted file mode 100644 index 9041322350..0000000000 --- a/lib/spack/spack/test/data/compiler_verbose_output/pgcc-16.3.txt +++ /dev/null @@ -1,11 +0,0 @@ -Export PGI=/usr/tce/packages/pgi/pgi-16.3 - -/usr/tce/packages/pgi/pgi-16.3/linux86-64/16.3/bin/pgc test.c -opt 1 -x 119 0xa10000 -x 122 0x40 -x 123 0x1000 -x 127 4 -x 127 17 -x 19 0x400000 -x 28 0x40000 -x 120 0x10000000 -x 70 0x8000 -x 122 1 -x 125 0x20000 -quad -x 59 4 -tp haswell -x 120 0x1000 -astype 0 -stdinc /usr/tce/packages/pgi/pgi-16.3/linux86-64/16.3/include-gcc48:/usr/tce/packages/pgi/pgi-16.3/linux86-64/16.3/include:/usr/lib/gcc/x86_64-redhat-linux/4.8.5/include:/usr/local/include:/usr/include -def unix -def __unix -def __unix__ -def linux -def __linux -def __linux__ -def __NO_MATH_INLINES -def __LP64__ -def __x86_64 -def __x86_64__ -def __LONG_MAX__=9223372036854775807L -def '__SIZE_TYPE__=unsigned long int' -def '__PTRDIFF_TYPE__=long int' -def __THROW= -def __extension__= -def __amd_64__amd64__ -def __k8 -def __k8__ -def __SSE__ -def __MMX__ -def __SSE2__ -def __SSE3__ -def __SSSE3__ -def __STDC_HOSTED__ -predicate '#machine(x86_64) #lint(off) #system(posix) #cpu(x86_64)' -cmdline '+pgcc test.c -v -o test.o' -x 123 0x80000000 -x 123 4 -x 2 0x400 -x 119 0x20 -def __pgnu_vsn=40805 -x 120 0x200000 -x 70 0x40000000 -y 163 0xc0000000 -x 189 0x10 -y 189 0x4000000 -asm /var/tmp/gamblin2/pgccL0MCVCOQsq6l.s -PGC/x86-64 Linux 16.3-0: compilation successful - -/usr/bin/as /var/tmp/gamblin2/pgccL0MCVCOQsq6l.s -o /var/tmp/gamblin2/pgcc10MCFxmYXjgo.o - -/usr/tce/bin/ld /usr/lib64/crt1.o /usr/lib64/crti.o /usr/tce/packages/pgi/pgi-16.3/linux86-64/16.3/lib/trace_init.o /usr/lib/gcc/x86_64-redhat-linux/4.8.5/crtbegin.o /usr/tce/packages/pgi/pgi-16.3/linux86-64/16.3/lib/initmp.o --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 /usr/tce/packages/pgi/pgi-16.3/linux86-64/16.3/lib/pgi.ld -L/usr/tce/packages/pgi/pgi-16.3/linux86-64/16.3/lib -L/usr/lib64 -L/usr/lib/gcc/x86_64-redhat-linux/4.8.5 /var/tmp/gamblin2/pgcc10MCFxmYXjgo.o -rpath /usr/tce/packages/pgi/pgi-16.3/linux86-64/16.3/lib -o test.o -lpgmp -lnuma -lpthread -lnspgc -lpgc -lm -lgcc -lc -lgcc /usr/lib/gcc/x86_64-redhat-linux/4.8.5/crtend.o /usr/lib64/crtn.o -Unlinking /var/tmp/gamblin2/pgccL0MCVCOQsq6l.s -Unlinking /var/tmp/gamblin2/pgccn0MCNcmgIbh8.ll -Unlinking /var/tmp/gamblin2/pgcc10MCFxmYXjgo.o diff --git a/lib/spack/spack/test/link_paths.py b/lib/spack/spack/test/link_paths.py index 2d62c59de6..145203c1ad 100644 --- a/lib/spack/spack/test/link_paths.py +++ b/lib/spack/spack/test/link_paths.py @@ -69,17 +69,6 @@ def test_icc16_link_paths(): ) -def test_pgi_link_paths(): - check_link_paths( - "pgcc-16.3.txt", - [ - os.path.join( - root, "usr", "tce", "packages", "pgi", "pgi-16.3", "linux86-64", "16.3", "lib" - ) - ], - ) - - def test_gcc7_link_paths(): check_link_paths("gcc-7.3.1.txt", []) diff --git a/lib/spack/spack/test/spec_semantics.py b/lib/spack/spack/test/spec_semantics.py index 9f94d11a08..6fcdcded15 100644 --- a/lib/spack/spack/test/spec_semantics.py +++ b/lib/spack/spack/test/spec_semantics.py @@ -159,8 +159,8 @@ class TestSpecSemantics: ("foo%intel", "%intel", "foo%intel"), ("foo%gcc", "%gcc@4.7.2", "foo%gcc@4.7.2"), ("foo%intel", "%intel@4.7.2", "foo%intel@4.7.2"), - ("foo%pgi@4.5", "%pgi@4.4:4.6", "foo%pgi@4.5"), - ("foo@2.0%pgi@4.5", "@1:3%pgi@4.4:4.6", "foo@2.0%pgi@4.5"), + ("foo%gcc@4.5", "%gcc@4.4:4.6", "foo%gcc@4.5"), + ("foo@2.0%gcc@4.5", "@1:3%gcc@4.4:4.6", "foo@2.0%gcc@4.5"), ("foo %gcc@4.7.3", "%gcc@4.7", "foo %gcc@4.7.3"), ("libelf %gcc@4.4.7", "libelf %gcc@4.4.7", "libelf %gcc@4.4.7"), ("libelf", "libelf %gcc@4.4.7", "libelf %gcc@4.4.7"), @@ -462,10 +462,10 @@ class TestSpecSemantics: ("foo target=x86_64", "platform=test os=redhat6 target=x86"), ("foo arch=test-frontend-frontend", "platform=test os=frontend target=backend"), ("foo%intel", "%gcc"), - ("foo%intel", "%pgi"), - ("foo%pgi@4.3", "%pgi@4.4:4.6"), - ("foo@4.0%pgi", "@1:3%pgi"), - ("foo@4.0%pgi@4.5", "@1:3%pgi@4.4:4.6"), + ("foo%intel", "%gcc"), + ("foo%gcc@4.3", "%gcc@4.4:4.6"), + ("foo@4.0%gcc", "@1:3%gcc"), + ("foo@4.0%gcc@4.5", "@1:3%gcc@4.4:4.6"), ("builtin.mock.mpich", "builtin.mpich"), ("mpileaks ^builtin.mock.mpich", "^builtin.mpich"), ("mpileaks^mpich@1.2", "^mpich@2.0"), |