mgard: don't restrict protobuf version more than necessary (#43172)

* mgard: don't restrict protobuf version more than necessary

successfully built:
mgard@2022-11-18 ^protobuf@3.{4,21,25}
mgard@2023-01-10 ^protobuf@3.{4,25}
mgard@2023-03-31 ^protobuf@3.{4,25}

compile failures:
mgard@2022-11-18 ^protobuf@3.3
mgard@2023-01-10 ^protobuf@3.3
mgard@2023-03-31 ^protobuf@3.3

* mgard: add conflicts to address CI errors

* mgard: conflict between cuda and abseil@20240116.1

compiling mgard+cuda with gcc@12.3.0 and nvcc from cuda@12.3.0 against
protobuf pulling in abseil-cpp@20240116.1 results in the errors reported
here: https://github.com/abseil/abseil-cpp/issues/1629
This commit is contained in:
Martin Aumüller 2024-03-19 09:29:44 +01:00 committed by GitHub
parent 3984dd750c
commit 9756354998
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -49,7 +49,7 @@ class Mgard(CMakePackage, CudaPackage):
depends_on("zlib-api")
depends_on("pkgconfig", type=("build",), when="@2022-11-18:")
depends_on("zstd")
depends_on("protobuf@:3.21.12", when="@2022-11-18:")
depends_on("protobuf@3.4:", when="@2022-11-18:")
depends_on("libarchive", when="@2021-11-12:")
depends_on("tclap", when="@2021-11-12")
depends_on("yaml-cpp", when="@2021-11-12:")
@ -64,6 +64,10 @@ class Mgard(CMakePackage, CudaPackage):
"~cuda", when="@2021-11-12", msg="without cuda MGARD@2021-11-12 has undefined symbols"
)
conflicts("%gcc@:7", when="@2022-11-18:", msg="requires std::optional and other c++17 things")
conflicts("protobuf@3.22:", when="target=ppc64le", msg="GCC 9.4 segfault in CI")
conflicts("protobuf@3.22:", when="+cuda target=aarch64:", msg="nvcc fails on ARM SIMD headers")
# https://github.com/abseil/abseil-cpp/issues/1629
conflicts("abseil-cpp@20240116.1", when="+cuda", msg="triggers nvcc parser bug")
def flag_handler(self, name, flags):
if name == "cxxflags":