med: add v4.1.1, and v5.0.0, update package recipe (#43409)

This commit is contained in:
Julien Cortial 2024-03-29 18:27:33 +01:00 committed by GitHub
parent 179e4f3ad1
commit 8bd6283b52
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -16,34 +16,63 @@ class Med(CMakePackage):
license("LGPL-3.0-only")
# 4.1.0 does not compile in static mode
version("4.1.0", sha256="847db5d6fbc9ce6924cb4aea86362812c9a5ef6b9684377e4dd6879627651fce")
version(
"5.0.0",
sha256="267e76d0c67ec51c10e3199484ec1508baa8d5ed845c628adf660529dce7a3d4",
url="https://files.salome-platform.org/Salome/medfile/med-5.0.0.tar.bz2",
)
version(
"4.1.1",
sha256="a082b705d1aafe95d3a231d12c57f0b71df554c253e190acca8d26fc775fb1e6",
url="https://files.salome-platform.org/Salome/medfile/med-4.1.1.tar.gz",
)
# Older versions are no more available from the official provider
version(
"4.1.0",
sha256="847db5d6fbc9ce6924cb4aea86362812c9a5ef6b9684377e4dd6879627651fce",
deprecated=True,
)
version(
"4.0.0",
sha256="a474e90b5882ce69c5e9f66f6359c53b8b73eb448c5f631fa96e8cd2c14df004",
preferred=True,
deprecated=True,
)
version(
"3.2.0",
sha256="d52e9a1bdd10f31aa154c34a5799b48d4266dc6b4a5ee05a9ceda525f2c6c138",
deprecated=True,
)
version("3.2.0", sha256="d52e9a1bdd10f31aa154c34a5799b48d4266dc6b4a5ee05a9ceda525f2c6c138")
variant("api23", default=True, description="Enable API2.3")
variant("mpi", default=True, description="Enable MPI")
variant("shared", default=False, description="Builds a shared version of the library")
variant("fortran", default=False, description="Enable Fortran support")
variant("doc", default=False, description="Install documentation")
variant("python", default=False, description="Build Python bindings")
depends_on("hdf5@:1.8.22", when="@3.2.0")
depends_on("hdf5@1.10.2:1.10.7", when="@4")
depends_on("hdf5@1.12.1:1.12", when="@5:")
depends_on("hdf5~mpi", when="~mpi")
depends_on("hdf5+mpi", when="+mpi")
depends_on("mpi", when="+mpi")
depends_on("hdf5@:1.8.22+mpi", when="@3.2.0+mpi")
depends_on("hdf5@1.10.2:1.10.7+mpi", when="@4.0.0:+mpi")
depends_on("hdf5@:1.8.22~mpi", when="@3.2.0~mpi")
depends_on("hdf5@1.10.2:1.10.7~mpi", when="@4.0.0:~mpi")
# the "TARGET hdf5" patch below only works with HDF5 shared library builds
depends_on("hdf5+shared", when="@4.0.0:4.1.99")
depends_on("doxygen", type="build", when="+doc")
depends_on("swig", type="build", when="+python")
depends_on("python", when="+python")
conflicts("~shared", when="+python", msg="Python bindings require shared libraries")
conflicts("@4.1.0", when="~shared", msg="Link error when static")
# C++11 requires a space between literal and identifier
patch("add_space.patch", when="@3.2.0")
# fix problem where CMake "could not find TARGET hdf5"
patch("med-4.1.0-hdf5-target.patch", when="@4.0.0:4.1.99")
# Fix problem where CMake "could not find TARGET hdf5"
# The patch only works with HDF5 shared library builds
patch("med-4.1.0-hdf5-target.patch", when="@4.0.0:4.1.0")
depends_on("hdf5+shared", when="@4.0.0:4.1.0")
def patch(self):
# resembles FindSalomeHDF5.patch as in salome-configuration
@ -61,8 +90,8 @@ def cmake_args(self):
options = [
self.define("HDF5_ROOT_DIR", spec["hdf5"].prefix),
self.define("MEDFILE_BUILD_TESTS", self.run_tests),
self.define("MEDFILE_BUILD_PYTHON", False),
self.define("MEDFILE_INSTALL_DOC", False),
self.define_from_variant("MEDFILE_BUILD_PYTHON", "python"),
self.define_from_variant("MEDFILE_INSTALL_DOC", "doc"),
]
if "~fortran" in spec:
options.append("-DCMAKE_Fortran_COMPILER=")