commit: 52ff075678f80c88a0e8f40dd8f31c843f2399f0 Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Tue Apr 18 08:06:27 2023 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Tue Apr 18 08:06:27 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=52ff0756
sci-libs/hdf5: add 1.14.0 Closes: https://bugs.gentoo.org/863089 Signed-off-by: Sam James <sam <AT> gentoo.org> sci-libs/hdf5/Manifest | 1 + sci-libs/hdf5/hdf5-1.14.0.ebuild | 119 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 120 insertions(+) diff --git a/sci-libs/hdf5/Manifest b/sci-libs/hdf5/Manifest index 172f6d6a8029..026f6bd1bb2c 100644 --- a/sci-libs/hdf5/Manifest +++ b/sci-libs/hdf5/Manifest @@ -1,2 +1,3 @@ DIST hdf5-1.10.5.tar.bz2 8706317 BLAKE2B ac326be8fe4ccc4b0153f15bc7d65aa8f1adc2ae279d3980f57ed46722b754d3f36ecf1d6273c75e80ed1afd4bbf10c6b1c5d9408e1f83a4b2e397e7902a7d3c SHA512 769e43b8672e26fe24ed68da0228c010d3d9bc950ca09f0bc60707911a2f26f2f8415c8abc8ec06e07667148d8cdb3b0c7b3e7860d9b19739629c5dfd5ce73d4 DIST hdf5-1.12.2.tar.bz2 10494264 BLAKE2B 99ca5b57f6f54fa044c909f0773de62b218c1f0ec3c011f88f3c227536dd719e77ddbe42d562b1214e8843e41d8fc56db499d7f122876fdd36ef31b235229cb7 SHA512 cbb4663570de76b11adb6bf62cfdb754371d31eeab04691479a5764a45207a9c1309665ab80f51c63a4b9b87354f9cbe6835cef506a9fd554d142c6d2bec21e5 +DIST hdf5-1.14.0.tar.bz2 15709493 BLAKE2B c86bc91da66d0136870ef9a63edfb7b3591592b4ccc072d2c93ff1c6fa7de23184d0b2f49a6de76215541342c6021cda38816f9a3fae69c2c1fdc18d219ea24c SHA512 25a147b60b1abe15950d66368b3c0b401e767425036b575bcb12aad46374b6db4687dc0816b5cfa103c24fd5078d91d70c7b19cfe0db327d3ff15811b651b8f8 diff --git a/sci-libs/hdf5/hdf5-1.14.0.ebuild b/sci-libs/hdf5/hdf5-1.14.0.ebuild new file mode 100644 index 000000000000..d69a56ff0f16 --- /dev/null +++ b/sci-libs/hdf5/hdf5-1.14.0.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +FORTRAN_NEEDED=fortran + +# We've reverted *back* to autotools from CMake because of +# https://github.com/HDFGroup/hdf5/issues/1814. +inherit autotools fortran-2 flag-o-matic toolchain-funcs prefix + +MY_P=${PN}-${PV/_p/-patch} +MAJOR_P=${PN}-$(ver_cut 1-2) + +DESCRIPTION="General purpose library and file format for storing scientific data" +HOMEPAGE="https://www.hdfgroup.org/HDF5/" +SRC_URI="https://www.hdfgroup.org/ftp/HDF5/releases/${MAJOR_P}/${MY_P}/src/${MY_P}.tar.bz2" +S="${WORKDIR}/${MY_P}" + +LICENSE="NCSA-HDF" +SLOT="0/${PV%%_p*}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="cxx debug examples fortran +hl mpi szip test threads unsupported zlib" +RESTRICT="!test? ( test )" +REQUIRED_USE=" + !unsupported? ( + cxx? ( !mpi ) mpi? ( !cxx ) + threads? ( !cxx !mpi !fortran !hl ) + ) +" + +RDEPEND=" + mpi? ( virtual/mpi[romio] ) + szip? ( virtual/szip ) + zlib? ( sys-libs/zlib:0= )" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-1.8.9-static_libgfortran.patch + "${FILESDIR}"/${PN}-1.12.2-no-strip-symbols.patch +) + +pkg_setup() { + # Workaround for bug 285148 + tc-export CXX CC AR + + use fortran && fortran-2_pkg_setup + + if use mpi; then + if has_version 'sci-libs/hdf5[-mpi]'; then + ewarn "Installing hdf5 with mpi enabled with a previous hdf5 with mpi disabled may fail." + ewarn "Try to uninstall the current hdf5 prior to enabling mpi support." + fi + + export CC=mpicc + use fortran && export FC=mpif90 + elif has_version 'sci-libs/hdf5[mpi]'; then + ewarn "Installing hdf5 with mpi disabled while having hdf5 installed with mpi enabled may fail." + ewarn "Try to uninstall the current hdf5 prior to disabling mpi support." + fi +} + +src_prepare() { + default + + # Respect Gentoo examples directory + sed \ + -e "s:hdf5_examples:doc/${PF}/examples:g" \ + -i $(find . -name Makefile.am) $(find . -name "run*.sh.in") || die + sed \ + -e '/docdir/d' \ + -i config/commence.am || die + + if ! use examples; then + # bug #409091 + sed -e '/^install:/ s/install-examples//' \ + -i Makefile.am || die + fi + + # Enable shared libs by default for h5cc config utility + sed -i -e "s/SHLIB:-no/SHLIB:-yes/g" bin/h5cc.in || die + hprefixify m4/libtool.m4 + + eautoreconf +} + +src_configure() { + # bug #686620 + use sparc && tc-is-gcc && append-flags -fno-tree-ccp + + econf \ + --disable-static \ + --enable-deprecated-symbols \ + --enable-build-mode=$(usex debug debug production) \ + --with-default-plugindir="${EPREFIX}/usr/$(get_libdir)/${PN}/plugin" \ + $(use_enable cxx) \ + $(use_enable debug codestack) \ + $(use_enable fortran) \ + $(use_enable hl) \ + $(use_enable mpi parallel) \ + $(use_enable test tests) \ + $(use_enable threads threadsafe) \ + $(use_enable unsupported) \ + $(use_with szip szlib) \ + $(use_with threads pthread) \ + $(use_with zlib) +} + +src_install() { + emake DESTDIR="${D}" EPREFIX="${EPREFIX}" install + + # No static archives + find "${ED}" -name '*.la' -delete || die + + # Remove "perf" executable due to file collisions with dev-util/perf. + # Previously with the CMake build system we only installed h5perf, so + # let's simply remove the file for now. + use mpi && { rm "${ED}"/usr/bin/perf || die "rm failed" ; } +}