From 2cfe62a1f75cfb07a50f631f29d56bff5d09bf47 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 8 Apr 2024 12:31:06 +0100 Subject: gentoo auto-resync : 08:04:2024 - 12:31:06 --- sci-libs/Manifest.gz | Bin 45139 -> 45132 bytes sci-libs/hdf/Manifest | 4 +- ...do-not-build-the-mfhdf-tools-ncgen-ncdump.patch | 30 ++ sci-libs/hdf/files/hdf4-c99.patch | 371 +++++++++++++++++++++ sci-libs/hdf/hdf-4.2.15-r1.ebuild | 83 ----- sci-libs/hdf/hdf-4.2.15-r2.ebuild | 92 +++++ 6 files changed, 496 insertions(+), 84 deletions(-) create mode 100644 sci-libs/hdf/files/0001-simply-do-not-build-the-mfhdf-tools-ncgen-ncdump.patch create mode 100644 sci-libs/hdf/files/hdf4-c99.patch delete mode 100644 sci-libs/hdf/hdf-4.2.15-r1.ebuild create mode 100644 sci-libs/hdf/hdf-4.2.15-r2.ebuild (limited to 'sci-libs') diff --git a/sci-libs/Manifest.gz b/sci-libs/Manifest.gz index 058aac655eac..4ddf7671d460 100644 Binary files a/sci-libs/Manifest.gz and b/sci-libs/Manifest.gz differ diff --git a/sci-libs/hdf/Manifest b/sci-libs/hdf/Manifest index 30b483f6e803..b25800bedf8b 100644 --- a/sci-libs/hdf/Manifest +++ b/sci-libs/hdf/Manifest @@ -1,6 +1,8 @@ +AUX 0001-simply-do-not-build-the-mfhdf-tools-ncgen-ncdump.patch 1028 BLAKE2B 6b5a88e903c1201138055fc73f3f850b7d0680de538a712640b75b718fe2b8c78a402b25687de378bcba47341a598598b4a61795cbf943b42c4aade3ec5d38e8 SHA512 8f6e82f7f693589d4ca0e4b4a1d4b4a09b8f58adcda3c314c74835eeba4d471b122c962ba41ecd9f50b3279fafe31b31d83eb577e790441b4f572c10c69f4dca AUX hdf-4.2.15-enable-fortran-shared.patch 1271 BLAKE2B bdeb5214a92618b0587472db79d6bef7677cf51ceeb77d9b8593fc374547ee4f63eb7e614c621043670236151731fcdcaac2f3e1fc18b4f577cceca24e38aa37 SHA512 daa6bf33cf5b0f9445c1e96c67907463f2a3813d2d6528a0fd19a57db98253794c3d147e736c3568766e87d01ff41a492ecd18fcef3d85af2adb77315d770be8 AUX hdf-4.2.15-fix-rpch-location.patch 550 BLAKE2B a88448fa6f454fcac9567b05270f637d144dae5c88d4a88d19a5cc3897f7e20c61e36678dee730ee80bece1c05cd69514f87658e6a691826dce233cdbe9ff49e SHA512 77855e3e7562412fa18e102385264af42605d462690bbe4fbc867268c1cd1837eb012546294b433c4de8e98ddfdeb58c2a5480a7418252563579d6ee26808f88 +AUX hdf4-c99.patch 10535 BLAKE2B e90795c86561c6726fa099b5f55948529bc66cf40640110cbf199f9a8c86206ce6ffc3580446cbd85f123ff26d8c4c725a095b2dae0facbec4562c0e241db046 SHA512 e31eab185e4438e2e91114c7ffe0d3a713f2b736278b417f78c0cc6e6c808417d81e1607072cbcd8f9df7e50ffbeba25ed72e3347de760e6a2ba5d1e99ad90f4 DIST hdf-4.2.15-arch-patches-1.tar.bz2 7187 BLAKE2B 461e3d7c5e3603fb909d59d6fb23b59f64ef6a6c4e58fe85ddf906a8f27918ac25d3928f5c705290d9d778e1ed07b009bd0602409c05d13a06905d58f2a2cfff SHA512 616c39d06fb6f479a7bed88a89828530ac32018dae827259b76d6e177e5b50378722b60532533a02ae534dddc445f4e360e7a19a28e2cf9728549e5ee27c3e67 DIST hdf-4.2.15.tar.bz2 3647900 BLAKE2B b1d60ee880563bf64ae6eae4c66f86afe55f4c512f06c84c154de30034fa7a65cfa2b9bd68fbf8a055bb42b57215455ac8967f2a73ec88b361750aa07e0da5e6 SHA512 7d4037800ef8950ed74f225355ef5458444bed26fc189fbbd2ce7d36009998013ac1f6ba5d4e60834acf8f6f73550357238745acc35e162679919400a48191e9 -EBUILD hdf-4.2.15-r1.ebuild 2151 BLAKE2B 36829259b5fddef733086e3427f98cc575ce1cbe7e08d565f5f450e906f7ae4bfc8c42b18aceaa3019a07c2c563530385df20ac62417c1eabb96efb6679753b6 SHA512 8f16ee75c61ceb0522fa033e836120216936f87b4441a53f4606db6e0577535a320f921cd66edfab58ccba5662b362f6ea7b92eee979d0d9c7f4c3d9c5caeaa3 +EBUILD hdf-4.2.15-r2.ebuild 2470 BLAKE2B 782d1337d4a1d8105a0e4c596c07ebb3008621f9d0108d2744c5b80f4848d222b8f89f848ecc7e067d68f0232004e8c274b57934f7d405d4e1bf8fd331659b95 SHA512 7302ef8dd3df3fb2c9bd2fd6df4a83e75d391aeadcb57a39ba2520e6ac8626c0dbd89918bb9487e1297db79469e503145170e0fad530b084eb5db2971621f48b MISC metadata.xml 938 BLAKE2B 6fc9c080eaaf83ab22aab00a6645d5e9936479b65d11645c0e76ed28b0e137e1ef60326ddc638a3187018d11400f35e2e17df747b3621ff26c2394800d522322 SHA512 7a54140b8429dfc6b9b078c642875c70f15fc7b7f78710acd285ae306244e09b818f41ae73571a25c16f39530ef6e53d2e26d94f6fb952ba4d4d49f58038c00f diff --git a/sci-libs/hdf/files/0001-simply-do-not-build-the-mfhdf-tools-ncgen-ncdump.patch b/sci-libs/hdf/files/0001-simply-do-not-build-the-mfhdf-tools-ncgen-ncdump.patch new file mode 100644 index 000000000000..c57481a6cb84 --- /dev/null +++ b/sci-libs/hdf/files/0001-simply-do-not-build-the-mfhdf-tools-ncgen-ncdump.patch @@ -0,0 +1,30 @@ +From 5a93f7ba5bea12bd78616a2168035324054ed7b7 Mon Sep 17 00:00:00 2001 +From: Eli Schwartz +Date: Sun, 7 Apr 2024 23:11:43 -0400 +Subject: [PATCH] simply do not build the mfhdf tools ncgen/ncdump + +They were removed upstream in: +https://github.com/HDFGroup/hdf4/commit/57b87b9927f0127d0d04ab7cd6c93e01bf54e3ee + +With the note that people who want them can get them from... yup, you +guessed it, netcdf. +--- + mfhdf/Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/mfhdf/Makefile.am b/mfhdf/Makefile.am +index d62d3af..0963923 100644 +--- a/mfhdf/Makefile.am ++++ b/mfhdf/Makefile.am +@@ -17,7 +17,7 @@ FORTRAN_DIR = + endif + + # src folder in root Makefile, build other folders now +-SUBDIRS = $(XDR_DIR) libsrc $(FORTRAN_DIR) test ncdump ncgen dumper hdfimport hdiff hrepack nctest ++SUBDIRS = $(XDR_DIR) libsrc $(FORTRAN_DIR) test dumper hdfimport hdiff hrepack nctest + + DIST_SUBDIRS = xdr libsrc fortran test ncdump ncgen dumper hdfimport hdiff hrepack nctest examples + +-- +2.43.2 + diff --git a/sci-libs/hdf/files/hdf4-c99.patch b/sci-libs/hdf/files/hdf4-c99.patch new file mode 100644 index 000000000000..de5f5d07847d --- /dev/null +++ b/sci-libs/hdf/files/hdf4-c99.patch @@ -0,0 +1,371 @@ +From a3d4d30fe457fc9a85fce5508119dffd3ace54c1 Mon Sep 17 00:00:00 2001 +From: Eli Schwartz +Date: Sun, 7 Apr 2024 21:28:39 -0400 +Subject: [PATCH 01/11] fix tests omitting required header + +sys/time.h is not time.h. + +Purports to be fixed by https://github.com/HDFGroup/hdf4/commit/276e2c205b767d31f9d0b757f53a36aee1e1f9b2 +which however doesn't directly include time.h, as of the current +version. In later releases it does. +--- + hdf/test/buffer.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/hdf/test/buffer.c b/hdf/test/buffer.c +index c7990e7..9f0f06f 100644 +--- a/hdf/test/buffer.c ++++ b/hdf/test/buffer.c +@@ -50,6 +50,7 @@ + #ifdef H4_HAVE_SYS_TIME_H + #include + #endif ++#include + #include "tutils.h" + #include "hfile.h" + +-- +2.43.2 + + +From 02ec8e25e096241e20664acfc6596767f050ec86 Mon Sep 17 00:00:00 2001 +From: Eli Schwartz +Date: Sun, 7 Apr 2024 20:41:06 -0400 +Subject: [PATCH 02/11] fix util omitting required header + +sys/wait.h is POSIX, but for some godforsaken reason upstream has +decided to only include it behind random OS identifier macros. In a +newer upstream version, they at least migrate over to including it +whenever the header exists. + +https://github.com/HDFGroup/hdf4/commit/67e11955e41471c8892acc3c8930ea538f719a03 +--- + hdf/util/he_file.c | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/hdf/util/he_file.c b/hdf/util/he_file.c +index 8686e2f..d6c5e7f 100644 +--- a/hdf/util/he_file.c ++++ b/hdf/util/he_file.c +@@ -17,9 +17,7 @@ + #include "he.h" + + /* get the prototype for the wait() func. */ +-#if defined SUN | defined HP9000 | defined IRIX | defined UNIX386 + #include +-#endif /* SUN | HP9000 */ + #ifdef H4_HAVE_UNISTD_H + #include + #endif +-- +2.43.2 + + +From 60223f44459e7b43a26bdccf473804f1f0fd710f Mon Sep 17 00:00:00 2001 +From: Eli Schwartz +Date: Sun, 7 Apr 2024 20:46:48 -0400 +Subject: [PATCH 03/11] another POSIX function with a missing header + +For this one it is not immediately apparent to me that it's fixed +upstream at all. Will check later. +--- + mfhdf/libsrc/file.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/mfhdf/libsrc/file.c b/mfhdf/libsrc/file.c +index a53301f..df73212 100644 +--- a/mfhdf/libsrc/file.c ++++ b/mfhdf/libsrc/file.c +@@ -20,6 +20,7 @@ + #include + #endif /* DEBUG */ + ++#include + #include + #include + #include "local_nc.h" +-- +2.43.2 + + +From 2b4772cf958a1af0fff6117d4f7127607d3f1a50 Mon Sep 17 00:00:00 2001 +From: Eli Schwartz +Date: Sun, 7 Apr 2024 20:48:56 -0400 +Subject: [PATCH 04/11] add brand new definition of function no one bothered to + define at all + +Added upstream in https://github.com/HDFGroup/hdf4/commit/8a4137d60e2d932703fc6ee91501ad374ccba885 +--- + mfhdf/test/hdftest.h | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/mfhdf/test/hdftest.h b/mfhdf/test/hdftest.h +index a211c49..a946e5c 100644 +--- a/mfhdf/test/hdftest.h ++++ b/mfhdf/test/hdftest.h +@@ -52,6 +52,9 @@ + + /*************************** Utility Functions ***************************/ + ++/* Generates the correct name for the test file */ ++intn make_datafilename(char* basename, char* testfile, unsigned int size); ++ + /* Calls SDcreate, SDwritedata, and SDendaccess */ + int32 make_SDS(int32 sd_id, char* sds_name, int32 type, int32 rank, + int32* dim_sizes, int32 unlim_dim, VOIDP written_data); +@@ -65,6 +68,9 @@ int32 make_Ext3D_SDS(int32 sd_id, char* sds_name, int32 type, int32 rank, + int32* dim_sizes, VOIDP written_data, + int32 offset, char* ext_file_name); + ++/* Verifies the unlimited dimension's size and the variable's data. */ ++int verify_info_data(int32 sds_id, int32 expected_dimsize, int16 *result); ++ + /* Calls SDnametoindex and SDselect */ + int32 get_SDSbyName(int32 sd_id, char* sds_name); + +-- +2.43.2 + + +From 1be129c91ec9db6991daebddfe5124cc8180f0ea Mon Sep 17 00:00:00 2001 +From: Eli Schwartz +Date: Sun, 7 Apr 2024 20:58:13 -0400 +Subject: [PATCH 05/11] fix typoed function definition + +https://github.com/HDFGroup/hdf4/commit/490abfc71219657ecfa81cd90413b623f73603fd +--- + mfhdf/test/hdftest.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/mfhdf/test/hdftest.c b/mfhdf/test/hdftest.c +index da9a36b..04f8641 100644 +--- a/mfhdf/test/hdftest.c ++++ b/mfhdf/test/hdftest.c +@@ -59,7 +59,7 @@ extern int test_SDSprops(); + extern int test_coordvar(); + extern int test_chunk(); + extern int test_compression(); +-extern int test_dimension(); ++extern int test_dimensions(); + extern int test_attributes(); + extern int test_datasizes(); + extern int test_datainfo(); +-- +2.43.2 + + +From 60fcf1802bd015b01095c6a0463200f09c47f677 Mon Sep 17 00:00:00 2001 +From: Eli Schwartz +Date: Sun, 7 Apr 2024 21:53:59 -0400 +Subject: [PATCH 06/11] make defines actually do anything whatsoever + +Rendered obsolete by https://github.com/HDFGroup/hdf4/commit/218c8da49eda25799577ac905209c1e972a77771 +--- + mfhdf/test/tdatainfo.c | 7 +++---- + 1 file changed, 3 insertions(+), 4 deletions(-) + +diff --git a/mfhdf/test/tdatainfo.c b/mfhdf/test/tdatainfo.c +index df2539b..ab36044 100644 +--- a/mfhdf/test/tdatainfo.c ++++ b/mfhdf/test/tdatainfo.c +@@ -23,6 +23,9 @@ + * -BMR, Jul 2010 + ****************************************************************************/ + ++#ifndef DATAINFO_TESTER ++#define DATAINFO_TESTER /* to include mfdatainfo.h */ ++#endif + #include "mfhdf.h" + + #ifdef H4_HAVE_SYS_TYPES_H +@@ -44,10 +47,6 @@ + #define ssize_t int32 + #endif + +-#ifndef DATAINFO_TESTER +-#define DATAINFO_TESTER /* to include mfdatainfo.h */ +-#endif +- + #ifdef H4_HAVE_LIBSZ + #include "szlib.h" + #endif +-- +2.43.2 + + +From e967cb577fa0ba39cee7d5a128672c61adbb839e Mon Sep 17 00:00:00 2001 +From: Eli Schwartz +Date: Sun, 7 Apr 2024 22:01:14 -0400 +Subject: [PATCH 07/11] Include correct header + +https://github.com/HDFGroup/hdf4/commit/3f61fb461d2d19cc1d9da41f29e5cbb2ce0c4365 +--- + mfhdf/test/tfile.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/mfhdf/test/tfile.c b/mfhdf/test/tfile.c +index a90fc02..b0ea001 100644 +--- a/mfhdf/test/tfile.c ++++ b/mfhdf/test/tfile.c +@@ -13,6 +13,7 @@ + + /* $Id: tfile.c 5218 2009-08-29 04:21:49Z bmribler $ */ + ++#include "local_nc.h" + #include "mfhdf.h" + + #ifdef HDF +-- +2.43.2 + + +From fda204abcb83516177d6c81a23261e1c641bcdcf Mon Sep 17 00:00:00 2001 +From: Eli Schwartz +Date: Sun, 7 Apr 2024 22:03:18 -0400 +Subject: [PATCH 08/11] include header needed for unlink() + +Upstream in https://github.com/HDFGroup/hdf4/commit/9055b673990b2dc3c9248f720f3e8a03f8d86434 + +It is unclear why they think it was only needed then... +--- + mfhdf/test/tsd.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/mfhdf/test/tsd.c b/mfhdf/test/tsd.c +index 397aeba..a6e9b6c 100644 +--- a/mfhdf/test/tsd.c ++++ b/mfhdf/test/tsd.c +@@ -15,6 +15,8 @@ + * tsd.c - tests SDstart for file with no write permission + ****************************************************************************/ + ++#include ++ + #include "mfhdf.h" + + #ifdef HDF +-- +2.43.2 + + +From 572ef6889599b58535bd2285d98ac63c7fdf870d Mon Sep 17 00:00:00 2001 +From: Eli Schwartz +Date: Sun, 7 Apr 2024 22:49:39 -0400 +Subject: [PATCH 09/11] include the getopt() header + +Which isn't getopt.h, though upstream helpfully added one in +https://github.com/HDFGroup/hdf4/commit/9be7f29942d286873d0b4fa125be11b3f79f6916 + +They then went a bit further and stopped using getopt at all: +https://github.com/HDFGroup/hdf4/commit/0b3ad421b3ba8045d078196edd0492067f1ea576 + +Helpful rationale: +> Instead of relying on the system getopt(), HDF4 includes its own + +Intriguing. + +"Fortunately" this is a patch for an old version of hdf4. All we want to +do is get the POSIX prototype which we intend to link to. +--- + mfhdf/hdiff/hdiff_main.c | 1 + + mfhdf/ncdump/ncdump.c | 1 + + mfhdf/ncgen/main.c | 1 + + 3 files changed, 3 insertions(+) + +diff --git a/mfhdf/hdiff/hdiff_main.c b/mfhdf/hdiff/hdiff_main.c +index 2fb2342..e2987be 100644 +--- a/mfhdf/hdiff/hdiff_main.c ++++ b/mfhdf/hdiff/hdiff_main.c +@@ -12,6 +12,7 @@ + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + + ++#include + #include + #include + #include +diff --git a/mfhdf/ncdump/ncdump.c b/mfhdf/ncdump/ncdump.c +index bdaa120..8697c0a 100644 +--- a/mfhdf/ncdump/ncdump.c ++++ b/mfhdf/ncdump/ncdump.c +@@ -4,6 +4,7 @@ + * $Id$ + *********************************************************************/ + ++#include + #include + #include + #include +diff --git a/mfhdf/ncgen/main.c b/mfhdf/ncgen/main.c +index 16c0204..7f6e2c0 100644 +--- a/mfhdf/ncgen/main.c ++++ b/mfhdf/ncgen/main.c +@@ -4,6 +4,7 @@ + * $Id$ + *********************************************************************/ + ++#include + #include + #include + #include +-- +2.43.2 + + +From b569c20be9d3c65ba48bd2a81a5daa9ee8a419bc Mon Sep 17 00:00:00 2001 +From: Eli Schwartz +Date: Sun, 7 Apr 2024 22:57:19 -0400 +Subject: [PATCH 10/11] Remove never-defined macros that prevented including a + crucial header + +Also removed upstream: +https://github.com/HDFGroup/hdf4/commit/3f61fb461d2d19cc1d9da41f29e5cbb2ce0c4365 +--- + mfhdf/ncgen/close.c | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/mfhdf/ncgen/close.c b/mfhdf/ncgen/close.c +index 036d8f0..3dedbd7 100644 +--- a/mfhdf/ncgen/close.c ++++ b/mfhdf/ncgen/close.c +@@ -6,9 +6,7 @@ + + #include + #include "ncgen.h" +-#ifdef EIP + #include "genlib.h" +-#endif + + extern void fline(), cline(); + extern int netcdf_flag; +-- +2.43.2 + + +From 9bce6a7a5ea7095f4a51d38bd7e378670c33fb06 Mon Sep 17 00:00:00 2001 +From: Eli Schwartz +Date: Sun, 7 Apr 2024 23:23:16 -0400 +Subject: [PATCH 11/11] fix blatantly missing type + +Upstream applied via: +https://github.com/HDFGroup/hdf4/commit/38e08e0d12d2ee84917111583a007fdcb5ad1aed +--- + mfhdf/hdfimport/gen_sds_floats.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/mfhdf/hdfimport/gen_sds_floats.c b/mfhdf/hdfimport/gen_sds_floats.c +index 81f62c5..d08576f 100644 +--- a/mfhdf/hdfimport/gen_sds_floats.c ++++ b/mfhdf/hdfimport/gen_sds_floats.c +@@ -23,7 +23,7 @@ + #define RANK2 2 /* Number of dimensions of the SDS */ + #define RANK3 3 /* Number of dimensions of the SDS */ + +-main() ++int main() + { + /************************* Variable declaration ************************/ + +-- +2.43.2 + diff --git a/sci-libs/hdf/hdf-4.2.15-r1.ebuild b/sci-libs/hdf/hdf-4.2.15-r1.ebuild deleted file mode 100644 index c809222acf56..000000000000 --- a/sci-libs/hdf/hdf-4.2.15-r1.ebuild +++ /dev/null @@ -1,83 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -FORTRAN_NEEDED=fortran - -inherit fortran-2 toolchain-funcs autotools flag-o-matic - -DESCRIPTION="General purpose library and format for storing scientific data" -HOMEPAGE="https://www.hdfgroup.org/hdf4.html" -SRC_URI="https://support.hdfgroup.org/ftp/HDF/releases/${PN^^}${PV}/src/${P}.tar.bz2" -SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-4.2.15-arch-patches-1.tar.bz2" -SRC_URI+=" https://dev.gentoo.org/~dlan/distfiles/${CATEGORY}/${PN}/${PN}-4.2.15-arch-patches-1.tar.bz2" - -LICENSE="NCSA-HDF" -SLOT="0" -KEYWORDS="amd64 ~arm ~ia64 ~ppc ~riscv x86 ~amd64-linux ~x86-linux" -IUSE="examples fortran szip static-libs test" -RESTRICT="!test? ( test )" -REQUIRED_USE="test? ( szip )" - -RDEPEND="net-libs/libtirpc:= - sys-libs/zlib - virtual/jpeg:0 - szip? ( virtual/szip )" -DEPEND="${RDEPEND} - test? ( virtual/szip )" - -PATCHES=( - "${FILESDIR}"/${PN}-4.2.15-enable-fortran-shared.patch - "${FILESDIR}"/${PN}-4.2.15-fix-rpch-location.patch - - # May need to extend these for more arches in future. - # bug #664856 - "${WORKDIR}"/${PN}-4.2.15-arch-patches/ -) - -src_prepare() { - default - - sed -i -e 's/-R/-L/g' config/commence.am || die #rpath - eautoreconf -} - -src_configure() { - [[ $(tc-getFC) = *gfortran ]] && append-fflags -fno-range-check - # GCC 10 workaround - # bug #723014 - append-fflags $(test-flags-FC -fallow-argument-mismatch) - - econf \ - --enable-shared \ - --enable-production=gentoo \ - --disable-netcdf \ - $(use_enable fortran) \ - $(use_enable static-libs static) \ - $(use_with szip szlib) \ - CC="$(tc-getCC)" -} - -src_install() { - default - - if ! use static-libs; then - find "${ED}" -name '*.la' -delete || die - fi - - dodoc release_notes/{RELEASE,HISTORY,bugs_fixed,misc_docs}.txt - - cd "${ED}/usr" || die - if use examples; then - mv share/hdf4_examples share/doc/${PF}/examples || die - docompress -x /usr/share/doc/${PF}/examples - else - rm -r share/hdf4_examples || die - fi - - mv bin/ncgen{,-hdf} || die - mv bin/ncdump{,-hdf} || die - mv share/man/man1/ncgen{,-hdf}.1 || die - mv share/man/man1/ncdump{,-hdf}.1 || die -} diff --git a/sci-libs/hdf/hdf-4.2.15-r2.ebuild b/sci-libs/hdf/hdf-4.2.15-r2.ebuild new file mode 100644 index 000000000000..02fc69143873 --- /dev/null +++ b/sci-libs/hdf/hdf-4.2.15-r2.ebuild @@ -0,0 +1,92 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +FORTRAN_NEEDED=fortran + +inherit fortran-2 toolchain-funcs autotools flag-o-matic + +DESCRIPTION="General purpose library and format for storing scientific data" +HOMEPAGE="https://www.hdfgroup.org/hdf4.html" +SRC_URI="https://support.hdfgroup.org/ftp/HDF/releases/${PN^^}${PV}/src/${P}.tar.bz2" +SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-4.2.15-arch-patches-1.tar.bz2" +SRC_URI+=" https://dev.gentoo.org/~dlan/distfiles/${CATEGORY}/${PN}/${PN}-4.2.15-arch-patches-1.tar.bz2" + +LICENSE="NCSA-HDF" +SLOT="0" +KEYWORDS="amd64 ~arm ~ia64 ~ppc ~riscv x86 ~amd64-linux ~x86-linux" +IUSE="examples fortran szip static-libs test" +RESTRICT="!test? ( test )" +REQUIRED_USE="test? ( szip )" + +RDEPEND="net-libs/libtirpc:= + sys-libs/zlib + virtual/jpeg:0 + szip? ( virtual/szip )" +DEPEND="${RDEPEND} + test? ( virtual/szip )" + +PATCHES=( + "${FILESDIR}"/${PN}-4.2.15-enable-fortran-shared.patch + "${FILESDIR}"/${PN}-4.2.15-fix-rpch-location.patch + + # May need to extend these for more arches in future. + # bug #664856 + "${WORKDIR}"/${PN}-4.2.15-arch-patches/ + + # backport fix for Modern C + "${FILESDIR}"/hdf4-c99.patch + + # These tools were dropped upstream. Get them from netcdf... + "${FILESDIR}"/0001-simply-do-not-build-the-mfhdf-tools-ncgen-ncdump.patch +) + +src_prepare() { + default + + sed -i -e 's/-R/-L/g' config/commence.am || die #rpath + eautoreconf +} + +src_configure() { + # -Werror=strict-aliasing, -Werror=lto-type-mismatch + # https://bugs.gentoo.org/862720 + # + # Do not trust with LTO either, just because of strict-aliasing. + # But also because it does have blatant LTO errors too. + append-flags -fno-strict-aliasing + filter-lto + + [[ $(tc-getFC) = *gfortran ]] && append-fflags -fno-range-check + # GCC 10 workaround + # bug #723014 + append-fflags $(test-flags-FC -fallow-argument-mismatch) + + econf \ + --enable-shared \ + --enable-production=gentoo \ + --disable-netcdf \ + $(use_enable fortran) \ + $(use_enable static-libs static) \ + $(use_with szip szlib) \ + CC="$(tc-getCC)" +} + +src_install() { + default + + if ! use static-libs; then + find "${ED}" -name '*.la' -delete || die + fi + + dodoc release_notes/{RELEASE,HISTORY,bugs_fixed,misc_docs}.txt + + cd "${ED}/usr" || die + if use examples; then + mv share/hdf4_examples share/doc/${PF}/examples || die + docompress -x /usr/share/doc/${PF}/examples + else + rm -r share/hdf4_examples || die + fi +} -- cgit v1.2.3