diff options
author | Mark Abraham <Mark.J.Abraham@gmail.com> | 2024-11-22 14:33:30 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-22 06:33:30 -0700 |
commit | 559c2f1eb9ea7fdaeecf7d4fdf556c544d9de45e (patch) | |
tree | 2f0f0e8901a0fcfcfb1b95750fd0f2bff49dadb9 /var | |
parent | ed1dbea77b442cd55848b11e633f6626e83a999d (diff) | |
download | spack-559c2f1eb9ea7fdaeecf7d4fdf556c544d9de45e.tar.gz spack-559c2f1eb9ea7fdaeecf7d4fdf556c544d9de45e.tar.bz2 spack-559c2f1eb9ea7fdaeecf7d4fdf556c544d9de45e.tar.xz spack-559c2f1eb9ea7fdaeecf7d4fdf556c544d9de45e.zip |
gromacs: oneapi does not always require gcc (#47679)
* gromacs: oneapi does not always require gcc
* Support intel_provided_gcc only with %intel classic compiler
Require gcc only when needed with %intel
* New approach depending on gcc-runtime directly
* Update var/spack/repos/builtin/packages/gromacs/package.py
Co-authored-by: Christoph Junghans <christoph.junghans@gmail.com>
---------
Co-authored-by: Christoph Junghans <christoph.junghans@gmail.com>
Diffstat (limited to 'var')
-rw-r--r-- | var/spack/repos/builtin/packages/gromacs/package.py | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/var/spack/repos/builtin/packages/gromacs/package.py b/var/spack/repos/builtin/packages/gromacs/package.py index 055cbebe14..90d1766118 100644 --- a/var/spack/repos/builtin/packages/gromacs/package.py +++ b/var/spack/repos/builtin/packages/gromacs/package.py @@ -310,8 +310,14 @@ class Gromacs(CMakePackage, CudaPackage): depends_on("sycl", when="+sycl") depends_on("lapack") depends_on("blas") - depends_on("gcc", when="%oneapi ~intel_provided_gcc") depends_on("gcc", when="%intel ~intel_provided_gcc") + # TODO this can be expanded to all clang-based compilers once + # the principle is demonstrated to work + with when("%oneapi ~intel_provided_gcc"): + depends_on("gcc-runtime@5:", when="@2020") + depends_on("gcc-runtime@7:", when="@2021:2022") + depends_on("gcc-runtime@9:", when="@2023:2024") + depends_on("gcc-runtime@11:", when="@2025:") depends_on("hwloc@1.0:1", when="+hwloc@2016:2018") depends_on("hwloc", when="+hwloc@2019:") @@ -540,7 +546,7 @@ class CMakeBuilder(spack.build_systems.cmake.CMakeBuilder): ): with open(".".join([os.environ["SPACK_CXX"], "cfg"]), "r") as f: options.append("-DCMAKE_CXX_FLAGS={}".format(f.read())) - else: + elif self.spec.satisfies("^gcc"): options.append("-DGMX_GPLUSPLUS_PATH=%s/g++" % self.spec["gcc"].prefix.bin) if self.spec.satisfies("+double"): |