podio: Add latest tags and variants and update dependencies accordingly (#40182)
* Make sure sio is in dependent build env for podio * podio: Fix likely(?) typo in root dependency * podio: Add latest tag and new variants + dependencies * podio: Add v00-16-07 tag * podio: Fix dependencies flagged by package audit * podio: Simplify root dependency * podio: Add 0.17.1 tag
This commit is contained in:
parent
92780a9af6
commit
581f45b639
1 changed files with 32 additions and 5 deletions
|
@ -20,9 +20,24 @@ class Podio(CMakePackage):
|
||||||
tags = ["hep", "key4hep"]
|
tags = ["hep", "key4hep"]
|
||||||
|
|
||||||
version("master", branch="master")
|
version("master", branch="master")
|
||||||
version("0.16.6", sha256="859f7cd16bd2b833bee9c1f33eb4cdbc2a0c2b1a48a853f67c30e8a0301d16df")
|
version("0.17.1", sha256="97d6c5f81d50ee42bf7c01f041af2fd333c806f1bbf0a4828ca961a24cea6bb2")
|
||||||
version("0.16.5", sha256="42135e4d0e11be6f0d88748799fa2ec985514d4b4c979a10a56a00a378f65ee0")
|
version("0.17", sha256="0c19f69970a891459cab227ab009514f1c1ce102b70e8c4b7d204eb6a0c643c1")
|
||||||
version("0.16.3", sha256="d8208f98496af68ca8d02d302f428aab510e50d07575b90c3477fff7e499335b")
|
version("0.16.7", sha256="8af7c947e2637f508b7af053412bacd9218d41a455d69addd7492f05b7a4338d")
|
||||||
|
version(
|
||||||
|
"0.16.6",
|
||||||
|
sha256="859f7cd16bd2b833bee9c1f33eb4cdbc2a0c2b1a48a853f67c30e8a0301d16df",
|
||||||
|
deprecated=True,
|
||||||
|
)
|
||||||
|
version(
|
||||||
|
"0.16.5",
|
||||||
|
sha256="42135e4d0e11be6f0d88748799fa2ec985514d4b4c979a10a56a00a378f65ee0",
|
||||||
|
deprecated=True,
|
||||||
|
)
|
||||||
|
version(
|
||||||
|
"0.16.3",
|
||||||
|
sha256="d8208f98496af68ca8d02d302f428aab510e50d07575b90c3477fff7e499335b",
|
||||||
|
deprecated=True,
|
||||||
|
)
|
||||||
version(
|
version(
|
||||||
"0.16.2",
|
"0.16.2",
|
||||||
sha256="faf7167290faf322f23c734adff19904b10793b5ab14e1dfe90ce257c225114b",
|
sha256="faf7167290faf322f23c734adff19904b10793b5ab14e1dfe90ce257c225114b",
|
||||||
|
@ -112,6 +127,7 @@ class Podio(CMakePackage):
|
||||||
description="Use the specified C++ standard when building.",
|
description="Use the specified C++ standard when building.",
|
||||||
)
|
)
|
||||||
variant("sio", default=False, description="Build the SIO I/O backend")
|
variant("sio", default=False, description="Build the SIO I/O backend")
|
||||||
|
variant("rntuple", default=False, description="Build the RNTuple backend")
|
||||||
|
|
||||||
# cpack config throws an error on some systems
|
# cpack config throws an error on some systems
|
||||||
patch("cpack.patch", when="@:0.10.0")
|
patch("cpack.patch", when="@:0.10.0")
|
||||||
|
@ -119,9 +135,12 @@ class Podio(CMakePackage):
|
||||||
patch("python-tests.patch", when="@:0.14.0")
|
patch("python-tests.patch", when="@:0.14.0")
|
||||||
|
|
||||||
depends_on("root@6.08.06: cxxstd=17", when="cxxstd=17")
|
depends_on("root@6.08.06: cxxstd=17", when="cxxstd=17")
|
||||||
depends_on("root@6.25.02: cxxstd=20", when="cxxstd=20")
|
depends_on("root@6.28.04:", when="+rntuple")
|
||||||
|
depends_on("root@6.28:", when="@0.17:")
|
||||||
|
for cxxstd in ("17", "20"):
|
||||||
|
depends_on("root cxxstd={}".format(cxxstd), when="cxxstd={}".format(cxxstd))
|
||||||
|
|
||||||
depends_on("cmake@3.8:", type="build")
|
depends_on("cmake@3.12:", type="build")
|
||||||
depends_on("python", type=("build", "run"))
|
depends_on("python", type=("build", "run"))
|
||||||
depends_on("py-pyyaml", type=("build", "run"))
|
depends_on("py-pyyaml", type=("build", "run"))
|
||||||
depends_on("py-jinja2@2.10.1:", type=("build", "run"), when="@0.12.0:")
|
depends_on("py-jinja2@2.10.1:", type=("build", "run"), when="@0.12.0:")
|
||||||
|
@ -131,10 +150,12 @@ class Podio(CMakePackage):
|
||||||
depends_on("py-tabulate", type=("run", "test"), when="@0.16.6:")
|
depends_on("py-tabulate", type=("run", "test"), when="@0.16.6:")
|
||||||
|
|
||||||
conflicts("+sio", when="@:0.12", msg="sio support requires at least podio@0.13")
|
conflicts("+sio", when="@:0.12", msg="sio support requires at least podio@0.13")
|
||||||
|
conflicts("+rntuple", when="@:0.16", msg="rntuple support requires at least podio@0.17")
|
||||||
|
|
||||||
def cmake_args(self):
|
def cmake_args(self):
|
||||||
args = [
|
args = [
|
||||||
self.define_from_variant("ENABLE_SIO", "sio"),
|
self.define_from_variant("ENABLE_SIO", "sio"),
|
||||||
|
self.define_from_variant("ENABLE_RNTUPLE", "rntuple"),
|
||||||
self.define("CMAKE_CXX_STANDARD", self.spec.variants["cxxstd"].value),
|
self.define("CMAKE_CXX_STANDARD", self.spec.variants["cxxstd"].value),
|
||||||
self.define("BUILD_TESTING", self.run_tests),
|
self.define("BUILD_TESTING", self.run_tests),
|
||||||
]
|
]
|
||||||
|
@ -156,6 +177,12 @@ def setup_dependent_build_environment(self, env, dependent_spec):
|
||||||
env.prepend_path("PYTHONPATH", self.prefix.python)
|
env.prepend_path("PYTHONPATH", self.prefix.python)
|
||||||
env.prepend_path("LD_LIBRARY_PATH", self.spec["podio"].libs.directories[0])
|
env.prepend_path("LD_LIBRARY_PATH", self.spec["podio"].libs.directories[0])
|
||||||
env.prepend_path("ROOT_INCLUDE_PATH", self.prefix.include)
|
env.prepend_path("ROOT_INCLUDE_PATH", self.prefix.include)
|
||||||
|
if self.spec.satisfies("+sio @0.17:"):
|
||||||
|
# sio needs to be on LD_LIBRARY_PATH for ROOT to be able to
|
||||||
|
# dynamicaly load the python libraries also in dependent build
|
||||||
|
# environments since the import structure has changed with
|
||||||
|
# podio@0.17
|
||||||
|
env.prepend_path("LD_LIBRARY_PATH", self.spec["sio"].libs.directories[0])
|
||||||
|
|
||||||
def url_for_version(self, version):
|
def url_for_version(self, version):
|
||||||
"""Translate version numbers to ilcsoft conventions.
|
"""Translate version numbers to ilcsoft conventions.
|
||||||
|
|
Loading…
Reference in a new issue