summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAuriane R <48684432+aurianer@users.noreply.github.com>2023-10-26 16:08:21 +0200
committerGitHub <noreply@github.com>2023-10-26 16:08:21 +0200
commit53d501119263cfb04f741106cadeb2507e431599 (patch)
tree4459da641b1642363158bc329cd87c125077044b
parent751b64cbcdb86ce94a05503e853f788b94aaeb11 (diff)
downloadspack-53d501119263cfb04f741106cadeb2507e431599.tar.gz
spack-53d501119263cfb04f741106cadeb2507e431599.tar.bz2
spack-53d501119263cfb04f741106cadeb2507e431599.tar.xz
spack-53d501119263cfb04f741106cadeb2507e431599.zip
Add conflict between cxxstd > 17 and cuda < 12 in pika (#40717)
* Add conflict with C++ standard > 17 and cuda < 12 * Removing map_cxxstd since boost supports C++20 flag
-rw-r--r--var/spack/repos/builtin/packages/pika/package.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/var/spack/repos/builtin/packages/pika/package.py b/var/spack/repos/builtin/packages/pika/package.py
index 50ff40f411..0fd20bb0a3 100644
--- a/var/spack/repos/builtin/packages/pika/package.py
+++ b/var/spack/repos/builtin/packages/pika/package.py
@@ -42,7 +42,6 @@ class Pika(CMakePackage, CudaPackage, ROCmPackage):
generator("ninja")
- map_cxxstd = lambda cxxstd: "2a" if cxxstd == "20" else cxxstd
cxxstds = ("17", "20", "23")
variant(
"cxxstd",
@@ -91,6 +90,9 @@ class Pika(CMakePackage, CudaPackage, ROCmPackage):
conflicts("%clang@:8", when="@0.2:")
conflicts("+stdexec", when="cxxstd=17")
conflicts("cxxstd=23", when="^cmake@:3.20.2")
+ # CUDA version <= 11 does not support C++20 and newer
+ for cxxstd in filter(lambda x: x != "17", cxxstds):
+ conflicts(f"cxxstd={cxxstd}", when="^cuda@:11")
# Other dependencies
depends_on("boost@1.71:")
@@ -139,7 +141,7 @@ class Pika(CMakePackage, CudaPackage, ROCmPackage):
)
for cxxstd in cxxstds:
- depends_on("boost cxxstd={0}".format(map_cxxstd(cxxstd)), when="cxxstd={0}".format(cxxstd))
+ depends_on("boost cxxstd={0}".format(cxxstd), when="cxxstd={0}".format(cxxstd))
depends_on("fmt cxxstd={0}".format(cxxstd), when="@0.11: cxxstd={0}".format(cxxstd))
# COROUTINES