diff options
author | Sam James <sam@gentoo.org> | 2021-11-25 01:44:46 +0000 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2021-11-25 01:45:05 +0000 |
commit | 03e409f30d966755e399c476cc7bf2f508cafae4 (patch) | |
tree | 1ccff4e44b43b62a7987640266e06f72d243e539 /sci-libs/netcdf | |
parent | dev-perl/PerlIO-eol: Remove old (diff) | |
download | gentoo-03e409f30d966755e399c476cc7bf2f508cafae4.tar.gz gentoo-03e409f30d966755e399c476cc7bf2f508cafae4.tar.bz2 gentoo-03e409f30d966755e399c476cc7bf2f508cafae4.zip |
sci-libs/netcdf: add 4.8.1
Doesn't seem to hardcode libdl path anymore which avoids glibc-2.34 issues.
Closes: https://bugs.gentoo.org/827188
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sci-libs/netcdf')
-rw-r--r-- | sci-libs/netcdf/Manifest | 1 | ||||
-rw-r--r-- | sci-libs/netcdf/files/netcdf-4.8.1-big-endian-build.patch | 24 | ||||
-rw-r--r-- | sci-libs/netcdf/netcdf-4.8.1.ebuild | 74 |
3 files changed, 99 insertions, 0 deletions
diff --git a/sci-libs/netcdf/Manifest b/sci-libs/netcdf/Manifest index d286a0bb2449..8232d5518f32 100644 --- a/sci-libs/netcdf/Manifest +++ b/sci-libs/netcdf/Manifest @@ -1 +1,2 @@ DIST netcdf-4.7.4.tar.gz 19711158 BLAKE2B b49532e6f87b458e7f5654f70ec932d6c8c81272c97ce44df3d27bb61b01d3e005f918b959ce12e42e26f7c12309ab72eeb57a35216d20ab5761837db65741a4 SHA512 15922818fdd71be285eb7dd2fc9be2594fe9af979de3ed316465636c7bbdaec65eb151ca57ef8b703e6a360cdba036b8f9bc193ddff01ff7ce4214c0a66efa79 +DIST netcdf-4.8.1.tar.gz 18957280 BLAKE2B 05fc6cd10cb5cbb11dc077b9a884fbc63c4cb840b241e782702da58ad9831fba065a6f1e97c2be092437735d39658482285850a00618d0582d6e4728d64c4402 SHA512 c97207867abf10d414abf34624268710f5b812c26c38f97e73afe00558b3f07917331fbc7fdb9e70b09813acf15a9a09bae2c432a3266ce10a791b9472f87a42 diff --git a/sci-libs/netcdf/files/netcdf-4.8.1-big-endian-build.patch b/sci-libs/netcdf/files/netcdf-4.8.1-big-endian-build.patch new file mode 100644 index 000000000000..afeff7e3fbd0 --- /dev/null +++ b/sci-libs/netcdf/files/netcdf-4.8.1-big-endian-build.patch @@ -0,0 +1,24 @@ +Later version for 4.8.1 grabbed from Debian: +https://sources.debian.org/patches/netcdf/1:4.8.1-1/byteswap.patch/ + +Earlier version used: +https://github.com/DennisHeimbigner/netcdf-c/commit/6f86660da86f279cad1f2804cf3242767de27630.patch +https://github.com/Unidata/netcdf-c/issues/1687 +https://bugs.gentoo.org/772863 + +Description: Add forward declarations for byteswap8 & byteswap4. +Author: Dennis Heimbigner +Bug: https://github.com/Unidata/netcdf-c/issues/1687 + +--- a/libdispatch/dfilter.c ++++ b/libdispatch/dfilter.c +@@ -20,6 +20,9 @@ + #include "hdf5internal.h" + #endif + ++static void byteswap8(unsigned char*); ++static void byteswap4(unsigned char*); ++ + /* + Unified filter related code + */ diff --git a/sci-libs/netcdf/netcdf-4.8.1.ebuild b/sci-libs/netcdf/netcdf-4.8.1.ebuild new file mode 100644 index 000000000000..9d62cbfcef3d --- /dev/null +++ b/sci-libs/netcdf/netcdf-4.8.1.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake flag-o-matic + +DESCRIPTION="Scientific library and interface for array oriented data access" +HOMEPAGE="https://www.unidata.ucar.edu/software/netcdf/" +SRC_URI="https://github.com/Unidata/netcdf-c/archive/v${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}-c-${PV}" + +LICENSE="UCAR-Unidata" +SLOT="0/18" +KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 -riscv ~x86 ~amd64-linux ~x86-linux" +IUSE="+dap doc examples hdf +hdf5 mpi szip test tools" +RESTRICT="!test? ( test )" + +RDEPEND="dev-libs/libxml2 + dap? ( net-misc/curl:0= ) + hdf? ( + sci-libs/hdf:0= + sci-libs/hdf5:0= + virtual/jpeg + ) + hdf5? ( sci-libs/hdf5:0=[hl(+),mpi=,szip=,zlib] )" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig + doc? ( app-doc/doxygen[dot] )" + +REQUIRED_USE=" + test? ( tools ) + szip? ( hdf5 ) + mpi? ( hdf5 )" + +PATCHES=( + "${FILESDIR}/${PN}-4.8.1-big-endian-build.patch" + "${FILESDIR}/${PN}-4.7.4-big-endian-test.patch" +) + +src_prepare() { + # skip test that requires network + sed -i -e '/run_get_hdf4_files/d' hdf4_test/CMakeLists.txt || die + + cmake_src_prepare +} + +src_configure() { + use mpi && export CC=mpicc + + # Temporary workaround for test breakage + # https://github.com/Unidata/netcdf-c/issues/1983 + # bug #827042 + append-flags -fno-strict-aliasing + + local mycmakeargs=( + -DENABLE_DAP_REMOTE_TESTS=OFF + -DENABLE_LIBXML2=ON + -DBUILD_UTILITIES=$(usex tools) + -DENABLE_DAP=$(usex dap) + -DENABLE_DOXYGEN=$(usex doc) + -DENABLE_EXAMPLES=$(usex examples) + -DENABLE_HDF4=$(usex hdf) + -DENABLE_NETCDF_4=$(usex hdf5) + -DENABLE_TESTS=$(usex test) + ) + + cmake_src_configure +} + +src_test() { + # fails parallel tests: bug #621486 + cmake_src_test -j1 +} |