Skip to content

{data}[nvofbf/2024.9] HDF5 v1.14.5#23054

Open
maxim-masterov wants to merge 2 commits intoeasybuilders:developfrom
maxim-masterov:hdf5_nvompi_2024.09
Open

{data}[nvofbf/2024.9] HDF5 v1.14.5#23054
maxim-masterov wants to merge 2 commits intoeasybuilders:developfrom
maxim-masterov:hdf5_nvompi_2024.09

Conversation

@maxim-masterov
Copy link
Copy Markdown
Collaborator

@github-actions github-actions bot added the update label Jun 6, 2025
@github-actions
Copy link
Copy Markdown

github-actions bot commented Jun 6, 2025

Updated software HDF5-1.14.5-nvompi-2024.09.eb

Diff against HDF5-1.14.6-GCC-14.3.0-serial.eb

easybuild/easyconfigs/h/HDF5/HDF5-1.14.6-GCC-14.3.0-serial.eb

diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.14.6-GCC-14.3.0-serial.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.5-nvompi-2024.09.eb
index 9357060d4b..df341e4dde 100644
--- a/easybuild/easyconfigs/h/HDF5/HDF5-1.14.6-GCC-14.3.0-serial.eb
+++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.5-nvompi-2024.09.eb
@@ -1,53 +1,32 @@
-easyblock = 'CMakeMake'
-
 name = 'HDF5'
 # Note: Odd minor releases are only RCs and should not be used.
-version = '1.14.6'
-versionsuffix = '-serial'
+version = '1.14.5'
 
 homepage = 'https://portal.hdfgroup.org/display/support'
 description = """HDF5 is a data model, library, and file format for storing and managing data.
  It supports an unlimited variety of datatypes, and is designed for flexible
  and efficient I/O and for high volume and complex data."""
 
-toolchain = {'name': 'GCC', 'version': '14.3.0'}
-toolchainopts = {'pic': True}
+toolchain = {'name': 'nvompi', 'version': '2024.9'}
+toolchainopts = {'pic': True, 'usempi': True}
+
 
 source_urls = ['https://github.com/HDFGroup/hdf5/archive']
 sources = ['hdf5_%(version)s.tar.gz']
-checksums = ['09ee1c671a87401a5201c06106650f62badeea5a3b3941e9b1e2e1e08317357f']
-
-builddependencies = [('CMake', '4.0.3')]
+patches = ['HDF5-1.14.5_nvompi_fix_use_mpi.patch']
+checksums = [
+    'c83996dc79080a34e7b5244a1d5ea076abfd642ec12d7c25388e2fdd81d26350',  # hdf5_1.14.5.tar.gz
+    '60ef02bdd12ae62d3f284d2434728dc6b9bad61ecacc7ab9320001ce3c337df4',  # HDF5-1.14.5_nvompi_fix_use_mpi.patch
+]
 
 dependencies = [
-    ('libaec', '1.1.4'),
-    ('Perl', '5.40.2'),
     ('zlib', '1.3.1'),
+    ('Szip', '2.1.1'),
 ]
 
-preconfigopts = 'export LDFLAGS="$LDFLAGS -pthread" && '
-configopts = ' '.join([
-    '-DHDF5_BUILD_CPP_LIB=ON',
-    '-DHDF5_BUILD_FORTRAN=ON',
-    '-DHDF5_ENABLE_THREADSAFE=ON',
-    '-DALLOW_UNSUPPORTED=ON',  # fortran+threadsafe requires unsupported
-])
-# h5redeploy is shipped in 1.14.6 but not installed by CMake. This will be removed in a future HDF5 release.
 postinstallcmds = [
-    "cp ../hdf5*/bin/h5redeploy.in %(installdir)s/bin/h5redeploy && chmod +x %(installdir)s/bin/h5redeploy",
+    'sed -i -r "s, -I[^[:space:]]+H5FDsubfiling , -I%(installdir)s/include ,g" %(installdir)s/bin/h5c++',
+    'sed -i -r "s, -I[^[:space:]]+H5FDsubfiling , -I%(installdir)s/include ,g" %(installdir)s/bin/h5pcc',
 ]
 
-_extra_binaries = ["h5cc", "h5fc"]
-_h5binaries = ["c++", "copy", "debug", "diff", "dump", "import", "jam", "ls", "mkgrp", "perf_serial", "redeploy",
-               "repack", "repart", "stat", "unjam"]
-_binaries = ["h5%s" % x for x in _h5binaries] + _extra_binaries
-_libs = ["libhdf5%s.%s" % (lib, SHLIB_EXT) for lib in ['', '_cpp', '_fortran', '_hl_cpp', '_hl', '_hl_fortran']]
-
-sanity_check_paths = {
-    'files': [f"bin/{x}" for x in _binaries] + [f"lib/{lib}" for lib in _libs],
-    'dirs': ['include'],
-}
-
-modextravars = {'HDF5_DIR': ''}
-
 moduleclass = 'data'
Diff against HDF5-1.14.6-iimpi-2025a.eb

easybuild/easyconfigs/h/HDF5/HDF5-1.14.6-iimpi-2025a.eb

diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.14.6-iimpi-2025a.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.5-nvompi-2024.09.eb
index 6c064820fd..df341e4dde 100644
--- a/easybuild/easyconfigs/h/HDF5/HDF5-1.14.6-iimpi-2025a.eb
+++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.5-nvompi-2024.09.eb
@@ -1,18 +1,23 @@
 name = 'HDF5'
 # Note: Odd minor releases are only RCs and should not be used.
