diff options
| author | Wen Heping <wen@FreeBSD.org> | 2026-04-22 02:01:33 +0000 |
|---|---|---|
| committer | Wen Heping <wen@FreeBSD.org> | 2026-04-22 06:08:46 +0000 |
| commit | 168e0746c977d4bbf81a0d1bd6577092e8bab518 (patch) | |
| tree | 94a960e5914d97efe065dd7e4819a071408a9ff8 | |
| parent | ab94cd6c08e30d28afd92fd1593aa69dbdf2285a (diff) | |
science/hdf5-21: New port, copied from science/hdf5
HDF5 is a completely new Hierarchical Data Format product consisting of a data
format specification and a supporting library implementation. HDF5 is designed
to address some of the limitations of the older HDF product and to address
current and anticipated requirements of modern systems and applications.
HDF5 includes the following improvements:
- A new file format designed to address some of the deficiencies of HDF4.x,
particularly the need to store larger files and more objects per file.
- A simpler, more comprehensive data model that includes only two basic
structures: a multidimensional array of record structures, and a grouping
structure.
- A simpler, better-engineered library and API, with improved support for
parallel I/O, threads, and other requirements imposed by modern systems
and applications.
| -rw-r--r-- | science/Makefile | 1 | ||||
| -rw-r--r-- | science/hdf5-21/Makefile | 62 | ||||
| -rw-r--r-- | science/hdf5-21/distinfo | 3 | ||||
| -rw-r--r-- | science/hdf5-21/files/patch-src-H5FDdirect.c | 11 | ||||
| -rw-r--r-- | science/hdf5-21/pkg-descr | 14 | ||||
| -rw-r--r-- | science/hdf5-21/pkg-plist | 220 |
6 files changed, 311 insertions, 0 deletions
diff --git a/science/Makefile b/science/Makefile index 7cf3fd018ee7..82f5ecf89fe2 100644 --- a/science/Makefile +++ b/science/Makefile @@ -120,6 +120,7 @@ SUBDIR += hdf5 SUBDIR += hdf5-110 SUBDIR += hdf5-18 + SUBDIR += hdf5-21 SUBDIR += healpix SUBDIR += helfem SUBDIR += hepmc3 diff --git a/science/hdf5-21/Makefile b/science/hdf5-21/Makefile new file mode 100644 index 000000000000..66b3620cb22f --- /dev/null +++ b/science/hdf5-21/Makefile @@ -0,0 +1,62 @@ +PORTNAME= hdf5 +PORTVERSION= 2.1.1 +CATEGORIES= science archivers graphics +PKGNAMESUFFIX= -21 + +MAINTAINER= wen@FreeBSD.org +COMMENT= Hierarchical Data Format library (from NCSA) 2.1 +WWW= https://www.hdfgroup.org/HDF5/ + +LICENSE= BSD4CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +OPTIONS_DEFINE= FORTRAN SZIP +OPTIONS_DEFAULT= FORTRAN + +USES= cmake:testing cpe localbase pkgconfig tar:bzip2 +CPE_VENDOR= hdfgroup +TEST_TARGET= test +USE_LDCONFIG= yes +PORTSUFF= ${PORTNAME}${PKGNAMESUFFIX} +CMAKE_ARGS= -DHDF5_LIB_INFIX:STRING="-21" +EXAMPLESDIR= ${PREFIX}/share/examples/${PORTSUFF} + +USE_GITHUB= yes +GH_ACCOUNT= HDFGroup + +SUFF2FIX= c++/src/h5c++.in fortran/src/h5fc.in + +FORTRAN_USES= fortran +FORTRAN_CMAKE_BOOL= HDF5_BUILD_FORTRAN +FORTRAN_PLIST_SUB= FORTRAN="" +FORTRAN_PLIST_SUB_OFF= FORTRAN="@comment " +FORTRAN__VARS= FCFLAGS_f90="${FCFLAGS}" LIBS="-lstdc++" + +SZIP_CMAKE_BOOL= HDF5_ENABLE_SZIP_SUPPORT +SZIP_LIB_DEPENDS= libsz.so:science/libaec + +post-stage: + cd ${STAGEDIR}${PREFIX}/bin && ( \ + for f in `${FIND} . -type f`; do \ + ${MV} $$f $${f}-21; \ + done; \ + ) + ${MKDIR} ${STAGEDIR}${PREFIX}/include/hdf5-21 + ${MV} ${STAGEDIR}${PREFIX}/include/*.h \ + ${STAGEDIR}${PREFIX}/include/hdf5-21/ + @${MKDIR} ${STAGEDIR}${DATADIR}-21 ${STAGEDIR}${PREFIX}/lib/cmake/hdf5-21 + ${MV} ${STAGEDIR}${PREFIX}/cmake/* ${STAGEDIR}${PREFIX}/lib/cmake/hdf5-21 + + ${MV} ${STAGEDIR}${PREFIX}/lib/libhdf5.settings \ + ${STAGEDIR}${PREFIX}/lib/libhdf5-21.settings + ${RMDIR} ${STAGEDIR}${PREFIX}/cmake + +post-stage-FORTRAN-on: +.for ext in mod + ${MV} ${STAGEDIR}${PREFIX}/include/*.${ext} \ + ${STAGEDIR}${PREFIX}/include/hdf5-21/ +.endfor + ${MV} ${STAGEDIR}${PREFIX}/mod/* ${STAGEDIR}${PREFIX}/include/hdf5-21/ + ${RMDIR} ${STAGEDIR}${PREFIX}/mod + +.include <bsd.port.mk> diff --git a/science/hdf5-21/distinfo b/science/hdf5-21/distinfo new file mode 100644 index 000000000000..cae9d2126aa2 --- /dev/null +++ b/science/hdf5-21/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1776758119 +SHA256 (HDFGroup-hdf5-2.1.1_GH0.tar.gz) = 5849ed7a81be6bc84ff8aa65dd966430adf0daf71e6bcb734b7a37474f92c859 +SIZE (HDFGroup-hdf5-2.1.1_GH0.tar.gz) = 42074714 diff --git a/science/hdf5-21/files/patch-src-H5FDdirect.c b/science/hdf5-21/files/patch-src-H5FDdirect.c new file mode 100644 index 000000000000..055e931da400 --- /dev/null +++ b/science/hdf5-21/files/patch-src-H5FDdirect.c @@ -0,0 +1,11 @@ +--- src/H5FDdirect.c.orig 2023-01-30 14:52:51 UTC ++++ src/H5FDdirect.c +@@ -27,6 +27,8 @@ + * this file. */ + /* #define _XOPEN_SOURCE 600 */ + ++#define O_DIRECT 0x00010000 ++ + #include "H5private.h" /* Generic Functions */ + #include "H5Eprivate.h" /* Error handling */ + #include "H5Fprivate.h" /* File access */ diff --git a/science/hdf5-21/pkg-descr b/science/hdf5-21/pkg-descr new file mode 100644 index 000000000000..a3f64fcc8f13 --- /dev/null +++ b/science/hdf5-21/pkg-descr @@ -0,0 +1,14 @@ +HDF5 is a completely new Hierarchical Data Format product consisting of a data +format specification and a supporting library implementation. HDF5 is designed +to address some of the limitations of the older HDF product and to address +current and anticipated requirements of modern systems and applications. + +HDF5 includes the following improvements: +- A new file format designed to address some of the deficiencies of HDF4.x, + particularly the need to store larger files and more objects per file. +- A simpler, more comprehensive data model that includes only two basic + structures: a multidimensional array of record structures, and a grouping + structure. +- A simpler, better-engineered library and API, with improved support for + parallel I/O, threads, and other requirements imposed by modern systems + and applications. diff --git a/science/hdf5-21/pkg-plist b/science/hdf5-21/pkg-plist new file mode 100644 index 000000000000..bbda139e4834 --- /dev/null +++ b/science/hdf5-21/pkg-plist @@ -0,0 +1,220 @@ +bin/h5cc-21 +bin/h5clear-21 +bin/h5copy-21 +bin/h5debug-21 +bin/h5delete-21 +bin/h5diff-21 +bin/h5dump-21 +bin/h5format_convert-21 +bin/h5import-21 +bin/h5jam-21 +bin/h5ls-21 +bin/h5mkgrp-21 +bin/h5perf_serial-21 +bin/h5repack-21 +bin/h5repart-21 +bin/h5stat-21 +bin/h5unjam-21 +bin/h5watch-21 +include/hdf5-21/H5ACpublic.h +include/hdf5-21/H5Apublic.h +include/hdf5-21/H5Cpublic.h +include/hdf5-21/H5DOpublic.h +include/hdf5-21/H5DSpublic.h +include/hdf5-21/H5Dpublic.h +include/hdf5-21/H5ESdevelop.h +include/hdf5-21/H5ESpublic.h +include/hdf5-21/H5Epubgen.h +include/hdf5-21/H5Epublic.h +include/hdf5-21/H5FDcore.h +include/hdf5-21/H5FDdevelop.h +include/hdf5-21/H5FDdirect.h +include/hdf5-21/H5FDfamily.h +include/hdf5-21/H5FDhdfs.h +include/hdf5-21/H5FDioc.h +include/hdf5-21/H5FDlog.h +include/hdf5-21/H5FDmirror.h +include/hdf5-21/H5FDmpi.h +include/hdf5-21/H5FDmpio.h +include/hdf5-21/H5FDmulti.h +include/hdf5-21/H5FDonion.h +include/hdf5-21/H5FDpublic.h +include/hdf5-21/H5FDros3.h +include/hdf5-21/H5FDsec2.h +include/hdf5-21/H5FDsplitter.h +include/hdf5-21/H5FDstdio.h +include/hdf5-21/H5FDsubfiling.h +include/hdf5-21/H5FDwindows.h +include/hdf5-21/H5Fpublic.h +include/hdf5-21/H5Gpublic.h +include/hdf5-21/H5IMpublic.h +include/hdf5-21/H5Idevelop.h +include/hdf5-21/H5Ipublic.h +include/hdf5-21/H5LDpublic.h +include/hdf5-21/H5LTpublic.h +include/hdf5-21/H5Ldevelop.h +include/hdf5-21/H5Lpublic.h +include/hdf5-21/H5MMpublic.h +include/hdf5-21/H5Mpublic.h +include/hdf5-21/H5Opublic.h +include/hdf5-21/H5PLextern.h +include/hdf5-21/H5PLpublic.h +include/hdf5-21/H5PTpublic.h +include/hdf5-21/H5Ppublic.h +include/hdf5-21/H5Rpublic.h +include/hdf5-21/H5Spublic.h +include/hdf5-21/H5TBpublic.h +include/hdf5-21/H5TSdevelop.h +include/hdf5-21/H5Tdevelop.h +include/hdf5-21/H5Tpublic.h +include/hdf5-21/H5VLconnector.h +include/hdf5-21/H5VLconnector_passthru.h +include/hdf5-21/H5VLnative.h +include/hdf5-21/H5VLpassthru.h +include/hdf5-21/H5VLpublic.h +include/hdf5-21/H5Zdevelop.h +include/hdf5-21/H5Zpublic.h +include/hdf5-21/H5api_adpt.h +include/hdf5-21/H5overflow.h +include/hdf5-21/H5pubconf.h +include/hdf5-21/H5public.h +include/hdf5-21/H5version.h +include/hdf5-21/hdf5.h +include/hdf5-21/hdf5_hl.h +lib/cmake/hdf5-21/Modules/Findlibaec.cmake +lib/cmake/hdf5-21/hdf5-config-version.cmake +lib/cmake/hdf5-21/hdf5-config.cmake +lib/cmake/hdf5-21/hdf5-targets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/hdf5-21/hdf5-targets.cmake +lib/cmake/hdf5-21/hdf5_static-targets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/hdf5-21/hdf5_static-targets.cmake +lib/libhdf5-21.a +lib/libhdf5-21.settings +lib/libhdf5-21.so +lib/libhdf5-21.so.320 +lib/libhdf5-21.so.320.1.1 +lib/libhdf5-21_hl.a +lib/libhdf5-21_hl.so +lib/libhdf5-21_hl.so.320 +lib/libhdf5-21_hl.so.320.0.2 +lib/libhdf5-21_tools.a +lib/libhdf5-21_tools.so +lib/libhdf5-21_tools.so.320 +lib/libhdf5-21_tools.so.320.0.2 +libdata/pkgconfig/hdf5.pc +libdata/pkgconfig/hdf5_hl.pc +share/CHANGELOG.md +share/LICENSE +share/USING_HDF5_CMake.txt +@dir %%DATADIR%%-21 +%%FORTRAN%%bin/h5fc-21 +%%FORTRAN%%include/H5config_f.inc +%%FORTRAN%%include/hdf5-21/H5f90.h +%%FORTRAN%%include/hdf5-21/H5f90i.h +%%FORTRAN%%include/hdf5-21/H5f90i_gen.h +%%FORTRAN%%include/hdf5-21/H5f90proto.h +%%FORTRAN%%include/hdf5-21/h5_gen.mod +%%FORTRAN%%include/hdf5-21/h5a.mod +%%FORTRAN%%include/hdf5-21/h5d.mod +%%FORTRAN%%include/hdf5-21/h5do.mod +%%FORTRAN%%include/hdf5-21/h5ds.mod +%%FORTRAN%%include/hdf5-21/h5e.mod +%%FORTRAN%%include/hdf5-21/h5es.mod +%%FORTRAN%%include/hdf5-21/h5f.mod +%%FORTRAN%%include/hdf5-21/h5fd.mod +%%FORTRAN%%include/hdf5-21/h5fortkit.mod +%%FORTRAN%%include/hdf5-21/h5fortran_types.mod +%%FORTRAN%%include/hdf5-21/h5g.mod +%%FORTRAN%%include/hdf5-21/h5global.mod +%%FORTRAN%%include/hdf5-21/h5i.mod +%%FORTRAN%%include/hdf5-21/h5im.mod +%%FORTRAN%%include/hdf5-21/h5l.mod +%%FORTRAN%%include/hdf5-21/h5lib.mod +%%FORTRAN%%include/hdf5-21/h5lt.mod +%%FORTRAN%%include/hdf5-21/h5lt_const.mod +%%FORTRAN%%include/hdf5-21/h5o.mod +%%FORTRAN%%include/hdf5-21/h5p.mod +%%FORTRAN%%include/hdf5-21/h5r.mod +%%FORTRAN%%include/hdf5-21/h5s.mod +%%FORTRAN%%include/hdf5-21/h5t.mod +%%FORTRAN%%include/hdf5-21/h5tb.mod +%%FORTRAN%%include/hdf5-21/h5tb_const.mod +%%FORTRAN%%include/hdf5-21/h5vl.mod +%%FORTRAN%%include/hdf5-21/h5z.mod +%%FORTRAN%%include/hdf5-21/hdf5.mod +%%FORTRAN%%include/hdf5-21/shared/h5_gen.mod +%%FORTRAN%%include/hdf5-21/shared/h5a.mod +%%FORTRAN%%include/hdf5-21/shared/h5d.mod +%%FORTRAN%%include/hdf5-21/shared/h5do.mod +%%FORTRAN%%include/hdf5-21/shared/h5ds.mod +%%FORTRAN%%include/hdf5-21/shared/h5e.mod +%%FORTRAN%%include/hdf5-21/shared/h5es.mod +%%FORTRAN%%include/hdf5-21/shared/h5f.mod +%%FORTRAN%%include/hdf5-21/shared/h5fd.mod +%%FORTRAN%%include/hdf5-21/shared/h5fortkit.mod +%%FORTRAN%%include/hdf5-21/shared/h5fortran_types.mod +%%FORTRAN%%include/hdf5-21/shared/h5g.mod +%%FORTRAN%%include/hdf5-21/shared/h5global.mod +%%FORTRAN%%include/hdf5-21/shared/h5i.mod +%%FORTRAN%%include/hdf5-21/shared/h5im.mod +%%FORTRAN%%include/hdf5-21/shared/h5l.mod +%%FORTRAN%%include/hdf5-21/shared/h5lib.mod +%%FORTRAN%%include/hdf5-21/shared/h5lt.mod +%%FORTRAN%%include/hdf5-21/shared/h5lt_const.mod +%%FORTRAN%%include/hdf5-21/shared/h5o.mod +%%FORTRAN%%include/hdf5-21/shared/h5p.mod +%%FORTRAN%%include/hdf5-21/shared/h5r.mod +%%FORTRAN%%include/hdf5-21/shared/h5s.mod +%%FORTRAN%%include/hdf5-21/shared/h5t.mod +%%FORTRAN%%include/hdf5-21/shared/h5tb.mod +%%FORTRAN%%include/hdf5-21/shared/h5tb_const.mod +%%FORTRAN%%include/hdf5-21/shared/h5vl.mod +%%FORTRAN%%include/hdf5-21/shared/h5z.mod +%%FORTRAN%%include/hdf5-21/shared/hdf5.mod +%%FORTRAN%%include/hdf5-21/static/h5_gen.mod +%%FORTRAN%%include/hdf5-21/static/h5a.mod +%%FORTRAN%%include/hdf5-21/static/h5d.mod +%%FORTRAN%%include/hdf5-21/static/h5do.mod +%%FORTRAN%%include/hdf5-21/static/h5ds.mod +%%FORTRAN%%include/hdf5-21/static/h5e.mod +%%FORTRAN%%include/hdf5-21/static/h5es.mod +%%FORTRAN%%include/hdf5-21/static/h5f.mod +%%FORTRAN%%include/hdf5-21/static/h5fd.mod +%%FORTRAN%%include/hdf5-21/static/h5fortkit.mod +%%FORTRAN%%include/hdf5-21/static/h5fortran_types.mod +%%FORTRAN%%include/hdf5-21/static/h5g.mod +%%FORTRAN%%include/hdf5-21/static/h5global.mod +%%FORTRAN%%include/hdf5-21/static/h5i.mod +%%FORTRAN%%include/hdf5-21/static/h5im.mod +%%FORTRAN%%include/hdf5-21/static/h5l.mod +%%FORTRAN%%include/hdf5-21/static/h5lib.mod +%%FORTRAN%%include/hdf5-21/static/h5lt.mod +%%FORTRAN%%include/hdf5-21/static/h5lt_const.mod +%%FORTRAN%%include/hdf5-21/static/h5o.mod +%%FORTRAN%%include/hdf5-21/static/h5p.mod +%%FORTRAN%%include/hdf5-21/static/h5r.mod +%%FORTRAN%%include/hdf5-21/static/h5s.mod +%%FORTRAN%%include/hdf5-21/static/h5t.mod +%%FORTRAN%%include/hdf5-21/static/h5tb.mod +%%FORTRAN%%include/hdf5-21/static/h5tb_const.mod +%%FORTRAN%%include/hdf5-21/static/h5vl.mod +%%FORTRAN%%include/hdf5-21/static/h5z.mod +%%FORTRAN%%include/hdf5-21/static/hdf5.mod +%%FORTRAN%%lib/libhdf5-21_f90cstub.a +%%FORTRAN%%lib/libhdf5-21_f90cstub.so +%%FORTRAN%%lib/libhdf5-21_f90cstub.so.320 +%%FORTRAN%%lib/libhdf5-21_f90cstub.so.320.1.1 +%%FORTRAN%%lib/libhdf5-21_fortran.a +%%FORTRAN%%lib/libhdf5-21_fortran.so +%%FORTRAN%%lib/libhdf5-21_fortran.so.320 +%%FORTRAN%%lib/libhdf5-21_fortran.so.320.1.1 +%%FORTRAN%%lib/libhdf5-21_hl_f90cstub.a +%%FORTRAN%%lib/libhdf5-21_hl_f90cstub.so +%%FORTRAN%%lib/libhdf5-21_hl_f90cstub.so.320 +%%FORTRAN%%lib/libhdf5-21_hl_f90cstub.so.320.0.2 +%%FORTRAN%%lib/libhdf5-21_hl_fortran.a +%%FORTRAN%%lib/libhdf5-21_hl_fortran.so +%%FORTRAN%%lib/libhdf5-21_hl_fortran.so.320 +%%FORTRAN%%lib/libhdf5-21_hl_fortran.so.320.0.2 +%%FORTRAN%%libdata/pkgconfig/hdf5_fortran.pc +%%FORTRAN%%libdata/pkgconfig/hdf5_hl_fortran.pc |
