From 6c5ba66f0d223c281994a65ea370d19d16b9d801 Mon Sep 17 00:00:00 2001
From: j1nx
Date: Tue, 3 Jan 2023 12:12:31 +0100
Subject: [PATCH] [WIP] Some more work on hdf5
---
...0001-Lower-cmake-requirement-to-3.16.patch | 396 -------
.../package/hdf5-hosttools/Config.in | 8 -
.../package/hdf5-hosttools/hdf5-hosttools.mk | 31 -
.../hdf5-hosttools/hdf5-hsottools.hash | 2 -
...0001-Lower-cmake-requirement-to-3.16.patch | 396 -------
.../hdf5/0001-No-add_custom_command.patch | 93 ++
.../0002-Use-H5detect-from-the-host.patch | 25 -
buildroot-external/package/hdf5/H5Tinit.c | 991 ++++++++++++++++++
.../package/hdf5/H5lib_settings.c | 125 +++
.../package/hdf5/TryRunResults.cmake | 14 -
buildroot-external/package/hdf5/hdf5.hash | 2 +-
buildroot-external/package/hdf5/hdf5.mk | 47 +-
12 files changed, 1253 insertions(+), 877 deletions(-)
delete mode 100644 buildroot-external/package/hdf5-hosttools/0001-Lower-cmake-requirement-to-3.16.patch
delete mode 100644 buildroot-external/package/hdf5-hosttools/Config.in
delete mode 100644 buildroot-external/package/hdf5-hosttools/hdf5-hosttools.mk
delete mode 100644 buildroot-external/package/hdf5-hosttools/hdf5-hsottools.hash
delete mode 100644 buildroot-external/package/hdf5/0001-Lower-cmake-requirement-to-3.16.patch
create mode 100644 buildroot-external/package/hdf5/0001-No-add_custom_command.patch
delete mode 100644 buildroot-external/package/hdf5/0002-Use-H5detect-from-the-host.patch
create mode 100644 buildroot-external/package/hdf5/H5Tinit.c
create mode 100644 buildroot-external/package/hdf5/H5lib_settings.c
delete mode 100644 buildroot-external/package/hdf5/TryRunResults.cmake
diff --git a/buildroot-external/package/hdf5-hosttools/0001-Lower-cmake-requirement-to-3.16.patch b/buildroot-external/package/hdf5-hosttools/0001-Lower-cmake-requirement-to-3.16.patch
deleted file mode 100644
index 08da01bc..00000000
--- a/buildroot-external/package/hdf5-hosttools/0001-Lower-cmake-requirement-to-3.16.patch
+++ /dev/null
@@ -1,396 +0,0 @@
-From b3751543f5e98c203c32151bd7f67820c23b701f Mon Sep 17 00:00:00 2001
-From: j1nx
-Date: Sat, 24 Dec 2022 14:43:49 +0100
-Subject: [PATCH 1/1] Lower cmake requirement to 3.16
-
----
- CMakeLists.txt | 2 +-
- c++/CMakeLists.txt | 2 +-
- examples/CMakeLists.txt | 2 +-
- hl/CMakeLists.txt | 2 +-
- hl/c++/CMakeLists.txt | 2 +-
- hl/c++/examples/CMakeLists.txt | 2 +-
- hl/c++/src/CMakeLists.txt | 2 +-
- hl/examples/CMakeLists.txt | 2 +-
- hl/fortran/CMakeLists.txt | 2 +-
- hl/fortran/examples/CMakeLists.txt | 2 +-
- hl/fortran/src/CMakeLists.txt | 2 +-
- hl/src/CMakeLists.txt | 2 +-
- hl/tools/CMakeLists.txt | 2 +-
- hl/tools/gif2h5/CMakeLists.txt | 2 +-
- hl/tools/h5watch/CMakeLists.txt | 2 +-
- src/CMakeLists.txt | 2 +-
- tools/CMakeLists.txt | 2 +-
- tools/lib/CMakeLists.txt | 2 +-
- tools/src/CMakeLists.txt | 2 +-
- tools/src/h5copy/CMakeLists.txt | 2 +-
- tools/src/h5diff/CMakeLists.txt | 2 +-
- tools/src/h5dump/CMakeLists.txt | 2 +-
- tools/src/h5format_convert/CMakeLists.txt | 2 +-
- tools/src/h5import/CMakeLists.txt | 2 +-
- tools/src/h5jam/CMakeLists.txt | 2 +-
- tools/src/h5ls/CMakeLists.txt | 2 +-
- tools/src/h5perf/CMakeLists.txt | 2 +-
- tools/src/h5repack/CMakeLists.txt | 2 +-
- tools/src/h5stat/CMakeLists.txt | 2 +-
- tools/src/misc/CMakeLists.txt | 2 +-
- utils/CMakeLists.txt | 2 +-
- utils/mirror_vfd/CMakeLists.txt | 2 +-
- utils/subfiling_vfd/CMakeLists.txt | 2 +-
- utils/tools/CMakeLists.txt | 2 +-
- utils/tools/h5dwalk/CMakeLists.txt | 2 +-
- 35 files changed, 35 insertions(+), 35 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 1c85965fa0..b2b4643ea1 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5 C)
-
- if (POLICY CMP0074)
-diff --git a/c++/CMakeLists.txt b/c++/CMakeLists.txt
-index 2c0275bc58..fec84315e9 100644
---- a/c++/CMakeLists.txt
-+++ b/c++/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_CPP CXX)
-
- add_subdirectory (src)
-diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
-index 10c6ede725..bb7a3ed3fa 100644
---- a/examples/CMakeLists.txt
-+++ b/examples/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_EXAMPLES C)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/CMakeLists.txt b/hl/CMakeLists.txt
-index a777b72f54..a86f6560e6 100644
---- a/hl/CMakeLists.txt
-+++ b/hl/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL C)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/c++/CMakeLists.txt b/hl/c++/CMakeLists.txt
-index 07e7777b2c..35525a2523 100644
---- a/hl/c++/CMakeLists.txt
-+++ b/hl/c++/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_CPP CXX)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/c++/examples/CMakeLists.txt b/hl/c++/examples/CMakeLists.txt
-index dfc5818ed6..ded3eff4c7 100644
---- a/hl/c++/examples/CMakeLists.txt
-+++ b/hl/c++/examples/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_CPP_EXAMPLES CXX)
-
- # --------------------------------------------------------------------
-diff --git a/hl/c++/src/CMakeLists.txt b/hl/c++/src/CMakeLists.txt
-index 3949624a98..64d20862bc 100644
---- a/hl/c++/src/CMakeLists.txt
-+++ b/hl/c++/src/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_CPP_SRC CXX)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/examples/CMakeLists.txt b/hl/examples/CMakeLists.txt
-index c58d4ddff1..d8f89bc9c9 100644
---- a/hl/examples/CMakeLists.txt
-+++ b/hl/examples/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_EXAMPLES C)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/fortran/CMakeLists.txt b/hl/fortran/CMakeLists.txt
-index ad6faa4f52..5cef204872 100644
---- a/hl/fortran/CMakeLists.txt
-+++ b/hl/fortran/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_F90 C Fortran)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/fortran/examples/CMakeLists.txt b/hl/fortran/examples/CMakeLists.txt
-index 293bc2b096..8701e557be 100644
---- a/hl/fortran/examples/CMakeLists.txt
-+++ b/hl/fortran/examples/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_F90_EXAMPLES C Fortran)
-
- set (examples
-diff --git a/hl/fortran/src/CMakeLists.txt b/hl/fortran/src/CMakeLists.txt
-index 3eae810073..c1e05877ff 100644
---- a/hl/fortran/src/CMakeLists.txt
-+++ b/hl/fortran/src/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_F90_SRC C Fortran)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/src/CMakeLists.txt b/hl/src/CMakeLists.txt
-index 837af4812f..1ad764a01e 100644
---- a/hl/src/CMakeLists.txt
-+++ b/hl/src/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_SRC C)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/tools/CMakeLists.txt b/hl/tools/CMakeLists.txt
-index a369d9efa1..38c509c336 100644
---- a/hl/tools/CMakeLists.txt
-+++ b/hl/tools/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_TOOLS C)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/tools/gif2h5/CMakeLists.txt b/hl/tools/gif2h5/CMakeLists.txt
-index 3a9c708c74..d3f7039672 100644
---- a/hl/tools/gif2h5/CMakeLists.txt
-+++ b/hl/tools/gif2h5/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_TOOLS_GIF2H5 C)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/tools/h5watch/CMakeLists.txt b/hl/tools/h5watch/CMakeLists.txt
-index fc4c3a0d7a..1fcedaf5c4 100644
---- a/hl/tools/h5watch/CMakeLists.txt
-+++ b/hl/tools/h5watch/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_TOOLS_H5WATCH C)
-
- #-----------------------------------------------------------------------------
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 355881d72f..559f245c6c 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_SRC C)
-
- #-----------------------------------------------------------------------------
-diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt
-index 55f2c2a576..7f4b9fd9da 100644
---- a/tools/CMakeLists.txt
-+++ b/tools/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS C)
-
- add_subdirectory (lib)
-diff --git a/tools/lib/CMakeLists.txt b/tools/lib/CMakeLists.txt
-index 7d139ee68c..4733f5cd45 100644
---- a/tools/lib/CMakeLists.txt
-+++ b/tools/lib/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_LIB C)
-
- #-----------------------------------------------------------------------------
-diff --git a/tools/src/CMakeLists.txt b/tools/src/CMakeLists.txt
-index 33f9ba3b95..4c174ad8b3 100644
---- a/tools/src/CMakeLists.txt
-+++ b/tools/src/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC C)
-
- #-- Add the h5diff and test executables
-diff --git a/tools/src/h5copy/CMakeLists.txt b/tools/src/h5copy/CMakeLists.txt
-index 64acf7ef50..3014943ddb 100644
---- a/tools/src/h5copy/CMakeLists.txt
-+++ b/tools/src/h5copy/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5COPY C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5diff/CMakeLists.txt b/tools/src/h5diff/CMakeLists.txt
-index 44921cbdd5..84e0750ac6 100644
---- a/tools/src/h5diff/CMakeLists.txt
-+++ b/tools/src/h5diff/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5DIFF C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5dump/CMakeLists.txt b/tools/src/h5dump/CMakeLists.txt
-index df521a9bb0..0274ae9944 100644
---- a/tools/src/h5dump/CMakeLists.txt
-+++ b/tools/src/h5dump/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5DUMP C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5format_convert/CMakeLists.txt b/tools/src/h5format_convert/CMakeLists.txt
-index c4e412b7d6..e040379ad7 100644
---- a/tools/src/h5format_convert/CMakeLists.txt
-+++ b/tools/src/h5format_convert/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5FC C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5import/CMakeLists.txt b/tools/src/h5import/CMakeLists.txt
-index 472a894841..19268f439a 100644
---- a/tools/src/h5import/CMakeLists.txt
-+++ b/tools/src/h5import/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5IMPORT C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5jam/CMakeLists.txt b/tools/src/h5jam/CMakeLists.txt
-index b037f809b1..71a9cde3f6 100644
---- a/tools/src/h5jam/CMakeLists.txt
-+++ b/tools/src/h5jam/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5JAM C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5ls/CMakeLists.txt b/tools/src/h5ls/CMakeLists.txt
-index 8805448dc7..5f0075ce64 100644
---- a/tools/src/h5ls/CMakeLists.txt
-+++ b/tools/src/h5ls/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5LS C)
-
- #-----------------------------------------------------------------------------
-diff --git a/tools/src/h5perf/CMakeLists.txt b/tools/src/h5perf/CMakeLists.txt
-index 6531ccdbae..5a34facabc 100644
---- a/tools/src/h5perf/CMakeLists.txt
-+++ b/tools/src/h5perf/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5PERF C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5repack/CMakeLists.txt b/tools/src/h5repack/CMakeLists.txt
-index 637d24f5c3..c06ab34257 100644
---- a/tools/src/h5repack/CMakeLists.txt
-+++ b/tools/src/h5repack/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5REPACK C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5stat/CMakeLists.txt b/tools/src/h5stat/CMakeLists.txt
-index 662f935214..fb7368a10c 100644
---- a/tools/src/h5stat/CMakeLists.txt
-+++ b/tools/src/h5stat/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5STAT C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/misc/CMakeLists.txt b/tools/src/misc/CMakeLists.txt
-index 054c888e54..c64ff21c17 100644
---- a/tools/src/misc/CMakeLists.txt
-+++ b/tools/src/misc/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_MISC C)
-
- # --------------------------------------------------------------------
-diff --git a/utils/CMakeLists.txt b/utils/CMakeLists.txt
-index 718f88e190..ab4c5cfd14 100644
---- a/utils/CMakeLists.txt
-+++ b/utils/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_UTILS C)
-
- if (BUILD_TESTING)
-diff --git a/utils/mirror_vfd/CMakeLists.txt b/utils/mirror_vfd/CMakeLists.txt
-index 51d4694657..198155608f 100644
---- a/utils/mirror_vfd/CMakeLists.txt
-+++ b/utils/mirror_vfd/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_UTILS_MIRRORVFD C)
-
- #-----------------------------------------------------------------------------
-diff --git a/utils/subfiling_vfd/CMakeLists.txt b/utils/subfiling_vfd/CMakeLists.txt
-index 3acdc6bc24..db8d009074 100644
---- a/utils/subfiling_vfd/CMakeLists.txt
-+++ b/utils/subfiling_vfd/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_UTILS_SUBFILINGVFD C)
-
- configure_file (${HDF5_UTILS_SUBFILINGVFD_SOURCE_DIR}/h5fuse.sh.in ${HDF5_UTILS_SUBFILINGVFD_BINARY_DIR}/h5fuse.sh @ONLY)
-diff --git a/utils/tools/CMakeLists.txt b/utils/tools/CMakeLists.txt
-index 2be2287c41..5bfef689e0 100644
---- a/utils/tools/CMakeLists.txt
-+++ b/utils/tools/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_UTILS_TOOLS C)
-
-
-diff --git a/utils/tools/h5dwalk/CMakeLists.txt b/utils/tools/h5dwalk/CMakeLists.txt
-index 8c8ed6210f..c154c7b06c 100644
---- a/utils/tools/h5dwalk/CMakeLists.txt
-+++ b/utils/tools/h5dwalk/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_UTILS_TOOLS_H5DWALK C)
-
- # --------------------------------------------------------------------
---
-2.34.1
-
diff --git a/buildroot-external/package/hdf5-hosttools/Config.in b/buildroot-external/package/hdf5-hosttools/Config.in
deleted file mode 100644
index f4a3e197..00000000
--- a/buildroot-external/package/hdf5-hosttools/Config.in
+++ /dev/null
@@ -1,8 +0,0 @@
-config BR2_PACKAGE_HDF5_HOSTTOOLS
- bool "hdf5-hosttools"
- help
- high-performance library's source code and a
- file format specification that implement the
- HDF5® data model.
-
- https://github.com/HDFGroup/hdf5
diff --git a/buildroot-external/package/hdf5-hosttools/hdf5-hosttools.mk b/buildroot-external/package/hdf5-hosttools/hdf5-hosttools.mk
deleted file mode 100644
index f9a4876c..00000000
--- a/buildroot-external/package/hdf5-hosttools/hdf5-hosttools.mk
+++ /dev/null
@@ -1,31 +0,0 @@
-################################################################################
-#
-# hdf5
-#
-################################################################################
-
-HDF5_VERSION = cfd5059e77e2e411a94a13d2fb033224736be09d
-HDF5_SITE = $(call github,HDFGroup,hdf5,$(HDF5_VERSION))
-HDF5_SUPPORTS_IN_SOURCE_BUILD = NO
-
-HDF5_INSTALL_STAGING = YES
-HDF5_DEPENDENCIES = host-hdf5
-
-HDF5_CONF_OPTS += \
- -DHDF5_BUILD_CPP_LIB=ON \
- -DHDF5_ENABLE_Z_LIB_SUPPORT=ON \
- -C$(BR2_EXTERNAL_OPENVOICEOS_PATH)/package/hdf5/TryRunResults_out.cmake
-
-$(eval $(cmake-package))
-
-HDF5_POST_INSTALL_HOOKS = HDF5_HOST_BIN
-
-define HDF5_HOST_BIN
- $(INSTALL) -D -m 755 $(@D)/buildroot-build/bin/H5detect \
- $(HOST_DIR)/bin/H5detect
-
- $(INSTALL) -D -m 755 $(@D)/buildroot-build/bin/H5make_libsettings \
- $(HOST_DIR)/bin/H5make_libsettings
-endef
-
-$(eval $(host-cmake-package))
diff --git a/buildroot-external/package/hdf5-hosttools/hdf5-hsottools.hash b/buildroot-external/package/hdf5-hosttools/hdf5-hsottools.hash
deleted file mode 100644
index ee0a3bb7..00000000
--- a/buildroot-external/package/hdf5-hosttools/hdf5-hsottools.hash
+++ /dev/null
@@ -1,2 +0,0 @@
-# Locally calculated
-sha256 d13286fa848b1be6630f90e2f429aabac277d729f8ddcfedaf5552553ccf80cb hdf5-cfd5059e77e2e411a94a13d2fb033224736be09d.tar.gz
diff --git a/buildroot-external/package/hdf5/0001-Lower-cmake-requirement-to-3.16.patch b/buildroot-external/package/hdf5/0001-Lower-cmake-requirement-to-3.16.patch
deleted file mode 100644
index 08da01bc..00000000
--- a/buildroot-external/package/hdf5/0001-Lower-cmake-requirement-to-3.16.patch
+++ /dev/null
@@ -1,396 +0,0 @@
-From b3751543f5e98c203c32151bd7f67820c23b701f Mon Sep 17 00:00:00 2001
-From: j1nx
-Date: Sat, 24 Dec 2022 14:43:49 +0100
-Subject: [PATCH 1/1] Lower cmake requirement to 3.16
-
----
- CMakeLists.txt | 2 +-
- c++/CMakeLists.txt | 2 +-
- examples/CMakeLists.txt | 2 +-
- hl/CMakeLists.txt | 2 +-
- hl/c++/CMakeLists.txt | 2 +-
- hl/c++/examples/CMakeLists.txt | 2 +-
- hl/c++/src/CMakeLists.txt | 2 +-
- hl/examples/CMakeLists.txt | 2 +-
- hl/fortran/CMakeLists.txt | 2 +-
- hl/fortran/examples/CMakeLists.txt | 2 +-
- hl/fortran/src/CMakeLists.txt | 2 +-
- hl/src/CMakeLists.txt | 2 +-
- hl/tools/CMakeLists.txt | 2 +-
- hl/tools/gif2h5/CMakeLists.txt | 2 +-
- hl/tools/h5watch/CMakeLists.txt | 2 +-
- src/CMakeLists.txt | 2 +-
- tools/CMakeLists.txt | 2 +-
- tools/lib/CMakeLists.txt | 2 +-
- tools/src/CMakeLists.txt | 2 +-
- tools/src/h5copy/CMakeLists.txt | 2 +-
- tools/src/h5diff/CMakeLists.txt | 2 +-
- tools/src/h5dump/CMakeLists.txt | 2 +-
- tools/src/h5format_convert/CMakeLists.txt | 2 +-
- tools/src/h5import/CMakeLists.txt | 2 +-
- tools/src/h5jam/CMakeLists.txt | 2 +-
- tools/src/h5ls/CMakeLists.txt | 2 +-
- tools/src/h5perf/CMakeLists.txt | 2 +-
- tools/src/h5repack/CMakeLists.txt | 2 +-
- tools/src/h5stat/CMakeLists.txt | 2 +-
- tools/src/misc/CMakeLists.txt | 2 +-
- utils/CMakeLists.txt | 2 +-
- utils/mirror_vfd/CMakeLists.txt | 2 +-
- utils/subfiling_vfd/CMakeLists.txt | 2 +-
- utils/tools/CMakeLists.txt | 2 +-
- utils/tools/h5dwalk/CMakeLists.txt | 2 +-
- 35 files changed, 35 insertions(+), 35 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 1c85965fa0..b2b4643ea1 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5 C)
-
- if (POLICY CMP0074)
-diff --git a/c++/CMakeLists.txt b/c++/CMakeLists.txt
-index 2c0275bc58..fec84315e9 100644
---- a/c++/CMakeLists.txt
-+++ b/c++/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_CPP CXX)
-
- add_subdirectory (src)
-diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
-index 10c6ede725..bb7a3ed3fa 100644
---- a/examples/CMakeLists.txt
-+++ b/examples/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_EXAMPLES C)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/CMakeLists.txt b/hl/CMakeLists.txt
-index a777b72f54..a86f6560e6 100644
---- a/hl/CMakeLists.txt
-+++ b/hl/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL C)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/c++/CMakeLists.txt b/hl/c++/CMakeLists.txt
-index 07e7777b2c..35525a2523 100644
---- a/hl/c++/CMakeLists.txt
-+++ b/hl/c++/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_CPP CXX)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/c++/examples/CMakeLists.txt b/hl/c++/examples/CMakeLists.txt
-index dfc5818ed6..ded3eff4c7 100644
---- a/hl/c++/examples/CMakeLists.txt
-+++ b/hl/c++/examples/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_CPP_EXAMPLES CXX)
-
- # --------------------------------------------------------------------
-diff --git a/hl/c++/src/CMakeLists.txt b/hl/c++/src/CMakeLists.txt
-index 3949624a98..64d20862bc 100644
---- a/hl/c++/src/CMakeLists.txt
-+++ b/hl/c++/src/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_CPP_SRC CXX)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/examples/CMakeLists.txt b/hl/examples/CMakeLists.txt
-index c58d4ddff1..d8f89bc9c9 100644
---- a/hl/examples/CMakeLists.txt
-+++ b/hl/examples/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_EXAMPLES C)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/fortran/CMakeLists.txt b/hl/fortran/CMakeLists.txt
-index ad6faa4f52..5cef204872 100644
---- a/hl/fortran/CMakeLists.txt
-+++ b/hl/fortran/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_F90 C Fortran)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/fortran/examples/CMakeLists.txt b/hl/fortran/examples/CMakeLists.txt
-index 293bc2b096..8701e557be 100644
---- a/hl/fortran/examples/CMakeLists.txt
-+++ b/hl/fortran/examples/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_F90_EXAMPLES C Fortran)
-
- set (examples
-diff --git a/hl/fortran/src/CMakeLists.txt b/hl/fortran/src/CMakeLists.txt
-index 3eae810073..c1e05877ff 100644
---- a/hl/fortran/src/CMakeLists.txt
-+++ b/hl/fortran/src/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_F90_SRC C Fortran)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/src/CMakeLists.txt b/hl/src/CMakeLists.txt
-index 837af4812f..1ad764a01e 100644
---- a/hl/src/CMakeLists.txt
-+++ b/hl/src/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_SRC C)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/tools/CMakeLists.txt b/hl/tools/CMakeLists.txt
-index a369d9efa1..38c509c336 100644
---- a/hl/tools/CMakeLists.txt
-+++ b/hl/tools/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_TOOLS C)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/tools/gif2h5/CMakeLists.txt b/hl/tools/gif2h5/CMakeLists.txt
-index 3a9c708c74..d3f7039672 100644
---- a/hl/tools/gif2h5/CMakeLists.txt
-+++ b/hl/tools/gif2h5/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_TOOLS_GIF2H5 C)
-
- #-----------------------------------------------------------------------------
-diff --git a/hl/tools/h5watch/CMakeLists.txt b/hl/tools/h5watch/CMakeLists.txt
-index fc4c3a0d7a..1fcedaf5c4 100644
---- a/hl/tools/h5watch/CMakeLists.txt
-+++ b/hl/tools/h5watch/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_HL_TOOLS_H5WATCH C)
-
- #-----------------------------------------------------------------------------
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 355881d72f..559f245c6c 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_SRC C)
-
- #-----------------------------------------------------------------------------
-diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt
-index 55f2c2a576..7f4b9fd9da 100644
---- a/tools/CMakeLists.txt
-+++ b/tools/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS C)
-
- add_subdirectory (lib)
-diff --git a/tools/lib/CMakeLists.txt b/tools/lib/CMakeLists.txt
-index 7d139ee68c..4733f5cd45 100644
---- a/tools/lib/CMakeLists.txt
-+++ b/tools/lib/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_LIB C)
-
- #-----------------------------------------------------------------------------
-diff --git a/tools/src/CMakeLists.txt b/tools/src/CMakeLists.txt
-index 33f9ba3b95..4c174ad8b3 100644
---- a/tools/src/CMakeLists.txt
-+++ b/tools/src/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC C)
-
- #-- Add the h5diff and test executables
-diff --git a/tools/src/h5copy/CMakeLists.txt b/tools/src/h5copy/CMakeLists.txt
-index 64acf7ef50..3014943ddb 100644
---- a/tools/src/h5copy/CMakeLists.txt
-+++ b/tools/src/h5copy/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5COPY C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5diff/CMakeLists.txt b/tools/src/h5diff/CMakeLists.txt
-index 44921cbdd5..84e0750ac6 100644
---- a/tools/src/h5diff/CMakeLists.txt
-+++ b/tools/src/h5diff/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5DIFF C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5dump/CMakeLists.txt b/tools/src/h5dump/CMakeLists.txt
-index df521a9bb0..0274ae9944 100644
---- a/tools/src/h5dump/CMakeLists.txt
-+++ b/tools/src/h5dump/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5DUMP C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5format_convert/CMakeLists.txt b/tools/src/h5format_convert/CMakeLists.txt
-index c4e412b7d6..e040379ad7 100644
---- a/tools/src/h5format_convert/CMakeLists.txt
-+++ b/tools/src/h5format_convert/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5FC C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5import/CMakeLists.txt b/tools/src/h5import/CMakeLists.txt
-index 472a894841..19268f439a 100644
---- a/tools/src/h5import/CMakeLists.txt
-+++ b/tools/src/h5import/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5IMPORT C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5jam/CMakeLists.txt b/tools/src/h5jam/CMakeLists.txt
-index b037f809b1..71a9cde3f6 100644
---- a/tools/src/h5jam/CMakeLists.txt
-+++ b/tools/src/h5jam/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5JAM C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5ls/CMakeLists.txt b/tools/src/h5ls/CMakeLists.txt
-index 8805448dc7..5f0075ce64 100644
---- a/tools/src/h5ls/CMakeLists.txt
-+++ b/tools/src/h5ls/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5LS C)
-
- #-----------------------------------------------------------------------------
-diff --git a/tools/src/h5perf/CMakeLists.txt b/tools/src/h5perf/CMakeLists.txt
-index 6531ccdbae..5a34facabc 100644
---- a/tools/src/h5perf/CMakeLists.txt
-+++ b/tools/src/h5perf/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5PERF C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5repack/CMakeLists.txt b/tools/src/h5repack/CMakeLists.txt
-index 637d24f5c3..c06ab34257 100644
---- a/tools/src/h5repack/CMakeLists.txt
-+++ b/tools/src/h5repack/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5REPACK C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/h5stat/CMakeLists.txt b/tools/src/h5stat/CMakeLists.txt
-index 662f935214..fb7368a10c 100644
---- a/tools/src/h5stat/CMakeLists.txt
-+++ b/tools/src/h5stat/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_H5STAT C)
-
- # --------------------------------------------------------------------
-diff --git a/tools/src/misc/CMakeLists.txt b/tools/src/misc/CMakeLists.txt
-index 054c888e54..c64ff21c17 100644
---- a/tools/src/misc/CMakeLists.txt
-+++ b/tools/src/misc/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_TOOLS_SRC_MISC C)
-
- # --------------------------------------------------------------------
-diff --git a/utils/CMakeLists.txt b/utils/CMakeLists.txt
-index 718f88e190..ab4c5cfd14 100644
---- a/utils/CMakeLists.txt
-+++ b/utils/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_UTILS C)
-
- if (BUILD_TESTING)
-diff --git a/utils/mirror_vfd/CMakeLists.txt b/utils/mirror_vfd/CMakeLists.txt
-index 51d4694657..198155608f 100644
---- a/utils/mirror_vfd/CMakeLists.txt
-+++ b/utils/mirror_vfd/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_UTILS_MIRRORVFD C)
-
- #-----------------------------------------------------------------------------
-diff --git a/utils/subfiling_vfd/CMakeLists.txt b/utils/subfiling_vfd/CMakeLists.txt
-index 3acdc6bc24..db8d009074 100644
---- a/utils/subfiling_vfd/CMakeLists.txt
-+++ b/utils/subfiling_vfd/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_UTILS_SUBFILINGVFD C)
-
- configure_file (${HDF5_UTILS_SUBFILINGVFD_SOURCE_DIR}/h5fuse.sh.in ${HDF5_UTILS_SUBFILINGVFD_BINARY_DIR}/h5fuse.sh @ONLY)
-diff --git a/utils/tools/CMakeLists.txt b/utils/tools/CMakeLists.txt
-index 2be2287c41..5bfef689e0 100644
---- a/utils/tools/CMakeLists.txt
-+++ b/utils/tools/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_UTILS_TOOLS C)
-
-
-diff --git a/utils/tools/h5dwalk/CMakeLists.txt b/utils/tools/h5dwalk/CMakeLists.txt
-index 8c8ed6210f..c154c7b06c 100644
---- a/utils/tools/h5dwalk/CMakeLists.txt
-+++ b/utils/tools/h5dwalk/CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required (VERSION 3.18)
-+cmake_minimum_required (VERSION 3.16)
- project (HDF5_UTILS_TOOLS_H5DWALK C)
-
- # --------------------------------------------------------------------
---
-2.34.1
-
diff --git a/buildroot-external/package/hdf5/0001-No-add_custom_command.patch b/buildroot-external/package/hdf5/0001-No-add_custom_command.patch
new file mode 100644
index 00000000..99d22442
--- /dev/null
+++ b/buildroot-external/package/hdf5/0001-No-add_custom_command.patch
@@ -0,0 +1,93 @@
+From 4b767ed7e7f285687ac3d88f627a55d1a2b2a785 Mon Sep 17 00:00:00 2001
+From: j1nx
+Date: Tue, 3 Jan 2023 11:05:03 +0100
+Subject: [PATCH 1/1] No add_custom_command
+
+---
+ src/CMakeLists.txt | 56 ----------------------------------------------
+ 1 file changed, 56 deletions(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 559f245c6c..155f71d0aa 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -1097,45 +1097,11 @@ if (NOT EXISTS "${HDF5_GENERATED_SOURCE_DIR}/H5Tinit.c")
+ ${HDF5_SOURCE_DIR}/bin/batch/${HDF5_BATCH_H5DETECT_SCRIPT}.in.cmake
+ ${HDF5_BINARY_DIR}/${HDF5_BATCH_H5DETECT_SCRIPT} ESCAPE_QUOTES @ONLY
+ )
+- add_custom_command (
+- OUTPUT gen_SRCS.stamp1
+- BYPRODUCTS H5Tinit.c
+- COMMAND ${HDF5_BATCH_CMD}
+- ARGS ${HDF5_BINARY_DIR}/${HDF5_BATCH_H5DETECT_SCRIPT}
+- COMMAND ${CMAKE_COMMAND}
+- ARGS -E echo "Executed batch command to create H5Tinit.c"
+- COMMAND ${CMAKE_COMMAND}
+- ARGS -E touch gen_SRCS.stamp1
+- DEPENDS H5detect
+- WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR}
+- )
+ add_custom_target (gen_H5Tinit
+ COMMAND ${CMAKE_COMMAND} -P ${HDF5_SOURCE_DIR}/config/cmake/wait_H5Tinit.cmake
+ )
+ else ()
+- add_custom_command (
+- OUTPUT gen_SRCS.stamp1
+- BYPRODUCTS H5Tinit.c
+- COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $
+- ARGS H5Tinit.c
+- COMMAND ${CMAKE_COMMAND}
+- ARGS -E touch gen_SRCS.stamp1
+- DEPENDS H5detect
+- WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR}
+- COMMENT "Create H5Tinit.c"
+- )
+ if (BUILD_SHARED_LIBS)
+- add_custom_command (
+- OUTPUT shared/shared_gen_SRCS.stamp1
+- BYPRODUCTS shared/H5Tinit.c
+- COMMAND ${CMAKE_COMMAND}
+- ARGS -E copy_if_different H5Tinit.c shared/H5Tinit.c
+- COMMAND ${CMAKE_COMMAND}
+- ARGS -E touch shared/shared_gen_SRCS.stamp1
+- DEPENDS H5detect gen_SRCS.stamp1
+- WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR}
+- COMMENT "Copy H5Tinit.c to shared folder"
+- )
+ endif ()
+ endif ()
+ else ()
+@@ -1191,30 +1157,8 @@ if (HDF5_ENABLE_FORMATTERS)
+ endif ()
+
+ # execute the H5make_libsettings program
+-add_custom_command (
+- OUTPUT gen_SRCS.stamp2
+- BYPRODUCTS H5lib_settings.c
+- COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $
+- ARGS H5lib_settings.c
+- COMMAND ${CMAKE_COMMAND}
+- ARGS -E touch gen_SRCS.stamp2
+- DEPENDS H5make_libsettings
+- WORKING_DIRECTORY ${HDF5_SRC_BINARY_DIR}
+- COMMENT "Create H5lib_settings.c"
+-)
+ set_source_files_properties (${HDF5_SRC_BINARY_DIR}/H5lib_settings.c PROPERTIES GENERATED TRUE)
+ if (BUILD_SHARED_LIBS)
+- add_custom_command (
+- OUTPUT shared/shared_gen_SRCS.stamp2
+- BYPRODUCTS shared/H5lib_settings.c
+- COMMAND ${CMAKE_COMMAND}
+- ARGS -E copy_if_different H5lib_settings.c shared/H5lib_settings.c
+- COMMAND ${CMAKE_COMMAND}
+- ARGS -E touch shared/shared_gen_SRCS.stamp2
+- DEPENDS H5make_libsettings gen_SRCS.stamp2
+- WORKING_DIRECTORY ${HDF5_SRC_BINARY_DIR}
+- COMMENT "Copy H5lib_settings.c to shared folder"
+- )
+ endif ()
+
+ #-----------------------------------------------------------------------------
+--
+2.34.1
+
diff --git a/buildroot-external/package/hdf5/0002-Use-H5detect-from-the-host.patch b/buildroot-external/package/hdf5/0002-Use-H5detect-from-the-host.patch
deleted file mode 100644
index 50b98e85..00000000
--- a/buildroot-external/package/hdf5/0002-Use-H5detect-from-the-host.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From a815421bdd6fbe901a427a63e23d94d4ce1270b9 Mon Sep 17 00:00:00 2001
-From: j1nx
-Date: Sat, 24 Dec 2022 19:04:55 +0100
-Subject: [PATCH 1/1] Use H5detect from the host
-
----
- bin/batch/knl_H5detect.sl.in.cmake | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/bin/batch/knl_H5detect.sl.in.cmake b/bin/batch/knl_H5detect.sl.in.cmake
-index 39a3ef3f62..e5b2da55fe 100644
---- a/bin/batch/knl_H5detect.sl.in.cmake
-+++ b/bin/batch/knl_H5detect.sl.in.cmake
-@@ -13,7 +13,7 @@
- PROGNAME=H5detect
- OUTPUT=H5Tinit.c
-
--CMD="@HDF5_BINARY_DIR@/bin/${PROGNAME} @HDF5_GENERATED_SOURCE_DIR@/${OUTPUT}"
-+CMD="@HOST_DIR@/bin/${PROGNAME} @HDF5_GENERATED_SOURCE_DIR@/${OUTPUT}"
- echo "Run $CMD"
- srun -n 1 $CMD
- echo "Done running $CMD"
---
-2.34.1
-
diff --git a/buildroot-external/package/hdf5/H5Tinit.c b/buildroot-external/package/hdf5/H5Tinit.c
new file mode 100644
index 00000000..433feda1
--- /dev/null
+++ b/buildroot-external/package/hdf5/H5Tinit.c
@@ -0,0 +1,991 @@
+/* Generated automatically by H5detect -- do not edit */
+
+
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Copyright by The HDF Group. *
+ * Copyright by the Board of Trustees of the University of Illinois. *
+ * All rights reserved. *
+ * *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * terms governing use, modification, and redistribution, is contained in *
+ * the COPYING file, which can be found at the root of the source code *
+ * distribution tree, or in https://www.hdfgroup.org/licenses. *
+ * If you do not have access to either file, you may request a copy from *
+ * help@hdfgroup.org. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Created: Nov 14, 2022
+ * u0_a101@localhost
+ *
+ * Purpose: This machine-generated source code contains
+ * information about the various integer and
+ * floating point numeric formats found on this
+ * architecture. The parameters below should be
+ * checked carefully and errors reported to the
+ * HDF5 maintainer.
+ *
+ * Each of the numeric formats listed below are
+ * printed from most significant bit to least
+ * significant bit even though the actual bytes
+ * might be stored in a different order in
+ * memory. The integers above each binary byte
+ * indicate the relative order of the bytes in
+ * memory; little-endian machines have
+ * decreasing numbers while big-endian machines
+ * have increasing numbers.
+ *
+ * The fields of the numbers are printed as
+ * letters with `S' for the mantissa sign bit,
+ * `M' for the mantissa magnitude, and `E' for
+ * the exponent. The exponent has an associated
+ * bias which can be subtracted to find the
+ * true exponent. The radix point is assumed
+ * to be before the first `M' bit. Any bit
+ * of a floating-point value not falling into one
+ * of these categories is printed as a question
+ * mark. Bits of integer types are printed as
+ * `I' for 2's complement and `U' for magnitude.
+ *
+ * If the most significant bit of the normalized
+ * mantissa (always a `1' except for `0.0') is
+ * not stored then an `implicit=yes' appears
+ * under the field description. In this case,
+ * the radix point is still assumed to be
+ * before the first `M' but after the implicit
+ * bit.
+ *
+ * Modifications:
+ *
+ * DO NOT MAKE MODIFICATIONS TO THIS FILE!
+ * It was generated by code in `H5detect.c'.
+ *
+ *-------------------------------------------------------------------------
+ */
+
+/****************/
+/* Module Setup */
+/****************/
+
+#include "H5Tmodule.h" /* This source code file is part of the H5T module */
+
+
+/***********/
+/* Headers */
+/***********/
+#include "H5private.h" /* Generic Functions */
+#include "H5Eprivate.h" /* Error handling */
+#include "H5FLprivate.h" /* Free Lists */
+#include "H5Iprivate.h" /* IDs */
+#include "H5Tpkg.h" /* Datatypes */
+
+
+/****************/
+/* Local Macros */
+/****************/
+
+
+/******************/
+/* Local Typedefs */
+/******************/
+
+
+/********************/
+/* Package Typedefs */
+/********************/
+
+
+/********************/
+/* Local Prototypes */
+/********************/
+
+
+/********************/
+/* Public Variables */
+/********************/
+
+
+/*****************************/
+/* Library Private Variables */
+/*****************************/
+
+
+/*********************/
+/* Package Variables */
+/*********************/
+
+
+
+/*******************/
+/* Local Variables */
+/*******************/
+
+
+
+/*-------------------------------------------------------------------------
+ * Function: H5T__init_native
+ *
+ * Purpose: Initialize pre-defined native datatypes from code generated
+ * during the library configuration by H5detect.
+ *
+ * Return: Success: non-negative
+ * Failure: negative
+ *
+ * Programmer: Robb Matzke
+ * Wednesday, December 16, 1998
+ *
+ *-------------------------------------------------------------------------
+ */
+herr_t
+H5T__init_native(void)
+{
+ H5T_t *dt = NULL;
+ herr_t ret_value = SUCCEED;
+
+ FUNC_ENTER_PACKAGE
+
+ /*
+ * 0
+ * IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 1;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 8;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_SCHAR_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_SCHAR_ALIGN_g = 1;
+ H5T_NATIVE_SCHAR_COMP_ALIGN_g = 1;
+
+ /*
+ * 0
+ * UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 1;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 8;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_UCHAR_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_UCHAR_ALIGN_g = 1;
+
+ /*
+ * 1 0
+ * IIIIIIII IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 2;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 16;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_SHORT_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_SHORT_ALIGN_g = 1;
+ H5T_NATIVE_SHORT_COMP_ALIGN_g = 2;
+
+ /*
+ * 1 0
+ * UUUUUUUU UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 2;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 16;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_USHORT_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_USHORT_ALIGN_g = 1;
+
+ /*
+ * 3 2 1 0
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 4;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 32;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_INT_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_INT_ALIGN_g = 1;
+ H5T_NATIVE_INT_COMP_ALIGN_g = 4;
+
+ /*
+ * 3 2 1 0
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 4;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 32;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_UINT_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_UINT_ALIGN_g = 1;
+
+ /*
+ * 7 6 5 4
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * 3 2 1 0
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 8;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 64;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_LONG_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_LONG_ALIGN_g = 1;
+ H5T_NATIVE_LONG_COMP_ALIGN_g = 8;
+
+ /*
+ * 7 6 5 4
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * 3 2 1 0
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 8;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 64;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_ULONG_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_ULONG_ALIGN_g = 1;
+
+ /*
+ * 0
+ * IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 1;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 8;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_INT8_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_INT8_ALIGN_g = 1;
+
+ /*
+ * 0
+ * UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 1;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 8;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_UINT8_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_UINT8_ALIGN_g = 1;
+
+ /*
+ * 0
+ * IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 1;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 8;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_INT_LEAST8_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_INT_LEAST8_ALIGN_g = 1;
+
+ /*
+ * 0
+ * UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 1;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 8;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_UINT_LEAST8_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_UINT_LEAST8_ALIGN_g = 1;
+
+ /*
+ * 0
+ * IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 1;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 8;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_INT_FAST8_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_INT_FAST8_ALIGN_g = 1;
+
+ /*
+ * 0
+ * UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 1;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 8;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_UINT_FAST8_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_UINT_FAST8_ALIGN_g = 1;
+
+ /*
+ * 1 0
+ * IIIIIIII IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 2;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 16;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_INT16_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_INT16_ALIGN_g = 1;
+
+ /*
+ * 1 0
+ * UUUUUUUU UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 2;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 16;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_UINT16_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_UINT16_ALIGN_g = 1;
+
+ /*
+ * 1 0
+ * IIIIIIII IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 2;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 16;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_INT_LEAST16_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_INT_LEAST16_ALIGN_g = 1;
+
+ /*
+ * 1 0
+ * UUUUUUUU UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 2;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 16;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_UINT_LEAST16_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_UINT_LEAST16_ALIGN_g = 1;
+
+ /*
+ * 7 6 5 4
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * 3 2 1 0
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 8;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 64;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_INT_FAST16_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_INT_FAST16_ALIGN_g = 1;
+
+ /*
+ * 7 6 5 4
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * 3 2 1 0
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 8;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 64;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_UINT_FAST16_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_UINT_FAST16_ALIGN_g = 1;
+
+ /*
+ * 3 2 1 0
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 4;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 32;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_INT32_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_INT32_ALIGN_g = 1;
+
+ /*
+ * 3 2 1 0
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 4;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 32;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_UINT32_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_UINT32_ALIGN_g = 1;
+
+ /*
+ * 3 2 1 0
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 4;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 32;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_INT_LEAST32_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_INT_LEAST32_ALIGN_g = 1;
+
+ /*
+ * 3 2 1 0
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 4;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 32;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_UINT_LEAST32_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_UINT_LEAST32_ALIGN_g = 1;
+
+ /*
+ * 7 6 5 4
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * 3 2 1 0
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 8;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 64;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_INT_FAST32_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_INT_FAST32_ALIGN_g = 1;
+
+ /*
+ * 7 6 5 4
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * 3 2 1 0
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 8;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 64;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_UINT_FAST32_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_UINT_FAST32_ALIGN_g = 1;
+
+ /*
+ * 7 6 5 4
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * 3 2 1 0
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 8;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 64;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_INT64_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_INT64_ALIGN_g = 1;
+
+ /*
+ * 7 6 5 4
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * 3 2 1 0
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 8;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 64;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_UINT64_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_UINT64_ALIGN_g = 1;
+
+ /*
+ * 7 6 5 4
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * 3 2 1 0
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 8;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 64;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_INT_LEAST64_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_INT_LEAST64_ALIGN_g = 1;
+
+ /*
+ * 7 6 5 4
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * 3 2 1 0
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 8;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 64;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_UINT_LEAST64_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_UINT_LEAST64_ALIGN_g = 1;
+
+ /*
+ * 7 6 5 4
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * 3 2 1 0
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 8;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 64;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_INT_FAST64_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_INT_FAST64_ALIGN_g = 1;
+
+ /*
+ * 7 6 5 4
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * 3 2 1 0
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 8;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 64;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_UINT_FAST64_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_UINT_FAST64_ALIGN_g = 1;
+
+ /*
+ * 7 6 5 4
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * 3 2 1 0
+ * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 8;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 64;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
+ if((H5T_NATIVE_LLONG_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_LLONG_ALIGN_g = 1;
+ H5T_NATIVE_LLONG_COMP_ALIGN_g = 8;
+
+ /*
+ * 7 6 5 4
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * 3 2 1 0
+ * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_INTEGER;
+ dt->shared->size = 8;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 64;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
+ if((H5T_NATIVE_ULLONG_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_ULLONG_ALIGN_g = 1;
+
+ /*
+ * 3 2 1 0
+ * SEEEEEEE EMMMMMMM MMMMMMMM MMMMMMMM
+ * Implicit bit? yes
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_FLOAT;
+ dt->shared->size = 4;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 32;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.f.sign = 31;
+ dt->shared->u.atomic.u.f.epos = 23;
+ dt->shared->u.atomic.u.f.esize = 8;
+ dt->shared->u.atomic.u.f.ebias = 0x0000007f;
+ dt->shared->u.atomic.u.f.mpos = 0;
+ dt->shared->u.atomic.u.f.msize = 23;
+ dt->shared->u.atomic.u.f.norm = H5T_NORM_IMPLIED;
+ dt->shared->u.atomic.u.f.pad = H5T_PAD_ZERO;
+ if((H5T_NATIVE_FLOAT_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_FLOAT_ALIGN_g = 1;
+ H5T_NATIVE_FLOAT_COMP_ALIGN_g = 4;
+
+ /*
+ * 7 6 5 4
+ * SEEEEEEE EEEEMMMM MMMMMMMM MMMMMMMM
+ * 3 2 1 0
+ * MMMMMMMM MMMMMMMM MMMMMMMM MMMMMMMM
+ * Implicit bit? yes
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_FLOAT;
+ dt->shared->size = 8;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 64;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.f.sign = 63;
+ dt->shared->u.atomic.u.f.epos = 52;
+ dt->shared->u.atomic.u.f.esize = 11;
+ dt->shared->u.atomic.u.f.ebias = 0x000003ff;
+ dt->shared->u.atomic.u.f.mpos = 0;
+ dt->shared->u.atomic.u.f.msize = 52;
+ dt->shared->u.atomic.u.f.norm = H5T_NORM_IMPLIED;
+ dt->shared->u.atomic.u.f.pad = H5T_PAD_ZERO;
+ if((H5T_NATIVE_DOUBLE_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_DOUBLE_ALIGN_g = 1;
+ H5T_NATIVE_DOUBLE_COMP_ALIGN_g = 8;
+
+ /*
+ * 15 14 13 12
+ * SEEEEEEE EEEEEEEE MMMMMMMM MMMMMMMM
+ * 11 10 9 8
+ * MMMMMMMM MMMMMMMM MMMMMMMM MMMMMMMM
+ * 7 6 5 4
+ * MMMMMMMM MMMMMMMM MMMMMMMM MMMMMMMM
+ * 3 2 1 0
+ * MMMMMMMM MMMMMMMM MMMMMMMM MMMMMMMM
+ * Implicit bit? yes
+ * Alignment: none
+ */
+ if(NULL == (dt = H5T__alloc()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
+ dt->shared->state = H5T_STATE_IMMUTABLE;
+ dt->shared->type = H5T_FLOAT;
+ dt->shared->size = 16;
+ dt->shared->u.atomic.order = H5T_ORDER_LE;
+ dt->shared->u.atomic.offset = 0;
+ dt->shared->u.atomic.prec = 128;
+ dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
+ dt->shared->u.atomic.u.f.sign = 127;
+ dt->shared->u.atomic.u.f.epos = 112;
+ dt->shared->u.atomic.u.f.esize = 15;
+ dt->shared->u.atomic.u.f.ebias = 0x00003fff;
+ dt->shared->u.atomic.u.f.mpos = 0;
+ dt->shared->u.atomic.u.f.msize = 112;
+ dt->shared->u.atomic.u.f.norm = H5T_NORM_IMPLIED;
+ dt->shared->u.atomic.u.f.pad = H5T_PAD_ZERO;
+ if((H5T_NATIVE_LDOUBLE_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
+ H5T_NATIVE_LDOUBLE_ALIGN_g = 1;
+ H5T_NATIVE_LDOUBLE_COMP_ALIGN_g = 16;
+
+ /* Set the native order for this machine */
+ H5T_native_order_g = H5T_ORDER_LE;
+
+ /* Structure alignment for pointers, vlen and reference types */
+ H5T_POINTER_COMP_ALIGN_g = 8;
+ H5T_HVL_COMP_ALIGN_g = 8;
+ H5T_HOBJREF_COMP_ALIGN_g = 8;
+ H5T_HDSETREGREF_COMP_ALIGN_g = 1;
+ H5T_REF_COMP_ALIGN_g = 8;
+
+done:
+ if(ret_value < 0) {
+ if(dt != NULL) {
+ dt->shared = H5FL_FREE(H5T_shared_t, dt->shared);
+ dt = H5FL_FREE(H5T_t, dt);
+ } /* end if */
+ } /* end if */
+
+ FUNC_LEAVE_NOAPI(ret_value);
+} /* end H5T__init_native() */
+
+/****************************************/
+/* ALIGNMENT and signal-handling status */
+/****************************************/
+/* Signal() support: yes */
+/* setjmp() support: yes */
+/* longjmp() support: yes */
+/* sigsetjmp() support: yes */
+/* siglongjmp() support: yes */
+/* sigprocmask() support: yes */
+
+/******************************/
+/* signal handlers statistics */
+/******************************/
+/* signal_handlers tested: 15 times */
+/* sigbus_handler called: 5 times */
+/* sigsegv_handler called: 5 times */
+/* sigill_handler called: 5 times */
diff --git a/buildroot-external/package/hdf5/H5lib_settings.c b/buildroot-external/package/hdf5/H5lib_settings.c
new file mode 100644
index 00000000..6965f440
--- /dev/null
+++ b/buildroot-external/package/hdf5/H5lib_settings.c
@@ -0,0 +1,125 @@
+/* Generated automatically by H5make_libsettings -- do not edit */
+
+
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Copyright by The HDF Group. *
+ * Copyright by the Board of Trustees of the University of Illinois. *
+ * All rights reserved. *
+ * *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * terms governing use, modification, and redistribution, is contained in *
+ * the COPYING file, which can be found at the root of the source code *
+ * distribution tree, or in https://www.hdfgroup.org/licenses. *
+ * If you do not have access to either file, you may request a copy from *
+ * help@hdfgroup.org. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Created: Nov 14, 2022
+ * u0_a101@localhost
+ *
+ * Purpose: This machine-generated source code contains
+ * information about the library build configuration
+ *
+ * Modifications:
+ *
+ * DO NOT MAKE MODIFICATIONS TO THIS FILE!
+ * It was generated by code in `H5make_libsettings.c'.
+ *
+ *-------------------------------------------------------------------------
+ */
+
+char H5libhdf5_settings[]=
+ " SUMMARY OF THE HDF5 CONFIGURATION\n"
+ " =================================\n"
+ "\n"
+ "General Information:\n"
+ "-------------------\n"
+ " HDF5 Version: 1.12.2\n"
+ " Configured on: 2022-11-14\n"
+ " Configured by: Unix Makefiles\n"
+ " Host system: Android-4.9.82-perf+\n"
+ " Uname information: Android\n"
+ " Byte sex: little-endian\n"
+ " Installation point: /data/data/com.termux/files/usr\n"
+ "\n"
+ "Compiling Options:\n"
+ "------------------\n"
+ " Build Mode: Release\n"
+ " Debugging Symbols: OFF\n"
+ " Asserts: OFF\n"
+ " Profiling: OFF\n"
+ " Optimization Level: OFF\n"
+ "\n"
+ "Linking Options:\n"
+ "----------------\n"
+ " Libraries: \n"
+ " Statically Linked Executables: OFF\n"
+ " LDFLAGS: -Wl,--as-needed -L/data/data/com.termux/files/usr/lib\n"
+ " H5_LDFLAGS: \n"
+ " AM_LDFLAGS: \n"
+ " Extra libraries: m;dl\n"
+ " Archiver: /data/data/com.termux/files/usr/bin/ar\n"
+ " Ranlib: /data/data/com.termux/files/usr/bin/ranlib\n"
+ "\n"
+ "Languages:\n"
+ "----------\n"
+ " C: YES\n"
+ " C Compiler: /data/data/com.termux/files/usr/bin/clang 15.0.3\n"
+ " CPPFLAGS: \n"
+ " H5_CPPFLAGS: \n"
+ " AM_CPPFLAGS: \n"
+ " CFLAGS: -std=c99 -Oz -fstack-protector-strong -I/data/data/com.termux/files/usr/include\n"
+ " H5_CFLAGS: -Wall;-Warray-bounds;-Wcast-qual;-Wconversion;-Wdouble-promotion;-Wextra;-Wformat=2;-Wframe-larger-than=16384;-Wimplicit-fallthrough;-Wnull-dereference;-Wunused-const-variable;-Wwrite-strings;-Wpedantic;-Wvolatile-register-var;-Wno-c++-compat;-Wbad-function-cast;-Wimplicit-function-declaration;-Wincompatible-pointer-types;-Wmissing-declarations;-Wpacked;-Wshadow;-Wswitch;-Wno-error=incompatible-pointer-types-discards-qualifiers;-Wunused-function;-Wunused-variable;-Wunused-parameter;-Wcast-align;-Wformat;-Wno-missing-noreturn\n"
+ " AM_CFLAGS: \n"
+ " Shared C Library: YES\n"
+ " Static C Library: YES\n"
+ "\n"
+ " Fortran: OFF\n"
+ " Fortran Compiler: \n"
+ " Fortran Flags: \n"
+ " H5 Fortran Flags: \n"
+ " AM Fortran Flags: \n"
+ " Shared Fortran Library: YES\n"
+ " Static Fortran Library: YES\n"
+ "\n"
+ " C++: ON\n"
+ " C++ Compiler: /data/data/com.termux/files/usr/bin/clang++ 15.0.3\n"
+ " C++ Flags: -Oz -fstack-protector-strong -I/data/data/com.termux/files/usr/include\n"
+ " H5 C++ Flags: -Wall;-Warray-bounds;-Wcast-qual;-Wconversion;-Wdouble-promotion;-Wextra;-Wformat=2;-Wframe-larger-than=16384;-Wimplicit-fallthrough;-Wnull-dereference;-Wunused-const-variable;-Wwrite-strings;-Wpedantic;-Wvolatile-register-var;-Wno-c++-compat;-Wno-missing-noreturn\n"
+ " AM C++ Flags: \n"
+ " Shared C++ Library: YES\n"
+ " Static C++ Library: YES\n"
+ "\n"
+ " JAVA: OFF\n"
+ " JAVA Compiler: \n"
+ "\n"
+ "Features:\n"
+ "---------\n"
+ " Parallel HDF5: OFF\n"
+ " Parallel Filtered Dataset Writes: \n"
+ " Large Parallel I/O: \n"
+ " High-level library: ON\n"
+ "Dimension scales w/ new references: \n"
+ " Build HDF5 Tests: OFF\n"
+ " Build HDF5 Tools: ON\n"
+ " Build High-level HDF5 Tools: ON\n"
+ " Threadsafety: OFF\n"
+ " Default API mapping: v112\n"
+ " With deprecated public symbols: ON\n"
+ " I/O filters (external): DEFLATE\n"
+ " MPE: \n"
+ " Direct VFD: \n"
+ " Mirror VFD: \n"
+ " (Read-Only) S3 VFD: \n"
+ " (Read-Only) HDFS VFD: \n"
+ " dmalloc: \n"
+ " Packages w/ extra debug output: \n"
+ " API Tracing: OFF\n"
+ " Using memory checker: OFF\n"
+ " Memory allocation sanity checks: OFF\n"
+ " Function Stack Tracing: OFF\n"
+ " Use file locking: best-effort\n"
+ " Strict File Format Checks: OFF\n"
+ " Optimization Instrumentation: \n"
+;
+
diff --git a/buildroot-external/package/hdf5/TryRunResults.cmake b/buildroot-external/package/hdf5/TryRunResults.cmake
deleted file mode 100644
index 475a4ac2..00000000
--- a/buildroot-external/package/hdf5/TryRunResults.cmake
+++ /dev/null
@@ -1,14 +0,0 @@
-set( TEST_LFS_WORKS_RUN "0" CACHE STRING "Result from TRY_RUN" FORCE)
-set( TEST_LFS_WORKS_RUN__TRYRUN_OUTPUT "" CACHE STRING "Output from TRY_RUN" FORCE)
-set( H5_LDOUBLE_TO_LONG_SPECIAL_RUN "1" CACHE STRING "Result from TRY_RUN" FORCE)
-set( H5_LDOUBLE_TO_LONG_SPECIAL_RUN__TRYRUN_OUTPUT "" CACHE STRING "Output from TRY_RUN" FORCE)
-set( H5_LONG_TO_LDOUBLE_SPECIAL_RUN "1" CACHE STRING "Result from TRY_RUN" FORCE)
-set( H5_LONG_TO_LDOUBLE_SPECIAL_RUN__TRYRUN_OUTPUT "" CACHE STRING "Output from TRY_RUN" FORCE)
-set( H5_LDOUBLE_TO_LLONG_ACCURATE_RUN "0" CACHE STRING "Result from TRY_RUN" FORCE)
-set( H5_LDOUBLE_TO_LLONG_ACCURATE_RUN__TRYRUN_OUTPUT "" CACHE STRING "Output from TRY_RUN" FORCE)
-set( H5_LLONG_TO_LDOUBLE_CORRECT_RUN "0" CACHE STRING "Result from TRY_RUN" FORCE)
-set( H5_LLONG_TO_LDOUBLE_CORRECT_RUN__TRYRUN_OUTPUT "" CACHE STRING "Output from TRY_RUN" FORCE)
-set( H5_DISABLE_SOME_LDOUBLE_CONV_RUN "PLEASE_FILL_OUT-FAILED_TO_RUN" CACHE STRING "Result from TRY_RUN" FORCE)
-set( H5_DISABLE_SOME_LDOUBLE_CONV_RUN__TRYRUN_OUTPUT "PLEASE_FILL_OUT-NOTFOUND" CACHE STRING "Output from TRY_RUN" FORCE)
-set( H5_DISABLE_SOME_LDOUBLE_CONV_RUN "1" CACHE STRING "Result from TRY_RUN" FORCE)
-set( H5_DISABLE_SOME_LDOUBLE_CONV_RUN__TRYRUN_OUTPUT "" CACHE STRING "Output from TRY_RUN" FORCE)
diff --git a/buildroot-external/package/hdf5/hdf5.hash b/buildroot-external/package/hdf5/hdf5.hash
index ee0a3bb7..7b86873e 100644
--- a/buildroot-external/package/hdf5/hdf5.hash
+++ b/buildroot-external/package/hdf5/hdf5.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 d13286fa848b1be6630f90e2f429aabac277d729f8ddcfedaf5552553ccf80cb hdf5-cfd5059e77e2e411a94a13d2fb033224736be09d.tar.gz
+sha256 1ca14cadff7bc4b61826eee591da1a330f44c107db66c9510ee95df3b2bc5f78 hdf5-hdf5-1_12_2.tar.gz
diff --git a/buildroot-external/package/hdf5/hdf5.mk b/buildroot-external/package/hdf5/hdf5.mk
index 83d66fbb..0cdf02f1 100644
--- a/buildroot-external/package/hdf5/hdf5.mk
+++ b/buildroot-external/package/hdf5/hdf5.mk
@@ -4,16 +4,55 @@
#
################################################################################
-HDF5_VERSION = cfd5059e77e2e411a94a13d2fb033224736be09d
+HDF5_VERSION = hdf5-1_12_2
HDF5_SITE = $(call github,HDFGroup,hdf5,$(HDF5_VERSION))
HDF5_SUPPORTS_IN_SOURCE_BUILD = NO
HDF5_INSTALL_STAGING = YES
-HDF5_DEPENDENCIES = hdf5-hosttools
+HDF5_PRE_CONFIGURE_HOOKS = HDF5_INIT
HDF5_CONF_OPTS += \
+ -DTEST_LFS_WORKS_RUN=0 \
+ -DTEST_LFS_WORKS_RUN__TRYRUN_OUTPUT="" \
+ -DH5_PRINTF_LL_TEST_RUN=0 \
+ -DH5_PRINTF_LL_TEST_RUN__TRYRUN_OUTPUT="H5_PRINTF_LL_WIDTH=[l]" \
+ -DRUN_RESULT_VAR=0 \
+ -DRUN_RESULT_VAR__TRYRUN_OUTPUT="" \
+ -DH5_LDOUBLE_TO_LONG_SPECIAL_RUN=1 \
+ -DH5_LDOUBLE_TO_LONG_SPECIAL_RUN__TRYRUN_OUTPUT="" \
+ -DH5_LONG_TO_LDOUBLE_SPECIAL_RUN=1 \
+ -DH5_LONG_TO_LDOUBLE_SPECIAL_RUN__TRYRUN_OUTPUT="" \
+ -DH5_LDOUBLE_TO_LLONG_ACCURATE_RUN=0 \
+ -DH5_LDOUBLE_TO_LLONG_ACCURATE_RUN__TRYRUN_OUTPUT="" \
+ -DH5_LLONG_TO_LDOUBLE_CORRECT_RUN=0 \
+ -DH5_LLONG_TO_LDOUBLE_CORRECT_RUN__TRYRUN_OUTPUT="" \
+ -DH5_NO_ALIGNMENT_RESTRICTIONS_RUN=0 \
+ -DH5_NO_ALIGNMENT_RESTRICTIONS_RUN__TRYRUN_OUTPUT="" \
+ -DH5_DISABLE_SOME_LDOUBLE_CONV_RUN=1 \
+ -DH5_DISABLE_SOME_LDOUBLE_CONV_RUN__TRYRUN_OUTPUT="" \
-DHDF5_BUILD_CPP_LIB=ON \
- -DHDF5_ENABLE_Z_LIB_SUPPORT=ON \
- -C$(BR2_EXTERNAL_OPENVOICEOS_PATH)/package/hdf5/TryRunResults_out.cmake
+ -DHDF5_ENABLE_Z_LIB_SUPPORT=ON
+
+define HDF5_INIT
+ mkdir -p $(@D)/src/shared
+ $(INSTALL) -D -m 644 $(BR2_EXTERNAL_OPENVOICEOS_PATH)/package/hdf5/*.c \
+ $(@D)/src/
+ $(INSTALL) -D -m 644 $(BR2_EXTERNAL_OPENVOICEOS_PATH)/package/hdf5/*.c \
+ $(@D)/src/shared/
+
+ mkdir -p $(@D)/buildroot-build/src/shared
+ $(INSTALL) -D -m 644 $(BR2_EXTERNAL_OPENVOICEOS_PATH)/package/hdf5/*.c \
+ $(@D)/buildroot-build/src/
+ $(INSTALL) -D -m 644 $(BR2_EXTERNAL_OPENVOICEOS_PATH)/package/hdf5/*.c \
+ $(@D)/buildroot-build/src/shared/
+ touch $(@D)/src/gen_SRCS.stamp1
+ touch $(@D)/src/gen_SRCS.stamp2
+ touch $(@D)/src/shared/shared_gen_SRCS.stamp1
+ touch $(@D)/src/shared/shared_gen_SRCS.stamp2
+ touch $(@D)/buildroot-build/src/gen_SRCS.stamp1
+ touch $(@D)/buildroot-build/src/gen_SRCS.stamp2
+ touch $(@D)/buildroot-build/src/shared/shared_gen_SRCS.stamp1
+ touch $(@D)/buildroot-build/src/shared/shared_gen_SRCS.stamp2
+endef
$(eval $(cmake-package))