The attached diff updates math/hdf5 to the latest version 1.12.0.
- enable fortran
- API changes require major bump to all shlib
- use configure argument for example dir instead of post-install mv(1)
- pull patches from upstream to respect DESTDIR for examples
(https://github.com/HDFGroup/hdf5/commit/4cebd8aa6c965fe2e5dde6dbff36b2be3ca58bf1)
- patch h5repack_plugin.sh test to work with our cp(1)
The extensive hdf5 test-suite passes on amd64. My arm64 is too slow so it runs into
the test timeout. Checking currently if raising HDF5_ALARM_SECONDS helps.
Also tested on sparc64, but fheap tests fail there.
Also compile and partially run-time tested where especially relevant to me:
math/armadillo
math/matio
math/netcdf
math/octave
math/py-h5py,python3
math/py-netcdf4
math/py-tables
Currently NOT tested:
geo/gdal
geo/gdal,python3
Comments? Tests? OKs?
-m
Index: Makefile
===================================================================
RCS file: /cvs/ports/math/hdf5/Makefile,v
retrieving revision 1.21
diff -u -p -u -p -r1.21 Makefile
--- Makefile 12 Oct 2020 06:56:07 -0000 1.21
+++ Makefile 1 Dec 2020 19:32:37 -0000
@@ -2,13 +2,15 @@
COMMENT = Hierarchical Data Format 5 Technology suite
-V = 1.10.7
+V = 1.12.0
DISTNAME = hdf5-${V}
-SHARED_LIBS += hdf5 2.2 # 106.0
-SHARED_LIBS += hdf5_cpp 6.2 # 106.0
-SHARED_LIBS += hdf5_hl 2.0 # 101.4
-SHARED_LIBS += hdf5_hl_cpp 3.0 # 101.5
+SHARED_LIBS += hdf5 3.0 # 200.0
+SHARED_LIBS += hdf5_cpp 7.0 # 200.0
+SHARED_LIBS += hdf5_hl 3.0 # 200.0
+SHARED_LIBS += hdf5_hl_cpp 4.0 # 200.0
+SHARED_LIBS += hdf5_fortran 0.0 # 200.0
+SHARED_LIBS += hdf5hl_fortran 0.0 # 200.0
CATEGORIES = math
@@ -24,15 +26,17 @@ WANTLIB += c m ${COMPILER_LIBCXX} z
COMPILER = base-clang ports-gcc base-gcc
MASTER_SITES = https://support.hdfgroup.org/ftp/HDF5/current/src/ \
- https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-${V}/src/
+ https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.12/hdf5-${V}/src/
+MODULES = fortran
SEPARATE_BUILD = Yes
CONFIGURE_STYLE = gnu
-CONFIGURE_ARGS = --enable-cxx
+CONFIGURE_ARGS = --enable-cxx \
+ --enable-fortran \
+ --with-examplesdir=${PREFIX}/share/examples/hdf5
post-install:
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/hdf5
${INSTALL_DATA} ${WRKSRC}/COPYING ${PREFIX}/share/doc/hdf5
- mv ${PREFIX}/share/hdf5_examples ${PREFIX}/share/examples/hdf5
.include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /cvs/ports/math/hdf5/distinfo,v
retrieving revision 1.10
diff -u -p -u -p -r1.10 distinfo
--- distinfo 12 Oct 2020 06:56:07 -0000 1.10
+++ distinfo 1 Dec 2020 19:32:37 -0000
@@ -1,2 +1,2 @@
-SHA256 (hdf5-1.10.7.tar.gz) = ehoKVDcSdc4t/FzQk3dbsCXDZYRlEpYeflzq7LQ37xU=
-SIZE (hdf5-1.10.7.tar.gz) = 12408700
+SHA256 (hdf5-1.12.0.tar.gz) = pi3LJ2ZYy3jmeV3Sm/km7XqbxO3253AlzSxomo+XwXo=
+SIZE (hdf5-1.12.0.tar.gz) = 12580850
Index: patches/patch-c++_examples_Makefile_in
===================================================================
RCS file: patches/patch-c++_examples_Makefile_in
diff -N patches/patch-c++_examples_Makefile_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-c++_examples_Makefile_in 1 Dec 2020 19:32:37 -0000
@@ -0,0 +1,16 @@
+$OpenBSD$
+
+Index: c++/examples/Makefile.in
+--- c++/examples/Makefile.in.orig
++++ c++/examples/Makefile.in
+@@ -709,8 +709,8 @@ CXX_API = yes
+
+ # Where to install examples
+ # Note: no '/' after DESTDIR. Explanation in commence.am
+-EXAMPLEDIR = $(examplesdir)/c++
+-EXAMPLETOPDIR = $(examplesdir)
++EXAMPLEDIR = ${DESTDIR}$(examplesdir)/c++
++EXAMPLETOPDIR = ${DESTDIR}$(examplesdir)
+
+ # Assume that all tests in this directory are examples, and tell
+ # conclude.am when to build them.
Index: patches/patch-examples_Makefile_in
===================================================================
RCS file: patches/patch-examples_Makefile_in
diff -N patches/patch-examples_Makefile_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-examples_Makefile_in 1 Dec 2020 19:32:37 -0000
@@ -0,0 +1,16 @@
+$OpenBSD$
+
+Index: examples/Makefile.in
+--- examples/Makefile.in.orig
++++ examples/Makefile.in
+@@ -725,8 +725,8 @@ EXTLINK_DIRS = red blue u2w
+
+ # Example directory
+ # Note: no '/' after DESTDIR. Explanation in commence.am
+-EXAMPLEDIR = $(examplesdir)/c
+-EXAMPLETOPDIR = $(examplesdir)
++EXAMPLEDIR = ${DESTDIR}$(examplesdir)/c
++EXAMPLETOPDIR = ${DESTDIR}$(examplesdir)
+ @BUILD_SHARED_SZIP_CONDITIONAL_TRUE@LD_LIBRARY_PATH = $(LL_PATH)
+
+ # Assume that all tests in this directory are examples, and tell
Index: patches/patch-fortran_examples_Makefile_in
===================================================================
RCS file: patches/patch-fortran_examples_Makefile_in
diff -N patches/patch-fortran_examples_Makefile_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-fortran_examples_Makefile_in 1 Dec 2020 19:32:37 -0000
@@ -0,0 +1,16 @@
+$OpenBSD$
+
+Index: fortran/examples/Makefile.in
+--- fortran/examples/Makefile.in.orig
++++ fortran/examples/Makefile.in
+@@ -722,8 +722,8 @@ FORTRAN_API = yes
+
+ # Tell automake how to install examples
+ # Note: no '/' after DESTDIR. Explanation in commence.am
+-EXAMPLEDIR = $(examplesdir)/fortran
+-EXAMPLETOPDIR = $(examplesdir)
++EXAMPLEDIR = ${DESTDIR}$(examplesdir)/fortran
++EXAMPLETOPDIR = ${DESTDIR}$(examplesdir)
+
+ # Assume that all tests in this directory are examples, and tell
+ # conclude.am when to build them.
Index: patches/patch-hl_c++_examples_Makefile_in
===================================================================
RCS file: patches/patch-hl_c++_examples_Makefile_in
diff -N patches/patch-hl_c++_examples_Makefile_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-hl_c++_examples_Makefile_in 1 Dec 2020 19:32:37 -0000
@@ -0,0 +1,16 @@
+$OpenBSD$
+
+Index: hl/c++/examples/Makefile.in
+--- hl/c++/examples/Makefile.in.orig
++++ hl/c++/examples/Makefile.in
+@@ -698,8 +698,8 @@ CXX_API = yes
+
+ # Where to install examples
+ # Note: no '/' after DESTDIR. Explanation in commence.am
+-EXAMPLEDIR = $(examplesdir)/hl/c++
+-EXAMPLETOPDIR = $(examplesdir)/hl
++EXAMPLEDIR = ${DESTDIR}$(examplesdir)/hl/c++
++EXAMPLETOPDIR = ${DESTDIR}$(examplesdir)/hl
+
+ # Assume that all tests in this directory are examples, and tell
+ # conclude.am when to build them.
Index: patches/patch-hl_examples_Makefile_in
===================================================================
RCS file: patches/patch-hl_examples_Makefile_in
diff -N patches/patch-hl_examples_Makefile_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-hl_examples_Makefile_in 1 Dec 2020 19:32:37 -0000
@@ -0,0 +1,16 @@
+$OpenBSD$
+
+Index: hl/examples/Makefile.in
+--- hl/examples/Makefile.in.orig
++++ hl/examples/Makefile.in
+@@ -687,8 +687,8 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog *.clog2 *.
+
+ # Example directory
+ # Note: no '/' after DESTDIR. Explanation in commence.am
+-EXAMPLEDIR = $(examplesdir)/hl/c
+-EXAMPLETOPDIR = $(examplesdir)/hl
++EXAMPLEDIR = ${DESTDIR}$(examplesdir)/hl/c
++EXAMPLETOPDIR = ${DESTDIR}$(examplesdir)/hl
+ INSTALL_SCRIPT_FILES = run-hlc-ex.sh
+ INSTALL_TOP_SCRIPT_FILES = run-hl-ex.sh
+
Index: patches/patch-hl_fortran_examples_Makefile_in
===================================================================
RCS file: patches/patch-hl_fortran_examples_Makefile_in
diff -N patches/patch-hl_fortran_examples_Makefile_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-hl_fortran_examples_Makefile_in 1 Dec 2020 19:32:37 -0000
@@ -0,0 +1,16 @@
+$OpenBSD$
+
+Index: hl/fortran/examples/Makefile.in
+--- hl/fortran/examples/Makefile.in.orig
++++ hl/fortran/examples/Makefile.in
+@@ -711,8 +711,8 @@ FORTRAN_API = yes
+
+ # Tell automake how to install examples
+ # Note: no '/' after DESTDIR. Explanation in commence.am
+-EXAMPLEDIR = $(examplesdir)/hl/fortran
+-EXAMPLETOPDIR = $(examplesdir)/hl
++EXAMPLEDIR = ${DESTDIR}$(examplesdir)/hl/fortran
++EXAMPLETOPDIR = ${DESTDIR}$(examplesdir)/hl
+
+ # Assume that all tests in this directory are examples, and tell
+ # conclude.am when to build them.
Index: patches/patch-tools_test_h5repack_h5repack_plugin_sh_in
===================================================================
RCS file: patches/patch-tools_test_h5repack_h5repack_plugin_sh_in
diff -N patches/patch-tools_test_h5repack_h5repack_plugin_sh_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-tools_test_h5repack_h5repack_plugin_sh_in 1 Dec 2020 19:32:37 -0000
@@ -0,0 +1,14 @@
+$OpenBSD$
+
+Index: tools/test/h5repack/h5repack_plugin.sh.in
+--- tools/test/h5repack/h5repack_plugin.sh.in.orig
++++ tools/test/h5repack/h5repack_plugin.sh.in
+@@ -37,7 +37,7 @@ PLUGIN_LIBDIR=testdir3
+ RM='rm -rf'
+
+ GREP='grep'
+-CP='cp'
++CP='cp -R'
+ DIRNAME='dirname'
+ LS='ls'
+ AWK='awk'
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/math/hdf5/pkg/PLIST,v
retrieving revision 1.7
diff -u -p -u -p -r1.7 PLIST
--- pkg/PLIST 12 Oct 2020 06:56:07 -0000 1.7
+++ pkg/PLIST 1 Dec 2020 19:32:37 -0000
@@ -8,6 +8,7 @@ bin/h5cc
@bin bin/h5debug
@bin bin/h5diff
@bin bin/h5dump
+bin/h5fc
@bin bin/h5format_convert
@bin bin/h5import
@bin bin/h5jam
@@ -20,8 +21,6 @@ bin/h5redeploy
@bin bin/h5stat
@bin bin/h5unjam
@bin bin/h5watch
-@bin bin/mirror_server
-@bin bin/mirror_server_stop
include/H5ACpublic.h
include/H5AbstractDs.h
include/H5Apublic.h
@@ -43,6 +42,7 @@ include/H5DataType.h
include/H5DcreatProp.h
include/H5Dpublic.h
include/H5DxferProp.h
+include/H5ESpublic.h
include/H5EnumType.h
include/H5Epubgen.h
include/H5Epublic.h
@@ -52,14 +52,12 @@ include/H5FDdirect.h
include/H5FDfamily.h
include/H5FDhdfs.h
include/H5FDlog.h
-include/H5FDmirror.h
include/H5FDmpi.h
include/H5FDmpio.h
include/H5FDmulti.h
include/H5FDpublic.h
include/H5FDros3.h
include/H5FDsec2.h
-include/H5FDsplitter.h
include/H5FDstdio.h
include/H5FDwindows.h
include/H5FaccProp.h
@@ -82,6 +80,7 @@ include/H5Library.h
include/H5Location.h
include/H5Lpublic.h
include/H5MMpublic.h
+include/H5Mpublic.h
include/H5Object.h
include/H5OcreatProp.h
include/H5Opublic.h
@@ -97,14 +96,47 @@ include/H5Spublic.h
include/H5StrType.h
include/H5TBpublic.h
include/H5Tpublic.h
+include/H5VLconnector.h
+include/H5VLconnector_passthru.h
+include/H5VLnative.h
+include/H5VLpassthru.h
+include/H5VLpublic.h
include/H5VarLenType.h
include/H5Zpublic.h
include/H5api_adpt.h
+include/H5f90i.h
+include/H5f90i_gen.h
include/H5overflow.h
include/H5pubconf.h
include/H5public.h
include/H5version.h
+include/h5_gen.mod
+include/h5a.mod
+include/h5d.mod
+include/h5ds.mod
+include/h5e.mod
+include/h5f.mod
+include/h5fortkit.mod
+include/h5fortran_types.mod
+include/h5g.mod
+include/h5global.mod
+include/h5i.mod
+include/h5im.mod
+include/h5l.mod
+include/h5lib.mod
+include/h5lt.mod
+include/h5lt_const.mod
+include/h5o.mod
+include/h5p.mod
+include/h5r.mod
+include/h5s.mod
+include/h5t.mod
+include/h5tb.mod
+include/h5tb_const.mod
+include/h5vl.mod
+include/h5z.mod
include/hdf5.h
+include/hdf5.mod
include/hdf5_hl.h
@static-lib lib/libhdf5.a
lib/libhdf5.la
@@ -113,12 +145,19 @@ lib/libhdf5.settings
@static-lib lib/libhdf5_cpp.a
lib/libhdf5_cpp.la
@lib lib/libhdf5_cpp.so.${LIBhdf5_cpp_VERSION}
+@static-lib lib/libhdf5_fortran.a
+lib/libhdf5_fortran.la
+@lib lib/libhdf5_fortran.so.${LIBhdf5_fortran_VERSION}
@static-lib lib/libhdf5_hl.a
lib/libhdf5_hl.la
@lib lib/libhdf5_hl.so.${LIBhdf5_hl_VERSION}
@static-lib lib/libhdf5_hl_cpp.a
lib/libhdf5_hl_cpp.la
@lib lib/libhdf5_hl_cpp.so.${LIBhdf5_hl_cpp_VERSION}
+@static-lib lib/libhdf5_hl_fortran.a
+@static-lib lib/libhdf5hl_fortran.a
+lib/libhdf5hl_fortran.la
+@lib lib/libhdf5hl_fortran.so.${LIBhdf5hl_fortran_VERSION}
share/doc/hdf5/
share/doc/hdf5/COPYING
share/examples/hdf5/
@@ -151,7 +190,6 @@ share/examples/hdf5/c/h5_crtdat.c
share/examples/hdf5/c/h5_crtgrp.c
share/examples/hdf5/c/h5_crtgrpar.c
share/examples/hdf5/c/h5_crtgrpd.c
-share/examples/hdf5/c/h5_debug_trace.c
share/examples/hdf5/c/h5_drivers.c
share/examples/hdf5/c/h5_elink_unix2win.c
share/examples/hdf5/c/h5_extend.c
@@ -161,8 +199,10 @@ share/examples/hdf5/c/h5_group.c
share/examples/hdf5/c/h5_mount.c
share/examples/hdf5/c/h5_rdwt.c
share/examples/hdf5/c/h5_read.c
-share/examples/hdf5/c/h5_ref2reg.c
-share/examples/hdf5/c/h5_reference.c
+share/examples/hdf5/c/h5_ref2reg_deprec.c
+share/examples/hdf5/c/h5_ref_compat.c
+share/examples/hdf5/c/h5_ref_extern.c
+share/examples/hdf5/c/h5_reference_deprec.c
share/examples/hdf5/c/h5_select.c
share/examples/hdf5/c/h5_shared_mesg.c
share/examples/hdf5/c/h5_subset.c
@@ -177,6 +217,28 @@ share/examples/hdf5/c/h5_vds.c
share/examples/hdf5/c/h5_write.c
share/examples/hdf5/c/ph5example.c
share/examples/hdf5/c/run-c-ex.sh
+share/examples/hdf5/fortran/
+share/examples/hdf5/fortran/compound.f90
+share/examples/hdf5/fortran/compound_complex_fortran2003.f90
+share/examples/hdf5/fortran/compound_fortran2003.f90
+share/examples/hdf5/fortran/h5_cmprss.f90
+share/examples/hdf5/fortran/h5_crtatt.f90
+share/examples/hdf5/fortran/h5_crtdat.f90
+share/examples/hdf5/fortran/h5_crtgrp.f90
+share/examples/hdf5/fortran/h5_crtgrpar.f90
+share/examples/hdf5/fortran/h5_crtgrpd.f90
+share/examples/hdf5/fortran/h5_extend.f90
+share/examples/hdf5/fortran/h5_rdwt.f90
+share/examples/hdf5/fortran/h5_subset.f90
+share/examples/hdf5/fortran/hyperslab.f90
+share/examples/hdf5/fortran/mountexample.f90
+share/examples/hdf5/fortran/nested_derived_type.f90
+share/examples/hdf5/fortran/ph5example.f90
+share/examples/hdf5/fortran/refobjexample.f90
+share/examples/hdf5/fortran/refregexample.f90
+share/examples/hdf5/fortran/run-fortran-ex.sh
+share/examples/hdf5/fortran/rwdset_fortran2003.f90
+share/examples/hdf5/fortran/selectele.f90
share/examples/hdf5/hl/
share/examples/hdf5/hl/c/
share/examples/hdf5/hl/c++/
@@ -205,5 +267,9 @@ share/examples/hdf5/hl/c/image8.txt
share/examples/hdf5/hl/c/pal_rgb.h
share/examples/hdf5/hl/c/ptExampleFL.c
share/examples/hdf5/hl/c/run-hlc-ex.sh
+share/examples/hdf5/hl/fortran/
+share/examples/hdf5/hl/fortran/ex_ds1.f90
+share/examples/hdf5/hl/fortran/exlite.f90
+share/examples/hdf5/hl/fortran/run-hlfortran-ex.sh
share/examples/hdf5/hl/run-hl-ex.sh
share/examples/hdf5/run-all-ex.sh
No comments:
Post a Comment