From c0c1a4aea1aa38bd7054cbac2e3fa1606f6939e9 Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Mon, 13 Jan 2025 05:48:25 -0600 Subject: [PATCH] podio: add v1.2; conflicts +rntuple ^root@6.32: when @:0.99 (#47991) Co-authored-by: Thomas Madlener --- .../repos/builtin/packages/edm4hep/package.py | 1 + .../repos/builtin/packages/podio/package.py | 17 ++++++++++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/var/spack/repos/builtin/packages/edm4hep/package.py b/var/spack/repos/builtin/packages/edm4hep/package.py index 85c1acad8ef..05e6fd43e23 100644 --- a/var/spack/repos/builtin/packages/edm4hep/package.py +++ b/var/spack/repos/builtin/packages/edm4hep/package.py @@ -76,6 +76,7 @@ class Edm4hep(CMakePackage): depends_on("nlohmann-json@3.10.5:", when="@:0.99.1") depends_on("podio@1:", when="@0.99:") depends_on("podio@0.15:", when="@:0.10.5") + depends_on("podio@:1.1", when="@:0.99.0") for _std in _cxxstd_values: for _v in _std: depends_on(f"podio cxxstd={_v.value}", when=f"cxxstd={_v.value}") diff --git a/var/spack/repos/builtin/packages/podio/package.py b/var/spack/repos/builtin/packages/podio/package.py index ef277949e7d..fc9d8a62dd2 100644 --- a/var/spack/repos/builtin/packages/podio/package.py +++ b/var/spack/repos/builtin/packages/podio/package.py @@ -19,6 +19,7 @@ class Podio(CMakePackage): tags = ["hep", "key4hep"] version("master", branch="master") + version("1.2", sha256="bc97ba09ce908e55d4c5faa78d9739dde7daefd9337ae98351813b13708d0685") version("1.1", sha256="2cb5040761f3da4383e1f126da25d68e99ecd8398e0ff12e7475a3745a7030a6") version("1.0.1", sha256="915531a2bcf638011bb6cc19715bbc46d846ec8b985555a1afdcd6abc017e21b") version("1.0", sha256="491f335e148708e387e90e955a6150e1fc2e01bf6b4980b65e257ab0619559a9") @@ -71,12 +72,22 @@ class Podio(CMakePackage): depends_on("cxx", type="build") # generated + _cxxstd_values = (conditional("17", when="@:1.2"), conditional("20", when="@0.14.1:")) variant( "cxxstd", default="17", - values=("17", conditional("20", when="@0.15:")), + values=_cxxstd_values, multi=False, description="Use the specified C++ standard when building.", + when="@:1.1", + ) + variant( + "cxxstd", + default="20", + values=_cxxstd_values, + multi=False, + description="Use the specified C++ standard when building.", + when="@1.2:", ) variant("sio", default=False, description="Build the SIO I/O backend") variant("rntuple", default=False, description="Build the RNTuple backend") @@ -101,10 +112,14 @@ class Podio(CMakePackage): depends_on("sio", type=("build", "link"), when="+sio") depends_on("catch2@3.0.1:", type=("test"), when="@:0.16.5") depends_on("catch2@3.1:", type=("test"), when="@0.16.6:") + depends_on("catch2@3.4:", type=("test"), when="@0.17.1: cxxstd=20") + depends_on("catch2@3.3:", type=("test"), when="@1.2: cxxstd=17") depends_on("py-graphviz", type=("run")) depends_on("py-tabulate", type=("run", "test"), when="@0.16.6:") conflicts("+rntuple", when="@:0.16", msg="rntuple support requires at least podio@0.17") + conflicts("+rntuple ^root@6.32:", when="@:0.99", msg="rntuple API change requires podio@1:") + conflicts("+rntuple ^root@6.34:", when="@:1.1", msg="rntuple API change requires podio@1.2:") # See https://github.com/AIDASoft/podio/pull/600 patch(