-version = '1.14.6'
+version = '1.14.5'
 
 homepage = 'https://portal.hdfgroup.org/display/support'
 description = """HDF5 is a data model, library, and file format for storing and managing data.
  It supports an unlimited variety of datatypes, and is designed for flexible
  and efficient I/O and for high volume and complex data."""
 
-toolchain = {'name': 'iimpi', 'version': '2025a'}
+toolchain = {'name': 'nvompi', 'version': '2024.9'}
 toolchainopts = {'pic': True, 'usempi': True}
 
+
 source_urls = ['https://github.com/HDFGroup/hdf5/archive']
 sources = ['hdf5_%(version)s.tar.gz']
-checksums = ['09ee1c671a87401a5201c06106650f62badeea5a3b3941e9b1e2e1e08317357f']
+patches = ['HDF5-1.14.5_nvompi_fix_use_mpi.patch']
+checksums = [
+    'c83996dc79080a34e7b5244a1d5ea076abfd642ec12d7c25388e2fdd81d26350',  # hdf5_1.14.5.tar.gz
+    '60ef02bdd12ae62d3f284d2434728dc6b9bad61ecacc7ab9320001ce3c337df4',  # HDF5-1.14.5_nvompi_fix_use_mpi.patch
+]
 
 dependencies = [
     ('zlib', '1.3.1'),
Diff against HDF5-1.14.6-gompi-2025b.eb

easybuild/easyconfigs/h/HDF5/HDF5-1.14.6-gompi-2025b.eb

diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.14.6-gompi-2025b.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.5-nvompi-2024.09.eb
index 22a22c7c1d..df341e4dde 100644
--- a/easybuild/easyconfigs/h/HDF5/HDF5-1.14.6-gompi-2025b.eb
+++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.5-nvompi-2024.09.eb
@@ -1,54 +1,32 @@
-easyblock = 'CMakeMake'
-
 name = 'HDF5'
 # Note: Odd minor releases are only RCs and should not be used.
-version = '1.14.6'
+version = '1.14.5'
 
 homepage = 'https://portal.hdfgroup.org/display/support'
 description = """HDF5 is a data model, library, and file format for storing and managing data.
  It supports an unlimited variety of datatypes, and is designed for flexible
  and efficient I/O and for high volume and complex data."""
 
-toolchain = {'name': 'gompi', 'version': '2025b'}
+toolchain = {'name': 'nvompi', 'version': '2024.9'}
 toolchainopts = {'pic': True, 'usempi': True}
 
+
 source_urls = ['https://github.com/HDFGroup/hdf5/archive']
 sources = ['hdf5_%(version)s.tar.gz']
-checksums = ['09ee1c671a87401a5201c06106650f62badeea5a3b3941e9b1e2e1e08317357f']
-
-builddependencies = [('CMake', '4.0.3')]
+patches = ['HDF5-1.14.5_nvompi_fix_use_mpi.patch']
+checksums = [
+    'c83996dc79080a34e7b5244a1d5ea076abfd642ec12d7c25388e2fdd81d26350',  # hdf5_1.14.5.tar.gz
+    '60ef02bdd12ae62d3f284d2434728dc6b9bad61ecacc7ab9320001ce3c337df4',  # HDF5-1.14.5_nvompi_fix_use_mpi.patch
+]
 
 dependencies = [
-    ('libaec', '1.1.4'),
-    ('Perl', '5.40.2'),
     ('zlib', '1.3.1'),
+    ('Szip', '2.1.1'),
 ]
 
-preconfigopts = 'export LDFLAGS="$LDFLAGS -pthread" && '
-preconfigopts += 'export RUNPARALLEL="mpirun -np $${NPROCS:=3}" && '
-configopts = ' '.join([
-    '-DHDF5_BUILD_CPP_LIB=ON',
-    '-DHDF5_BUILD_FORTRAN=ON',
-    '-DHDF5_ENABLE_THREADSAFE=ON',
-    '-DALLOW_UNSUPPORTED=ON',  # fortran+threadsafe requires unsupported
-    '-DHDF5_ENABLE_PARALLEL=ON',
-])
-# h5redeploy is shipped in 1.14.6 but not installed by CMake. This will be removed in a future HDF5 release.
 postinstallcmds = [
-    "cp ../hdf5*/bin/h5redeploy.in %(installdir)s/bin/h5redeploy && chmod +x %(installdir)s/bin/h5redeploy",
+    'sed -i -r "s, -I[^[:space:]]+H5FDsubfiling , -I%(installdir)s/include ,g" %(installdir)s/bin/h5c++',
+    'sed -i -r "s, -I[^[:space:]]+H5FDsubfiling , -I%(installdir)s/include ,g" %(installdir)s/bin/h5pcc',
 ]
 
-_extra_binaries = ["h5perf", "h5pcc", "h5pfc", "ph5diff"]
-_h5binaries = ["c++", "copy", "debug", "diff", "dump", "import", "jam", "ls", "mkgrp", "perf_serial", "redeploy",
-               "repack", "repart", "stat", "unjam"]
-_binaries = ["h5%s" % x for x in _h5binaries] + _extra_binaries
-_libs = ["libhdf5%s.%s" % (lib, SHLIB_EXT) for lib in ['', '_cpp', '_fortran', '_hl_cpp', '_hl', '_hl_fortran']]
-
-sanity_check_paths = {
-    'files': [f"bin/{x}" for x in _binaries] + [f"lib/{lib}" for lib in _libs],
-    'dirs': ['include'],
-}
-
-modextravars = {'HDF5_DIR': ''}
-
 moduleclass = 'data'

@sassy-crick sassy-crick added the 2024a issues & PRs related to 2024a common toolchains label Aug 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

2024a issues & PRs related to 2024a common toolchains update

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants