public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/netcdf] rawhide: Update to 4.10.1 upstream release
@ 2026-08-23 23:00 Orion Poplawski
0 siblings, 0 replies; only message in thread
From: Orion Poplawski @ 2026-08-23 23:00 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/netcdf
Branch : rawhide
Commit : 41ac4caacf842f5b63047b8942c804f0c2680eba
Author : Orion Poplawski <orion@nwra.com>
Date : 2026-08-16T07:56:34-06:00
Stats : +7/-2001 in 9 file(s)
URL : https://src.fedoraproject.org/rpms/netcdf/c/41ac4caacf842f5b63047b8942c804f0c2680eba?branch=rawhide
Log:
Update to 4.10.1 upstream release
Commit co-authored by Packit automation (https://packit.dev/)
---
diff --git a/.gitignore b/.gitignore
index 2ddc8b5..f978a99 100644
--- a/.gitignore
+++ b/.gitignore
@@ -26,3 +26,4 @@ netcdf-4.1.1.tar.gz
/netcdf-4.9.2.tar.gz
/netcdf-4.9.3.tar.gz
/netcdf-4.10.0.tar.gz
+/netcdf-4.10.1.tar.gz
diff --git a/3285.patch b/3285.patch
deleted file mode 100644
index e9f6265..0000000
--- a/3285.patch
+++ /dev/null
@@ -1,1856 +0,0 @@
-From 5544fb87070b03946ef0d4d7140d63a17fa7282c Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 06:46:09 -0700
-Subject: [PATCH 01/41] Add big-endian CI workflow
-
----
- .github/workflows/run_tests_bigendian.yml | 103 ++++++++++++++++++++++
- 1 file changed, 103 insertions(+)
- create mode 100644 .github/workflows/run_tests_bigendian.yml
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-new file mode 100644
-index 0000000000..1b34fdfa4e
---- /dev/null
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -0,0 +1,103 @@
-+###
-+# Build and test netCDF-C on a big-endian platform (IBM s390x) using QEMU emulation.
-+###
-+
-+name: Run Big-Endian (s390x) netCDF Tests
-+
-+on: [workflow_dispatch]
-+
-+concurrency:
-+ group: ${{ github.workflow }}-${{ github.head_ref }}
-+ cancel-in-progress: true
-+
-+jobs:
-+
-+ nc-bigendian-s390x:
-+
-+ name: Autotools build on s390x (big-endian)
-+ runs-on: ubuntu-latest
-+
-+ steps:
-+
-+ - uses: actions/checkout@v4
-+
-+ - name: Build and test on s390x via QEMU
-+ uses: uraimo/run-on-arch-action@v2
-+ with:
-+ arch: s390x
-+ distro: ubuntu22.04
-+
-+ # Pass the checked-out source into the container
-+ githubToken: ${{ github.token }}
-+
-+ install: |
-+ apt-get update -q -y
-+ apt-get install -q -y \
-+ libaec-dev \
-+ zlib1g-dev \
-+ automake \
-+ autoconf \
-+ libcurl4-openssl-dev \
-+ libjpeg-dev \
-+ wget \
-+ curl \
-+ bzip2 \
-+ m4 \
-+ flex \
-+ bison \
-+ cmake \
-+ libzip-dev
-+
-+ run: |
-+ set -e
-+ set -x
-+
-+ ###
-+ # Build HDF5 1.14.6 from source
-+ ###
-+ HDF5_PREFIX="${HOME}/environments/hdf5"
-+ mkdir -p "${HDF5_PREFIX}"
-+
-+ wget https://github.com/HDFGroup/hdf5/archive/refs/tags/hdf5_1.14.6.tar.gz
-+ tar -zxf hdf5_1.14.6.tar.gz
-+ pushd hdf5-hdf5_1.14.6
-+ ./configure \
-+ --disable-static \
-+ --enable-shared \
-+ --prefix="${HDF5_PREFIX}" \
-+ --enable-hl
-+ make -j 2
-+ make install -j 2
-+ popd
-+
-+ ###
-+ # Configure and build netCDF-C
-+ ###
-+ export CFLAGS="-I${HDF5_PREFIX}/include"
-+ export LDFLAGS="-L${HDF5_PREFIX}/lib"
-+ export LD_LIBRARY_PATH="${HDF5_PREFIX}/lib"
-+
-+ autoreconf -if
-+
-+ ./configure \
-+ --enable-hdf5 \
-+ --enable-dap \
-+ --disable-dap-remote-tests \
-+ --disable-shared \
-+ --enable-static \
-+ CFLAGS="${CFLAGS}" \
-+ LDFLAGS="${LDFLAGS}"
-+
-+ cat libnetcdf.settings
-+
-+ make -j 2
-+
-+ ###
-+ # Build and run tests
-+ ###
-+ make check TESTS="" -j 2
-+ LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" make check -j 2
-+
-+ - name: Show config.log on failure
-+ if: ${{ failure() }}
-+ run: cat config.log || true
-
-From 6fdf34924e31a2007addedde131b6a8c71f516aa Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 06:53:12 -0700
-Subject: [PATCH 02/41] Fix big-endian CI: use apt libhdf5-dev instead of
- building from source
-
----
- .github/workflows/run_tests_bigendian.yml | 34 ++++-------------------
- 1 file changed, 6 insertions(+), 28 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 1b34fdfa4e..f0977b7eba 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -46,37 +46,17 @@ jobs:
- flex \
- bison \
- cmake \
-- libzip-dev
-+ libzip-dev \
-+ libhdf5-dev \
-+ libhdf5-103-1
-
- run: |
- set -e
- set -x
-
- ###
-- # Build HDF5 1.14.6 from source
-+ # Configure and build netCDF-C against apt-installed HDF5
- ###
-- HDF5_PREFIX="${HOME}/environments/hdf5"
-- mkdir -p "${HDF5_PREFIX}"
--
-- wget https://github.com/HDFGroup/hdf5/archive/refs/tags/hdf5_1.14.6.tar.gz
-- tar -zxf hdf5_1.14.6.tar.gz
-- pushd hdf5-hdf5_1.14.6
-- ./configure \
-- --disable-static \
-- --enable-shared \
-- --prefix="${HDF5_PREFIX}" \
-- --enable-hl
-- make -j 2
-- make install -j 2
-- popd
--
-- ###
-- # Configure and build netCDF-C
-- ###
-- export CFLAGS="-I${HDF5_PREFIX}/include"
-- export LDFLAGS="-L${HDF5_PREFIX}/lib"
-- export LD_LIBRARY_PATH="${HDF5_PREFIX}/lib"
--
- autoreconf -if
-
- ./configure \
-@@ -84,9 +64,7 @@ jobs:
- --enable-dap \
- --disable-dap-remote-tests \
- --disable-shared \
-- --enable-static \
-- CFLAGS="${CFLAGS}" \
-- LDFLAGS="${LDFLAGS}"
-+ --enable-static
-
- cat libnetcdf.settings
-
-@@ -96,7 +74,7 @@ jobs:
- # Build and run tests
- ###
- make check TESTS="" -j 2
-- LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" make check -j 2
-+ make check -j 2
-
- - name: Show config.log on failure
- if: ${{ failure() }}
-
-From 78dca86fab8274d0e2f8695cdb780d7d24f29d5e Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 06:57:13 -0700
-Subject: [PATCH 03/41] Add libtool to big-endian CI apt deps
-
----
- .github/workflows/run_tests_bigendian.yml | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index f0977b7eba..0d0b25ef4b 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -48,7 +48,8 @@ jobs:
- cmake \
- libzip-dev \
- libhdf5-dev \
-- libhdf5-103-1
-+ libhdf5-103-1 \
-+ libtool
-
- run: |
- set -e
-
-From 246fb7e1b82ae8ac72b0a893dfdff8a66957ab23 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 07:02:45 -0700
-Subject: [PATCH 04/41] Disable nczarr, print config.log on configure failure
-
----
- .github/workflows/run_tests_bigendian.yml | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 0d0b25ef4b..969f5ee9a7 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -64,8 +64,10 @@ jobs:
- --enable-hdf5 \
- --enable-dap \
- --disable-dap-remote-tests \
-+ --disable-nczarr \
- --disable-shared \
-- --enable-static
-+ --enable-static \
-+ || { tail -200 config.log; exit 1; }
-
- cat libnetcdf.settings
-
-
-From 6f69a2fef462f497d2ca3c59a13eda66ad0715e5 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 07:03:49 -0700
-Subject: [PATCH 05/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 969f5ee9a7..cf27ce249d 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -65,6 +65,7 @@ jobs:
- --enable-dap \
- --disable-dap-remote-tests \
- --disable-nczarr \
-+ --disable-libxml2 \
- --disable-shared \
- --enable-static \
- || { tail -200 config.log; exit 1; }
-
-From 396ccf91084a63b73323016d9cdf677cfb2d1b41 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 07:07:43 -0700
-Subject: [PATCH 06/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index cf27ce249d..f50ca6b102 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -61,6 +61,7 @@ jobs:
- autoreconf -if
-
- ./configure \
-+ --host=s390x-linux-gnu \
- --enable-hdf5 \
- --enable-dap \
- --disable-dap-remote-tests \
-
-From 1e032e523ccb9b74f71fc7dfa0f3a94f2374dd81 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 07:16:10 -0700
-Subject: [PATCH 07/41] working on the ci
-
----
- .github/workflows/run_tests_bigendian.yml | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index f50ca6b102..5d75ded17d 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -63,7 +63,7 @@ jobs:
- ./configure \
- --host=s390x-linux-gnu \
- --enable-hdf5 \
-- --enable-dap \
-+ --disable-dap \
- --disable-dap-remote-tests \
- --disable-nczarr \
- --disable-libxml2 \
-
-From 977da6110f4417b9aebeaa1eb3041c4611a238bc Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 07:23:15 -0700
-Subject: [PATCH 08/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 5d75ded17d..7c651e8e0a 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -60,6 +60,9 @@ jobs:
- ###
- autoreconf -if
-
-+ CPPFLAGS="-I/usr/include/hdf5/serial" \
-+ LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial" \
-+ LIBS="-lhdf5_serial" \
- ./configure \
- --host=s390x-linux-gnu \
- --enable-hdf5 \
-
-From a5b4dacd72d85ae8e0dca2d2eac951d1e97ff4cf Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 08:36:47 -0700
-Subject: [PATCH 09/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 7c651e8e0a..f50678d1d3 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -49,7 +49,8 @@ jobs:
- libzip-dev \
- libhdf5-dev \
- libhdf5-103-1 \
-- libtool
-+ libtool \
-+ g++-s390x-linux-gnu
-
- run: |
- set -e
-
-From c7137c81ed0abc5159ec1fd4d0a0a0f75e0cb9e7 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 08:47:19 -0700
-Subject: [PATCH 10/41] Fix fillp undeclared in
- ncx_getn_float/double_float/double fallback paths
-
----
- libsrc/ncx.m4 | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/libsrc/ncx.m4 b/libsrc/ncx.m4
-index e5b9b154f7..7cb1c24580 100644
---- a/libsrc/ncx.m4
-+++ b/libsrc/ncx.m4
-@@ -3204,7 +3204,7 @@ APIPrefix`x_getn_'NC_TYPE(float)_float(const void **xpp, IntType nelems, float *
-
- for( ; nelems != 0; nelems--, xp += X_SIZEOF_FLOAT, tp++)
- {
-- const int lstatus = APIPrefix`x_get_'NC_TYPE(float)_float(xp, tp, fillp);
-+ const int lstatus = APIPrefix`x_get_'NC_TYPE(float)_float(xp, tp, NULL);
- if (status == NC_NOERR) /* report the first encountered error */
- status = lstatus;
- }
-@@ -3314,7 +3314,7 @@ APIPrefix`x_getn_'NC_TYPE(double)_double(const void **xpp, IntType nelems, doubl
-
- for( ; nelems != 0; nelems--, xp += X_SIZEOF_DOUBLE, tp++)
- {
-- const int lstatus = APIPrefix`x_get_'NC_TYPE(double)_double(xp, tp, fillp);
-+ const int lstatus = APIPrefix`x_get_'NC_TYPE(double)_double(xp, tp, NULL);
- if (status == NC_NOERR) /* report the first encountered error */
- status = lstatus;
- }
-
-From 65804f845418d596f373711674d236140adaad54 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 08:56:19 -0700
-Subject: [PATCH 11/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index f50678d1d3..dc9f3cd0ee 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -64,6 +64,7 @@ jobs:
- CPPFLAGS="-I/usr/include/hdf5/serial" \
- LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial" \
- LIBS="-lhdf5_serial" \
-+ CFLAGS="-O0" \
- ./configure \
- --host=s390x-linux-gnu \
- --enable-hdf5 \
-@@ -77,13 +78,13 @@ jobs:
-
- cat libnetcdf.settings
-
-- make -j 2
-+ make -j 1
-
- ###
- # Build and run tests
- ###
-- make check TESTS="" -j 2
-- make check -j 2
-+ make check TESTS="" -j 1
-+ make check -j 1
-
- - name: Show config.log on failure
- if: ${{ failure() }}
-
-From 13a961a867ba655082a3c3ba9a914af1aaeac09d Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 09:06:33 -0700
-Subject: [PATCH 12/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 8 +++++---
- 1 file changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index dc9f3cd0ee..0054a911ee 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -25,13 +25,14 @@ jobs:
- uses: uraimo/run-on-arch-action@v2
- with:
- arch: s390x
-- distro: ubuntu22.04
-+ distro: ubuntu24.04
-
- # Pass the checked-out source into the container
- githubToken: ${{ github.token }}
-
- install: |
- apt-get update -q -y
-+ apt-cache search libhdf5 | sort
- apt-get install -q -y \
- libaec-dev \
- zlib1g-dev \
-@@ -48,9 +49,10 @@ jobs:
- cmake \
- libzip-dev \
- libhdf5-dev \
-- libhdf5-103-1 \
-+ libhdf5-103-1t64 \
- libtool \
-- g++-s390x-linux-gnu
-+ g++-s390x-linux-gnu \
-+ gcc-s390x-linux-gnu
-
- run: |
- set -e
-
-From 2a55c5930f57a25eeced9e77b667562d7c041bf9 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 09:10:01 -0700
-Subject: [PATCH 13/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 0054a911ee..7d1814f0e0 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -25,7 +25,7 @@ jobs:
- uses: uraimo/run-on-arch-action@v2
- with:
- arch: s390x
-- distro: ubuntu24.04
-+ distro: ubuntu22.04
-
- # Pass the checked-out source into the container
- githubToken: ${{ github.token }}
-@@ -49,7 +49,7 @@ jobs:
- cmake \
- libzip-dev \
- libhdf5-dev \
-- libhdf5-103-1t64 \
-+ libhdf5-103-1 \
- libtool \
- g++-s390x-linux-gnu \
- gcc-s390x-linux-gnu
-@@ -76,6 +76,7 @@ jobs:
- --disable-libxml2 \
- --disable-shared \
- --enable-static \
-+ --disable-utilities \
- || { tail -200 config.log; exit 1; }
-
- cat libnetcdf.settings
-
-From 2ce7a00e91cc5fac36b5f561fddc12f98110150b Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 09:18:55 -0700
-Subject: [PATCH 14/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 7d1814f0e0..ded1462e25 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -65,7 +65,7 @@ jobs:
-
- CPPFLAGS="-I/usr/include/hdf5/serial" \
- LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial" \
-- LIBS="-lhdf5_serial" \
-+ LIBS="-lhdf5_serial -lz" \
- CFLAGS="-O0" \
- ./configure \
- --host=s390x-linux-gnu \
-
-From b7b7ef8736ec53283e112992a9e6588a5c6f847a Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 09:27:47 -0700
-Subject: [PATCH 15/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 7 +++----
- 1 file changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index ded1462e25..64906a4d0b 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -51,8 +51,8 @@ jobs:
- libhdf5-dev \
- libhdf5-103-1 \
- libtool \
-- g++-s390x-linux-gnu \
-- gcc-s390x-linux-gnu
-+ gcc \
-+ g++
-
- run: |
- set -e
-@@ -66,9 +66,8 @@ jobs:
- CPPFLAGS="-I/usr/include/hdf5/serial" \
- LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial" \
- LIBS="-lhdf5_serial -lz" \
-- CFLAGS="-O0" \
-+ CC=gcc \
- ./configure \
-- --host=s390x-linux-gnu \
- --enable-hdf5 \
- --disable-dap \
- --disable-dap-remote-tests \
-
-From fd633a7f53399eeb38ab394598d4e9b98a1e8228 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 09:52:34 -0700
-Subject: [PATCH 16/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 64906a4d0b..cb4f251248 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -21,6 +21,14 @@ jobs:
-
- - uses: actions/checkout@v4
-
-+ - name: Add swap space
-+ run: |
-+ sudo fallocate -l 8G /swapfile
-+ sudo chmod 600 /swapfile
-+ sudo mkswap /swapfile
-+ sudo swapon /swapfile
-+ free -h
-+
- - name: Build and test on s390x via QEMU
- uses: uraimo/run-on-arch-action@v2
- with:
-
-From c75518aa452a17e59ecf149738c4f631559999cc Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 09:57:12 -0700
-Subject: [PATCH 17/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index cb4f251248..32d7a46acc 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -23,7 +23,8 @@ jobs:
-
- - name: Add swap space
- run: |
-- sudo fallocate -l 8G /swapfile
-+ sudo swapoff -a || true
-+ sudo dd if=/dev/zero of=/swapfile bs=1M count=8192
- sudo chmod 600 /swapfile
- sudo mkswap /swapfile
- sudo swapon /swapfile
-
-From 65f7eeac003cd7d2d618601044956ac782c92557 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 10:06:36 -0700
-Subject: [PATCH 18/41] Switch to ppc64 big-endian for CI (more stable under
- QEMU than s390x)
-
----
- .github/workflows/run_tests_bigendian.yml | 14 +++++++-------
- 1 file changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 32d7a46acc..d649f1f41b 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -1,8 +1,8 @@
- ###
--# Build and test netCDF-C on a big-endian platform (IBM s390x) using QEMU emulation.
-+# Build and test netCDF-C on a big-endian platform (ppc64) using QEMU emulation.
- ###
-
--name: Run Big-Endian (s390x) netCDF Tests
-+name: Run Big-Endian (ppc64) netCDF Tests
-
- on: [workflow_dispatch]
-
-@@ -12,9 +12,9 @@ concurrency:
-
- jobs:
-
-- nc-bigendian-s390x:
-+ nc-bigendian-ppc64:
-
-- name: Autotools build on s390x (big-endian)
-+ name: Autotools build on ppc64 (big-endian)
- runs-on: ubuntu-latest
-
- steps:
-@@ -30,10 +30,10 @@ jobs:
- sudo swapon /swapfile
- free -h
-
-- - name: Build and test on s390x via QEMU
-+ - name: Build and test on ppc64 via QEMU
- uses: uraimo/run-on-arch-action@v2
- with:
-- arch: s390x
-+ arch: ppc64
- distro: ubuntu22.04
-
- # Pass the checked-out source into the container
-@@ -73,7 +73,7 @@ jobs:
- autoreconf -if
-
- CPPFLAGS="-I/usr/include/hdf5/serial" \
-- LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial" \
-+ LDFLAGS="-L/usr/lib/powerpc64-linux-gnu/hdf5/serial" \
- LIBS="-lhdf5_serial -lz" \
- CC=gcc \
- ./configure \
-
-From 669c88253b101bdf1bc177e147e16f6c1c87b497 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 10:09:40 -0700
-Subject: [PATCH 19/41] Switch to Debian bullseye (GCC 10) for s390x QEMU CI -
- more stable than Ubuntu 22.04 GCC 11
-
----
- .github/workflows/run_tests_bigendian.yml | 17 ++++++++---------
- 1 file changed, 8 insertions(+), 9 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index d649f1f41b..6706ad27c0 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -1,8 +1,8 @@
- ###
--# Build and test netCDF-C on a big-endian platform (ppc64) using QEMU emulation.
-+# Build and test netCDF-C on a big-endian platform (s390x) using QEMU emulation.
- ###
-
--name: Run Big-Endian (ppc64) netCDF Tests
-+name: Run Big-Endian (s390x) netCDF Tests
-
- on: [workflow_dispatch]
-
-@@ -12,9 +12,9 @@ concurrency:
-
- jobs:
-
-- nc-bigendian-ppc64:
-+ nc-bigendian-s390x:
-
-- name: Autotools build on ppc64 (big-endian)
-+ name: Autotools build on s390x (big-endian)
- runs-on: ubuntu-latest
-
- steps:
-@@ -30,11 +30,11 @@ jobs:
- sudo swapon /swapfile
- free -h
-
-- - name: Build and test on ppc64 via QEMU
-+ - name: Build and test on s390x via QEMU
- uses: uraimo/run-on-arch-action@v2
- with:
-- arch: ppc64
-- distro: ubuntu22.04
-+ arch: s390x
-+ distro: bullseye
-
- # Pass the checked-out source into the container
- githubToken: ${{ github.token }}
-@@ -58,7 +58,6 @@ jobs:
- cmake \
- libzip-dev \
- libhdf5-dev \
-- libhdf5-103-1 \
- libtool \
- gcc \
- g++
-@@ -73,7 +72,7 @@ jobs:
- autoreconf -if
-
- CPPFLAGS="-I/usr/include/hdf5/serial" \
-- LDFLAGS="-L/usr/lib/powerpc64-linux-gnu/hdf5/serial" \
-+ LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial" \
- LIBS="-lhdf5_serial -lz" \
- CC=gcc \
- ./configure \
-
-From 21c41a114e477398ff74755bed999d16dbd54acb Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 10:29:04 -0700
-Subject: [PATCH 20/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 9 +++++----
- 1 file changed, 5 insertions(+), 4 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 6706ad27c0..c0c30b5d06 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -34,7 +34,7 @@ jobs:
- uses: uraimo/run-on-arch-action@v2
- with:
- arch: s390x
-- distro: bullseye
-+ distro: ubuntu22.04
-
- # Pass the checked-out source into the container
- githubToken: ${{ github.token }}
-@@ -58,6 +58,7 @@ jobs:
- cmake \
- libzip-dev \
- libhdf5-dev \
-+ libhdf5-103-1 \
- libtool \
- gcc \
- g++
-@@ -88,13 +89,13 @@ jobs:
-
- cat libnetcdf.settings
-
-- make -j 1
-+ for attempt in 1 2 3; do make -j 1 && break || echo "make attempt $attempt failed, retrying..."; done
-
- ###
- # Build and run tests
- ###
-- make check TESTS="" -j 1
-- make check -j 1
-+ for attempt in 1 2 3; do make check TESTS="" -j 1 && break || echo "attempt $attempt failed, retrying..."; done
-+ for attempt in 1 2 3; do make check -j 1 && break || echo "attempt $attempt failed, retrying..."; done
-
- - name: Show config.log on failure
- if: ${{ failure() }}
-
-From a6a6b0049769092222d8bb60d83752c8d30c347d Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 10:45:57 -0700
-Subject: [PATCH 21/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index c0c30b5d06..b7039e871d 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -89,13 +89,13 @@ jobs:
-
- cat libnetcdf.settings
-
-- for attempt in 1 2 3; do make -j 1 && break || echo "make attempt $attempt failed, retrying..."; done
-+ make -j 1
-
- ###
- # Build and run tests
- ###
-- for attempt in 1 2 3; do make check TESTS="" -j 1 && break || echo "attempt $attempt failed, retrying..."; done
-- for attempt in 1 2 3; do make check -j 1 && break || echo "attempt $attempt failed, retrying..."; done
-+ make check TESTS="" -j 1
-+ make check -j 1
-
- - name: Show config.log on failure
- if: ${{ failure() }}
-
-From 131505fb01f11aa23dbf558eb508ad4e696c628a Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 10:49:38 -0700
-Subject: [PATCH 22/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 51 ++++++++++++++++++++---
- 1 file changed, 46 insertions(+), 5 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index b7039e871d..974e88febe 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -1,10 +1,26 @@
- ###
--# Build and test netCDF-C on a big-endian platform (s390x) using QEMU emulation.
-+# Build and test netCDF-C on a big-endian platform using QEMU emulation.
-+#
-+# Target: IBM s390x (z/Architecture), which is big-endian.
-+# The job runs on a standard x86-64 GitHub Actions runner but uses
-+# uraimo/run-on-arch-action to spin up a QEMU-emulated s390x container.
-+# This lets us verify that netCDF-C builds and tests correctly on a
-+# big-endian architecture without needing dedicated hardware.
-+#
-+# HDF5 is installed from the Ubuntu apt repository (libhdf5-dev) rather
-+# than built from source, because building HDF5 from source inside QEMU
-+# requires running compiled test binaries which fails under emulation.
-+#
-+# Triggered manually (workflow_dispatch) or on pull requests to main.
- ###
-
- name: Run Big-Endian (s390x) netCDF Tests
-
--on: [workflow_dispatch]
-+on:
-+ workflow_dispatch:
-+ pull_request:
-+ branches:
-+ - main
-
- concurrency:
- group: ${{ github.workflow }}-${{ github.head_ref }}
-@@ -22,6 +38,9 @@ jobs:
- - uses: actions/checkout@v4
-
- - name: Add swap space
-+ # QEMU emulation is memory-intensive. The default GitHub Actions runner
-+ # has limited swap, which can cause GCC to crash (ICE/segfault) when
-+ # compiling under emulation. Adding 8GB of swap reduces this risk.
- run: |
- sudo swapoff -a || true
- sudo dd if=/dev/zero of=/swapfile bs=1M count=8192
-@@ -36,11 +55,13 @@ jobs:
- arch: s390x
- distro: ubuntu22.04
-
-- # Pass the checked-out source into the container
-+ # githubToken enables caching of the QEMU container image in the
-+ # GitHub Container Registry, speeding up subsequent runs.
- githubToken: ${{ github.token }}
-
- install: |
- apt-get update -q -y
-+ # Print available HDF5 packages for debugging purposes
- apt-cache search libhdf5 | sort
- apt-get install -q -y \
- libaec-dev \
-@@ -68,10 +89,28 @@ jobs:
- set -x
-
- ###
-- # Configure and build netCDF-C against apt-installed HDF5
-+ # Regenerate the autotools build system from source.
-+ # This is required because the checked-out tree may not include
-+ # generated files (configure, Makefile.in, etc.).
- ###
- autoreconf -if
-
-+ ###
-+ # Configure netCDF-C against the apt-installed HDF5 serial library.
-+ #
-+ # The HDF5 serial library on Ubuntu s390x lives in a non-standard
-+ # path (/usr/lib/s390x-linux-gnu/hdf5/serial), so we pass explicit
-+ # CPPFLAGS, LDFLAGS, and LIBS to point configure there.
-+ #
-+ # Features disabled to avoid missing dependencies under emulation:
-+ # --disable-dap : requires curl/libxml2 remote access
-+ # --disable-dap-remote-tests: requires a live DAP server
-+ # --disable-nczarr : requires additional zip/cloud libs
-+ # --disable-libxml2 : not needed without DAP
-+ # --disable-shared : simplifies linking under emulation
-+ # --disable-utilities : skips ncgen/ncdump/etc. binaries
-+ # which are not needed to test the library
-+ ###
- CPPFLAGS="-I/usr/include/hdf5/serial" \
- LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial" \
- LIBS="-lhdf5_serial -lz" \
-@@ -92,7 +131,9 @@ jobs:
- make -j 1
-
- ###
-- # Build and run tests
-+ # Build and run the test suite.
-+ # make check TESTS="" builds the test binaries without running them,
-+ # then make check runs the full suite.
- ###
- make check TESTS="" -j 1
- make check -j 1
-
-From 2f207a06f580bc815c42b90c9981afedb80ccc90 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 11:01:59 -0700
-Subject: [PATCH 23/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 9 +++++----
- 1 file changed, 5 insertions(+), 4 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 974e88febe..0ea6b48d5c 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -39,11 +39,12 @@ jobs:
-
- - name: Add swap space
- # QEMU emulation is memory-intensive. The default GitHub Actions runner
-- # has limited swap, which can cause GCC to crash (ICE/segfault) when
-- # compiling under emulation. Adding 8GB of swap reduces this risk.
-+ # has limited swap, which can cause GCC's collect2 linker to segfault.
-+ # Adding 16GB of swap reduces this risk. We also pass -Wl,--no-keep-memory
-+ # to the linker to reduce its peak memory usage.
- run: |
- sudo swapoff -a || true
-- sudo dd if=/dev/zero of=/swapfile bs=1M count=8192
-+ sudo dd if=/dev/zero of=/swapfile bs=1M count=16384
- sudo chmod 600 /swapfile
- sudo mkswap /swapfile
- sudo swapon /swapfile
-@@ -112,7 +113,7 @@ jobs:
- # which are not needed to test the library
- ###
- CPPFLAGS="-I/usr/include/hdf5/serial" \
-- LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial" \
-+ LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial -Wl,--no-keep-memory" \
- LIBS="-lhdf5_serial -lz" \
- CC=gcc \
- ./configure \
-
-From 9e03ad00fc3209e1f97f3e0d6d604afda0143785 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 11:12:59 -0700
-Subject: [PATCH 24/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 0ea6b48d5c..f29a0540aa 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -83,7 +83,8 @@ jobs:
- libhdf5-103-1 \
- libtool \
- gcc \
-- g++
-+ g++ \
-+ lld
-
- run: |
- set -e
-@@ -113,7 +114,7 @@ jobs:
- # which are not needed to test the library
- ###
- CPPFLAGS="-I/usr/include/hdf5/serial" \
-- LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial -Wl,--no-keep-memory" \
-+ LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial -fuse-ld=lld" \
- LIBS="-lhdf5_serial -lz" \
- CC=gcc \
- ./configure \
-
-From b345b7af7ca16f462ea9def7179ac860ef7aef19 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 11:18:58 -0700
-Subject: [PATCH 25/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index f29a0540aa..e6cb4d8580 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -84,7 +84,7 @@ jobs:
- libtool \
- gcc \
- g++ \
-- lld
-+ lld-14
-
- run: |
- set -e
-@@ -114,7 +114,7 @@ jobs:
- # which are not needed to test the library
- ###
- CPPFLAGS="-I/usr/include/hdf5/serial" \
-- LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial -fuse-ld=lld" \
-+ LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial -fuse-ld=lld-14" \
- LIBS="-lhdf5_serial -lz" \
- CC=gcc \
- ./configure \
-
-From de7a0de4a7b26729a22991ca58f22d9e22fffbf4 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 11:58:21 -0700
-Subject: [PATCH 26/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index e6cb4d8580..67e1139d67 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -84,7 +84,7 @@ jobs:
- libtool \
- gcc \
- g++ \
-- lld-14
-+ binutils-gold
-
- run: |
- set -e
-@@ -114,7 +114,7 @@ jobs:
- # which are not needed to test the library
- ###
- CPPFLAGS="-I/usr/include/hdf5/serial" \
-- LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial -fuse-ld=lld-14" \
-+ LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial -fuse-ld=gold" \
- LIBS="-lhdf5_serial -lz" \
- CC=gcc \
- ./configure \
-
-From b1acdc9f124e23c02af4c7b543eccb1f4e6a87c4 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 12:13:28 -0700
-Subject: [PATCH 27/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 67e1139d67..3eb5fb818d 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -116,6 +116,7 @@ jobs:
- CPPFLAGS="-I/usr/include/hdf5/serial" \
- LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial -fuse-ld=gold" \
- LIBS="-lhdf5_serial -lz" \
-+ CFLAGS="-O0 -g" \
- CC=gcc \
- ./configure \
- --enable-hdf5 \
-
-From c4f717a4220d5b0df98f6bc11a74cab344aa3e56 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 12:22:36 -0700
-Subject: [PATCH 28/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 3eb5fb818d..fbf7be80e3 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -84,6 +84,7 @@ jobs:
- libtool \
- gcc \
- g++ \
-+ clang \
- binutils-gold
-
- run: |
-@@ -117,7 +118,7 @@ jobs:
- LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial -fuse-ld=gold" \
- LIBS="-lhdf5_serial -lz" \
- CFLAGS="-O0 -g" \
-- CC=gcc \
-+ CC=clang \
- ./configure \
- --enable-hdf5 \
- --disable-dap \
-
-From 736de1b22c99829db240386ff486dd3bbbd1bcd8 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 12:47:51 -0700
-Subject: [PATCH 29/41] fixing
-
----
- unit_test/Makefile.am | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/unit_test/Makefile.am b/unit_test/Makefile.am
-index a4dd377688..f86296698e 100644
---- a/unit_test/Makefile.am
-+++ b/unit_test/Makefile.am
-@@ -41,7 +41,9 @@ endif
- if USE_HDF5
- check_PROGRAMS += tst_nc4internal tst_reclaim
- TESTS += tst_nc4internal
-+if NETCDF_BUILD_UTILITIES
- TESTS += run_reclaim_tests.sh
-+endif # NETCDF_BUILD_UTILITIES
- endif # USE_HDF5
-
- if USE_HDF5
-
-From 946f0c6d3e888d93f2284ca814e87613073a0464 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 13:12:02 -0700
-Subject: [PATCH 30/41] fixing
-
----
- .github/workflows/run_tests_bigendian.yml | 7 +++++--
- 1 file changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index fbf7be80e3..20faa969b7 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -142,6 +142,9 @@ jobs:
- make check TESTS="" -j 1
- make check -j 1
-
-- - name: Show config.log on failure
-+ - name: Show test logs on failure
- if: ${{ failure() }}
-- run: cat config.log || true
-+ run: |
-+ find /home/runner/work/netcdf-c/netcdf-c -name 'test-suite.log' | \
-+ xargs -I{} sh -c 'echo "=== {} ==="; cat "{}"' || true
-+ cat config.log || true
-
-From 7417c39eef0fa12387e8509419500b4ed0514f3f Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 14:04:09 -0700
-Subject: [PATCH 31/41] fixing
-
----
- .gitignore | 1 +
- libhdf5/hdf5var.c | 2 +-
- nc_test4/tst_vars.c | 6 ++++--
- 3 files changed, 6 insertions(+), 3 deletions(-)
-
-diff --git a/.gitignore b/.gitignore
-index 14eed1c503..746b8d73f0 100644
---- a/.gitignore
-+++ b/.gitignore
-@@ -64,3 +64,4 @@ build_llvm
- .vagrant
- Vagrantfile
- netcdf-fortran
-+.windsurf
-\ No newline at end of file
-diff --git a/libhdf5/hdf5var.c b/libhdf5/hdf5var.c
-index ac1e0dd792..6317a6066e 100644
---- a/libhdf5/hdf5var.c
-+++ b/libhdf5/hdf5var.c
-@@ -1810,7 +1810,7 @@ NC4_put_vars(int ncid, int varid, const size_t *startp, const size_t *countp,
- LOG((4, "about to H5Dwrite datasetid 0x%x mem_spaceid 0x%x "
- "file_spaceid 0x%x", hdf5_var->hdf_datasetid, mem_spaceid, file_spaceid));
- if (H5Dwrite(hdf5_var->hdf_datasetid,
-- ((NC_HDF5_TYPE_INFO_T *)var->type_info->format_type_info)->hdf_typeid,
-+ ((NC_HDF5_TYPE_INFO_T *)var->type_info->format_type_info)->native_hdf_typeid,
- mem_spaceid, file_spaceid, xfer_plistid, bufr) < 0)
- BAIL(NC_EHDFERR);
-
-diff --git a/nc_test4/tst_vars.c b/nc_test4/tst_vars.c
-index 3bf174b3b5..cff7ec31a2 100644
---- a/nc_test4/tst_vars.c
-+++ b/nc_test4/tst_vars.c
-@@ -592,7 +592,8 @@ main(int argc, char **argv)
- if (nc_get_var_schar(ncid, float_varid, (signed char *)byte_in) != NC_ERANGE) ERR;
- for (i = 0; i < DIM1_LEN; i++)
- for (j = 0; j < DIM2_LEN; j++)
-- if (byte_in[i][j] != (signed char)float_out[i][j]) ERR;
-+ if (float_out[i][j] >= (float)X_SCHAR_MIN && float_out[i][j] <= (float)X_SCHAR_MAX)
-+ if (byte_in[i][j] != (signed char)float_out[i][j]) ERR;
- if (nc_get_var_schar(ncid, int64_varid, (signed char *)byte_in) != NC_ERANGE) ERR;
- for (i = 0; i < DIM1_LEN; i++)
- for (j = 0; j < DIM2_LEN; j++)
-@@ -796,7 +797,8 @@ main(int argc, char **argv)
- if (nc_get_var_schar(ncid, float_varid, (signed char *)byte_in) != NC_ERANGE) ERR;
- for (i = 0; i < DIM1_LEN; i++)
- for (j = 0; j < DIM2_LEN; j++)
-- if (byte_in[i][j] != (signed char)float_out[i][j]) ERR;
-+ if (float_out[i][j] >= (float)X_SCHAR_MIN && float_out[i][j] <= (float)X_SCHAR_MAX)
-+ if (byte_in[i][j] != (signed char)float_out[i][j]) ERR;
- if (nc_get_var_schar(ncid, int64_varid, (signed char *)byte_in) != NC_ERANGE) ERR;
- for (i = 0; i < DIM1_LEN; i++)
- for (j = 0; j < DIM2_LEN; j++)
-
-From 50caf242ef84a0af76653b54de30dcd0e8ab0001 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 14:24:50 -0700
-Subject: [PATCH 32/41] fixing: use SCHAR_MIN/SCHAR_MAX from limits.h instead
- of X_SCHAR_MIN/X_SCHAR_MAX
-
----
- nc_test4/tst_vars.c | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/nc_test4/tst_vars.c b/nc_test4/tst_vars.c
-index cff7ec31a2..053d0684dd 100644
---- a/nc_test4/tst_vars.c
-+++ b/nc_test4/tst_vars.c
-@@ -9,6 +9,7 @@
- #include "nc_tests.h"
- #include "err_macros.h"
- #include "netcdf.h"
-+#include <limits.h>
-
- #define FILE_NAME "tst_vars.nc"
- #define VAR_BYTE_NAME "Portrait_of_Maria_Trip"
-@@ -592,7 +593,7 @@ main(int argc, char **argv)
- if (nc_get_var_schar(ncid, float_varid, (signed char *)byte_in) != NC_ERANGE) ERR;
- for (i = 0; i < DIM1_LEN; i++)
- for (j = 0; j < DIM2_LEN; j++)
-- if (float_out[i][j] >= (float)X_SCHAR_MIN && float_out[i][j] <= (float)X_SCHAR_MAX)
-+ if (float_out[i][j] >= (float)SCHAR_MIN && float_out[i][j] <= (float)SCHAR_MAX)
- if (byte_in[i][j] != (signed char)float_out[i][j]) ERR;
- if (nc_get_var_schar(ncid, int64_varid, (signed char *)byte_in) != NC_ERANGE) ERR;
- for (i = 0; i < DIM1_LEN; i++)
-@@ -797,7 +798,7 @@ main(int argc, char **argv)
- if (nc_get_var_schar(ncid, float_varid, (signed char *)byte_in) != NC_ERANGE) ERR;
- for (i = 0; i < DIM1_LEN; i++)
- for (j = 0; j < DIM2_LEN; j++)
-- if (float_out[i][j] >= (float)X_SCHAR_MIN && float_out[i][j] <= (float)X_SCHAR_MAX)
-+ if (float_out[i][j] >= (float)SCHAR_MIN && float_out[i][j] <= (float)SCHAR_MAX)
- if (byte_in[i][j] != (signed char)float_out[i][j]) ERR;
- if (nc_get_var_schar(ncid, int64_varid, (signed char *)byte_in) != NC_ERANGE) ERR;
- for (i = 0; i < DIM1_LEN; i++)
-
-From bbecc010ef06a776a9e9e61635b688a98ed3d37e Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 14:53:44 -0700
-Subject: [PATCH 33/41] fixing: guard tst_udf_self_load under ENABLE_SHARED,
- skip on static-only builds
-
----
- configure.ac | 1 +
- nc_test4/Makefile.am | 7 ++++++-
- 2 files changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 33f7ab4f50..cb4f297f1a 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -2032,6 +2032,7 @@ AM_CONDITIONAL(HAVE_H5Z_SZIP, [test "x$enable_hdf5_szip" = xyes])
- AM_CONDITIONAL(HAVE_BLOSC, [test "x$have_blosc" = xyes])
- AM_CONDITIONAL(HAVE_BZ2, [test "x$have_bz2" = xyes])
- AM_CONDITIONAL(HAVE_ZSTD, [test "x$have_zstd" = xyes])
-+AM_CONDITIONAL(ENABLE_SHARED, [test "x$enable_shared" = xyes])
-
- # If the machine doesn't have a long long, and we want netCDF-4, then
- # we've got problems!
-diff --git a/nc_test4/Makefile.am b/nc_test4/Makefile.am
-index 28ef4cba07..0782a78c3f 100644
---- a/nc_test4/Makefile.am
-+++ b/nc_test4/Makefile.am
-@@ -35,7 +35,7 @@ tst_h_scalar tst_rename tst_rename2 tst_rename3 tst_h5_endians \
- tst_atts_string_rewrite tst_hdf5_file_compat tst_fill_attr_vanish \
- tst_rehash tst_filterparser tst_bug324 tst_types tst_atts3 \
- tst_put_vars tst_elatefill tst_udf tst_put_vars_two_unlim_dim \
--tst_bug1442 tst_quantize tst_h_transient_types tst_udf_self_load
-+tst_bug1442 tst_quantize tst_h_transient_types
-
- if HAS_PAR_FILTERS
- NC4_TESTS += tst_alignment
-@@ -44,6 +44,10 @@ endif
- NC4_TESTS += tst_h_strbug tst_h_refs
-
- # UDF self-registration plugin loading test.
-+# Requires a shared library build: the test dlopen()s a .so plugin.
-+# Skip entirely when built with --disable-shared.
-+if ENABLE_SHARED
-+NC4_TESTS += tst_udf_self_load
- # Build the test plugin as a shared library (libtool module).
- check_LTLIBRARIES = tst_udf_self_load_plugin.la
- tst_udf_self_load_plugin_la_SOURCES = tst_udf_self_load_plugin.c
-@@ -59,6 +63,7 @@ tst_udf_self_load_plugin_la_LIBADD = ${top_builddir}/liblib/libnetcdf.la
- # by configure.ac (see the case $host_os block after LT_INIT) so the
- # compiled-in TEST_PLUGIN_PATH always points to the correct filename.
- tst_udf_self_load_CPPFLAGS = $(AM_CPPFLAGS) -DTEST_PLUGIN_PATH=\"$(abs_builddir)/.libs/tst_udf_self_load_plugin@MODULE_EXT@\"
-+endif # ENABLE_SHARED
-
- # Build test programs plus programs used in test scripts.
- check_PROGRAMS = $(NC4_TESTS) tst_empty_vlen_unlim tst_charvlenbug \
-
-From 04f6544b19b493b8b49ddd7429d9f8dae23f2ad6 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 15:22:59 -0700
-Subject: [PATCH 34/41] enable utils in big endian run
-
----
- .github/workflows/run_tests_bigendian.yml | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 20faa969b7..861604d9f2 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -127,7 +127,7 @@ jobs:
- --disable-libxml2 \
- --disable-shared \
- --enable-static \
-- --disable-utilities \
-+ --enable-utilities \
- || { tail -200 config.log; exit 1; }
-
- cat libnetcdf.settings
-
-From fb2cc57cc42728e1d9ca24eee857be4dd3e9d86e Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 15:47:43 -0700
-Subject: [PATCH 35/41] fixing: expand tst_h5_endians to test BE write/read and
- add issue #1802 regression test
-
----
- nc_test4/tst_h5_endians.c | 184 ++++++++++++++++++++++++++------------
- 1 file changed, 129 insertions(+), 55 deletions(-)
-
-diff --git a/nc_test4/tst_h5_endians.c b/nc_test4/tst_h5_endians.c
-index c648515391..9397dde035 100644
---- a/nc_test4/tst_h5_endians.c
-+++ b/nc_test4/tst_h5_endians.c
-@@ -38,37 +38,6 @@
- #define LE_DBL_VARNAME "dbl_le"
- #define BE_DBL_VARNAME "dbl_be"
-
--#if defined BE_DEBUG || defined TESTNCZARR
--static float
--f32swap(float x)
--{
-- union {
-- unsigned char bytes[4];
-- float f;
-- } u;
-- unsigned char c;
-- u.f = x;
-- c = u.bytes[0]; u.bytes[0] = u.bytes[3]; u.bytes[3] = c;
-- c = u.bytes[1]; u.bytes[1] = u.bytes[2]; u.bytes[2] = c;
-- return u.f;
--}
--
--static double
--f64swap(double x)
--{
-- union {
-- unsigned char bytes[8];
-- double d;
-- } u;
-- unsigned char c;
-- u.d = x;
-- c = u.bytes[0]; u.bytes[0] = u.bytes[7]; u.bytes[7] = c;
-- c = u.bytes[1]; u.bytes[1] = u.bytes[6]; u.bytes[6] = c;
-- c = u.bytes[2]; u.bytes[2] = u.bytes[5]; u.bytes[5] = c;
-- c = u.bytes[3]; u.bytes[3] = u.bytes[4]; u.bytes[4] = c;
-- return u.d;
--}
--#endif
-
- int main() {
-
-@@ -242,10 +211,8 @@ int main() {
- float fdata_le_out[NDIM];
- double ddata_le_out[NDIM];
- int idata_be_out[NDIM];
--#if defined BE_DEBUG || defined TESTNCZARR
- float fdata_be_out[NDIM];
-- double ddata_be_out[NDIM];
--#endif
-+ double ddata_be_out[NDIM];
-
- /* Setup data in/out */
- for(i=0;i<NDIM;i++) {
-@@ -256,10 +223,8 @@ int main() {
- fdata_le_out[i] = 0.0f;
- ddata_le_out[i] = 0.0;
- idata_be_out[i] = 0;
--#if defined BE_DEBUG || defined TESTNCZARR
- fdata_be_out[i] = 0.0f;
- ddata_be_out[i] = 0.0;
--#endif
- }
-
- printf("\tLittle-Endian Float...\t");
-@@ -270,24 +235,13 @@ int main() {
- for(failed=0,i=0;i<NDIM;i++) {if(fdata_in[i] != fdata_le_out[i]) {printf("failed\n"); failures++; failed++; break;}}
- if(!failed) printf("passed\n");
-
--#if defined BE_DEBUG || defined TESTNCZARR
-- /* There appears to be a bug in the handling of big-endian floats and doubles */
- printf("\tBig-Endian Float...\t");
- if ((retval = nc_put_var(ncid,be_float_varid,fdata_in)))
- return retval;
- if ((retval = nc_get_var(ncid,be_float_varid,fdata_be_out)))
- return retval;
-- for(i=0;i<NDIM;i++) {
-- float f = f32swap(fdata_be_out[i]);
-- fprintf(stderr,"[%d] %f\n",i,f);
-- }
-- for(failed=0,i=0;i<NDIM;i++) {
-- if(fdata_in[i] != fdata_be_out[i]) {
-- printf("failed\n"); failures++; failed++; break;
-- }
-- }
-+ for(failed=0,i=0;i<NDIM;i++) {if(fdata_in[i] != fdata_be_out[i]) {printf("failed\n"); failures++; failed++; break;}}
- if(!failed) printf("passed\n");
--#endif
-
- printf("\tLittle-Endian Int...\t");
- if ((retval = nc_put_var(ncid,le_int_varid,idata_in)))
-@@ -301,6 +255,7 @@ int main() {
- if ((retval = nc_put_var(ncid,be_int_varid,idata_in)))
- return retval;
- if ((retval = nc_get_var(ncid,be_int_varid,idata_be_out)))
-+ return retval;
- for(failed=0,i=0;i<NDIM;i++) {if(idata_in[i] != idata_be_out[i]) {printf("failed\n"); failures++; failed++; break;}}
- if(!failed) printf("passed\n");
-
-@@ -312,26 +267,145 @@ int main() {
- for(failed=0,i=0;i<NDIM;i++) {if(ddata_in[i] != ddata_le_out[i]) {printf("failed\n"); failures++; failed++; break;}}
- if(!failed) printf("passed\n");
-
--#if defined BE_DEBUG || defined TESTNCZARR
-- /* There appears to be a bug in the handling of big-endian floats and doubles */
- printf("\tBig-Endian Double...\t");
- if ((retval = nc_put_var(ncid,be_dbl_varid,ddata_in)))
- return retval;
- if ((retval = nc_get_var(ncid,be_dbl_varid,ddata_be_out)))
- return retval;
-- for(i=0;i<NDIM;i++) {
-- double d = f64swap(ddata_be_out[i]);
-- fprintf(stderr,"[%d] %lf\n",i,d);
-- }
- for(failed=0,i=0;i<NDIM;i++) {if(ddata_in[i] != ddata_be_out[i]) {printf("failed\n"); failures++; failed++; break;}}
- if(!failed) printf("passed\n");
--#endif
-
- if ((retval = nc_close(ncid)))
- return retval;
- }
- }
-
-+ /*
-+ * 4. Regression test for GitHub issue #1802:
-+ * Create a file with a big-endian variable, close it WITHOUT writing data,
-+ * reopen it, write data, close, reopen read-only and verify the values.
-+ * On a little-endian host this exposed the H5Dwrite memory-type bug where
-+ * hdf_typeid (on-disk type) was used instead of native_hdf_typeid.
-+ */
-+ printf("** Regression test: write-after-close-reopen (issue #1802).\n");
-+ {
-+#define FILE_1802 "tst_h5_endians_1802.nc"
-+#define DIM_1802 "x"
-+#define DIM_LEN_1802 10
-+ int i, failed;
-+ int data_out[DIM_LEN_1802];
-+ int data_in[DIM_LEN_1802];
-+ float fdata_out[DIM_LEN_1802];
-+ float fdata_in[DIM_LEN_1802];
-+ double ddata_out[DIM_LEN_1802];
-+ double ddata_in[DIM_LEN_1802];
-+ int varid_be_int, varid_be_float, varid_be_dbl;
-+ int varid_le_int, varid_le_float, varid_le_dbl;
-+ int dim1802;
-+
-+ for (i = 0; i < DIM_LEN_1802; i++) {
-+ data_out[i] = i;
-+ fdata_out[i] = (float)i;
-+ ddata_out[i] = (double)i;
-+ data_in[i] = -1;
-+ fdata_in[i] = -1.0f;
-+ ddata_in[i] = -1.0;
-+ }
-+
-+ /* Create file, define vars, close WITHOUT writing any data. */
-+ if ((retval = nc_create(FILE_1802, NC_NETCDF4 | NC_CLOBBER, &ncid)))
-+ return retval;
-+ if ((retval = nc_def_dim(ncid, DIM_1802, DIM_LEN_1802, &dim1802)))
-+ return retval;
-+ if ((retval = nc_def_var(ncid, "be_int", NC_INT, 1, &dim1802, &varid_be_int)))
-+ return retval;
-+ if ((retval = nc_def_var_endian(ncid, varid_be_int, NC_ENDIAN_BIG)))
-+ return retval;
-+ if ((retval = nc_def_var(ncid, "be_float", NC_FLOAT, 1, &dim1802, &varid_be_float)))
-+ return retval;
-+ if ((retval = nc_def_var_endian(ncid, varid_be_float, NC_ENDIAN_BIG)))
-+ return retval;
-+ if ((retval = nc_def_var(ncid, "be_dbl", NC_DOUBLE, 1, &dim1802, &varid_be_dbl)))
-+ return retval;
-+ if ((retval = nc_def_var_endian(ncid, varid_be_dbl, NC_ENDIAN_BIG)))
-+ return retval;
-+ if ((retval = nc_def_var(ncid, "le_int", NC_INT, 1, &dim1802, &varid_le_int)))
-+ return retval;
-+ if ((retval = nc_def_var_endian(ncid, varid_le_int, NC_ENDIAN_LITTLE)))
-+ return retval;
-+ if ((retval = nc_def_var(ncid, "le_float", NC_FLOAT, 1, &dim1802, &varid_le_float)))
-+ return retval;
-+ if ((retval = nc_def_var_endian(ncid, varid_le_float, NC_ENDIAN_LITTLE)))
-+ return retval;
-+ if ((retval = nc_def_var(ncid, "le_dbl", NC_DOUBLE, 1, &dim1802, &varid_le_dbl)))
-+ return retval;
-+ if ((retval = nc_def_var_endian(ncid, varid_le_dbl, NC_ENDIAN_LITTLE)))
-+ return retval;
-+ if ((retval = nc_close(ncid)))
-+ return retval;
-+
-+ /* Reopen, write data, close. */
-+ if ((retval = nc_open(FILE_1802, NC_WRITE, &ncid)))
-+ return retval;
-+ if ((retval = nc_inq_varid(ncid, "be_int", &varid_be_int))) return retval;
-+ if ((retval = nc_inq_varid(ncid, "be_float", &varid_be_float))) return retval;
-+ if ((retval = nc_inq_varid(ncid, "be_dbl", &varid_be_dbl))) return retval;
-+ if ((retval = nc_inq_varid(ncid, "le_int", &varid_le_int))) return retval;
-+ if ((retval = nc_inq_varid(ncid, "le_float", &varid_le_float))) return retval;
-+ if ((retval = nc_inq_varid(ncid, "le_dbl", &varid_le_dbl))) return retval;
-+ if ((retval = nc_put_var_int(ncid, varid_be_int, data_out))) return retval;
-+ if ((retval = nc_put_var_float(ncid, varid_be_float, fdata_out))) return retval;
-+ if ((retval = nc_put_var_double(ncid, varid_be_dbl, ddata_out))) return retval;
-+ if ((retval = nc_put_var_int(ncid, varid_le_int, data_out))) return retval;
-+ if ((retval = nc_put_var_float(ncid, varid_le_float, fdata_out))) return retval;
-+ if ((retval = nc_put_var_double(ncid, varid_le_dbl, ddata_out))) return retval;
-+ if ((retval = nc_close(ncid)))
-+ return retval;
-+
-+ /* Reopen read-only, verify all values round-tripped correctly. */
-+ if ((retval = nc_open(FILE_1802, NC_NOWRITE, &ncid)))
-+ return retval;
-+ if ((retval = nc_inq_varid(ncid, "be_int", &varid_be_int))) return retval;
-+ if ((retval = nc_inq_varid(ncid, "be_float", &varid_be_float))) return retval;
-+ if ((retval = nc_inq_varid(ncid, "be_dbl", &varid_be_dbl))) return retval;
-+ if ((retval = nc_inq_varid(ncid, "le_int", &varid_le_int))) return retval;
-+ if ((retval = nc_inq_varid(ncid, "le_float", &varid_le_float))) return retval;
-+ if ((retval = nc_inq_varid(ncid, "le_dbl", &varid_le_dbl))) return retval;
-+
-+ printf("\tBig-Endian Int (write-after-reopen)...\t");
-+ if ((retval = nc_get_var_int(ncid, varid_be_int, data_in))) return retval;
-+ for (failed=0,i=0;i<DIM_LEN_1802;i++) {if(data_out[i]!=data_in[i]){printf("failed\n");failures++;failed++;break;}}
-+ if (!failed) printf("passed\n");
-+
-+ printf("\tBig-Endian Float (write-after-reopen)...\t");
-+ if ((retval = nc_get_var_float(ncid, varid_be_float, fdata_in))) return retval;
-+ for (failed=0,i=0;i<DIM_LEN_1802;i++) {if(fdata_out[i]!=fdata_in[i]){printf("failed\n");failures++;failed++;break;}}
-+ if (!failed) printf("passed\n");
-+
-+ printf("\tBig-Endian Double (write-after-reopen)...\t");
-+ if ((retval = nc_get_var_double(ncid, varid_be_dbl, ddata_in))) return retval;
-+ for (failed=0,i=0;i<DIM_LEN_1802;i++) {if(ddata_out[i]!=ddata_in[i]){printf("failed\n");failures++;failed++;break;}}
-+ if (!failed) printf("passed\n");
-+
-+ printf("\tLittle-Endian Int (write-after-reopen)...\t");
-+ if ((retval = nc_get_var_int(ncid, varid_le_int, data_in))) return retval;
-+ for (failed=0,i=0;i<DIM_LEN_1802;i++) {if(data_out[i]!=data_in[i]){printf("failed\n");failures++;failed++;break;}}
-+ if (!failed) printf("passed\n");
-+
-+ printf("\tLittle-Endian Float (write-after-reopen)...\t");
-+ if ((retval = nc_get_var_float(ncid, varid_le_float, fdata_in))) return retval;
-+ for (failed=0,i=0;i<DIM_LEN_1802;i++) {if(fdata_out[i]!=fdata_in[i]){printf("failed\n");failures++;failed++;break;}}
-+ if (!failed) printf("passed\n");
-+
-+ printf("\tLittle-Endian Double (write-after-reopen)...\t");
-+ if ((retval = nc_get_var_double(ncid, varid_le_dbl, ddata_in))) return retval;
-+ for (failed=0,i=0;i<DIM_LEN_1802;i++) {if(ddata_out[i]!=ddata_in[i]){printf("failed\n");failures++;failed++;break;}}
-+ if (!failed) printf("passed\n");
-+
-+ if ((retval = nc_close(ncid)))
-+ return retval;
-+ }
-+
- printf("** Failures Returned: [%d]\n",failures);
- return failures;
- }
-
-From d8a5332920e4af36d1ed9348975c339328ab35d7 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 15:49:38 -0700
-Subject: [PATCH 36/41] fixing: restore f32swap/f64swap debug print loops in
- tst_h5_endians section 3
-
----
- nc_test4/tst_h5_endians.c | 38 ++++++++++++++++++++++++++++++++++++++
- 1 file changed, 38 insertions(+)
-
-diff --git a/nc_test4/tst_h5_endians.c b/nc_test4/tst_h5_endians.c
-index 9397dde035..1496393953 100644
---- a/nc_test4/tst_h5_endians.c
-+++ b/nc_test4/tst_h5_endians.c
-@@ -26,6 +26,36 @@
- #define FILE_NAME_NC "tst_h5_endians.nc"
- #endif
-
-+static float
-+f32swap(float x)
-+{
-+ union {
-+ unsigned char bytes[4];
-+ float f;
-+ } u;
-+ unsigned char c;
-+ u.f = x;
-+ c = u.bytes[0]; u.bytes[0] = u.bytes[3]; u.bytes[3] = c;
-+ c = u.bytes[1]; u.bytes[1] = u.bytes[2]; u.bytes[2] = c;
-+ return u.f;
-+}
-+
-+static double
-+f64swap(double x)
-+{
-+ union {
-+ unsigned char bytes[8];
-+ double d;
-+ } u;
-+ unsigned char c;
-+ u.d = x;
-+ c = u.bytes[0]; u.bytes[0] = u.bytes[7]; u.bytes[7] = c;
-+ c = u.bytes[1]; u.bytes[1] = u.bytes[6]; u.bytes[6] = c;
-+ c = u.bytes[2]; u.bytes[2] = u.bytes[5]; u.bytes[5] = c;
-+ c = u.bytes[3]; u.bytes[3] = u.bytes[4]; u.bytes[4] = c;
-+ return u.d;
-+}
-+
- #define NDIM 10
- #define NLON 20
- #define DIM_NAME "x"
-@@ -240,6 +270,10 @@ int main() {
- return retval;
- if ((retval = nc_get_var(ncid,be_float_varid,fdata_be_out)))
- return retval;
-+ for(i=0;i<NDIM;i++) {
-+ float f = f32swap(fdata_be_out[i]);
-+ fprintf(stderr,"[%d] %f\n",i,f);
-+ }
- for(failed=0,i=0;i<NDIM;i++) {if(fdata_in[i] != fdata_be_out[i]) {printf("failed\n"); failures++; failed++; break;}}
- if(!failed) printf("passed\n");
-
-@@ -272,6 +306,10 @@ int main() {
- return retval;
- if ((retval = nc_get_var(ncid,be_dbl_varid,ddata_be_out)))
- return retval;
-+ for(i=0;i<NDIM;i++) {
-+ double d = f64swap(ddata_be_out[i]);
-+ fprintf(stderr,"[%d] %lf\n",i,d);
-+ }
- for(failed=0,i=0;i<NDIM;i++) {if(ddata_in[i] != ddata_be_out[i]) {printf("failed\n"); failures++; failed++; break;}}
- if(!failed) printf("passed\n");
-
-
-From fd5828f1f6262fc4486dd18ffe9c3e4162d8af87 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 16:04:52 -0700
-Subject: [PATCH 37/41] fixing: enable parallel build -j 4, add
- -Wl,--no-keep-memory, keep tests serial
-
----
- .github/workflows/run_tests_bigendian.yml | 11 ++++++-----
- 1 file changed, 6 insertions(+), 5 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 861604d9f2..6d4e324337 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -111,11 +111,10 @@ jobs:
- # --disable-nczarr : requires additional zip/cloud libs
- # --disable-libxml2 : not needed without DAP
- # --disable-shared : simplifies linking under emulation
-- # --disable-utilities : skips ncgen/ncdump/etc. binaries
-- # which are not needed to test the library
-+ # --enable-utilities : builds ncgen/ncdump/etc. binaries
- ###
- CPPFLAGS="-I/usr/include/hdf5/serial" \
-- LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial -fuse-ld=gold" \
-+ LDFLAGS="-L/usr/lib/s390x-linux-gnu/hdf5/serial -fuse-ld=gold -Wl,--no-keep-memory" \
- LIBS="-lhdf5_serial -lz" \
- CFLAGS="-O0 -g" \
- CC=clang \
-@@ -132,14 +131,16 @@ jobs:
-
- cat libnetcdf.settings
-
-- make -j 1
-+ make -j 4
-
- ###
- # Build and run the test suite.
- # make check TESTS="" builds the test binaries without running them,
- # then make check runs the full suite.
-+ # Tests are kept serial (-j 1) to avoid file-name conflicts between
-+ # concurrent test processes writing to the same working directory.
- ###
-- make check TESTS="" -j 1
-+ make check TESTS="" -j 4
- make check -j 1
-
- - name: Show test logs on failure
-
-From 65ea19aaf86b7b97499c0386ce5658197c3d8c04 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 16:06:17 -0700
-Subject: [PATCH 38/41] fixing: make check -j 4
-
----
- .github/workflows/run_tests_bigendian.yml | 4 +---
- 1 file changed, 1 insertion(+), 3 deletions(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index 6d4e324337..ea6ee6fafb 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -137,11 +137,9 @@ jobs:
- # Build and run the test suite.
- # make check TESTS="" builds the test binaries without running them,
- # then make check runs the full suite.
-- # Tests are kept serial (-j 1) to avoid file-name conflicts between
-- # concurrent test processes writing to the same working directory.
- ###
- make check TESTS="" -j 4
-- make check -j 1
-+ make check -j 4
-
- - name: Show test logs on failure
- if: ${{ failure() }}
-
-From f954448bbd6fe9a4f1035e3afbbcd206f1686228 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 16:34:01 -0700
-Subject: [PATCH 39/41] fixing: guard section 4 with #ifndef TESTNCZARR,
- nc_def_var_endian not supported in NCZarr
-
----
- nc_test4/tst_h5_endians.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/nc_test4/tst_h5_endians.c b/nc_test4/tst_h5_endians.c
-index 1496393953..1ca67615a9 100644
---- a/nc_test4/tst_h5_endians.c
-+++ b/nc_test4/tst_h5_endians.c
-@@ -318,6 +318,7 @@ int main() {
- }
- }
-
-+#ifndef TESTNCZARR
- /*
- * 4. Regression test for GitHub issue #1802:
- * Create a file with a big-endian variable, close it WITHOUT writing data,
-@@ -443,6 +444,7 @@ int main() {
- if ((retval = nc_close(ncid)))
- return retval;
- }
-+#endif /* TESTNCZARR */
-
- printf("** Failures Returned: [%d]\n",failures);
- return failures;
-
-From b36c55b4e62ff2d587c6d1adabafe7e2081bb534 Mon Sep 17 00:00:00 2001
-From: Ed Hartnett <edwardjameshartnett@gmail.com>
-Date: Sat, 21 Feb 2026 16:34:31 -0700
-Subject: [PATCH 40/41] fixing: add comment explaining #ifndef TESTNCZARR guard
- on section 4
-
----
- nc_test4/tst_h5_endians.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/nc_test4/tst_h5_endians.c b/nc_test4/tst_h5_endians.c
-index 1ca67615a9..8fbdcbddd1 100644
---- a/nc_test4/tst_h5_endians.c
-+++ b/nc_test4/tst_h5_endians.c
-@@ -318,6 +318,9 @@ int main() {
- }
- }
-
-+ /* Section 4 is HDF5-only: nc_def_var_endian() is not supported by the
-+ * NCZarr backend, so this block is skipped when compiled as test_endians
-+ * (nczarr_test/Makefile.am prepends #define TESTNCZARR to this file). */
- #ifndef TESTNCZARR
- /*
- * 4. Regression test for GitHub issue #1802:
-
-From c549f4197f75a1ef9949f1cbb1c58700cdf818dd Mon Sep 17 00:00:00 2001
-From: Ward Fisher <WardF@users.noreply.github.com>
-Date: Mon, 9 Mar 2026 10:20:36 -0600
-Subject: [PATCH 41/41] Rename workflow for Big-Endian netCDF Tests
-
-Specify tests being run are non-remote, otherwise I'll have to 'discover' that they aren't being run as part of this, down the road.
----
- .github/workflows/run_tests_bigendian.yml | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/.github/workflows/run_tests_bigendian.yml b/.github/workflows/run_tests_bigendian.yml
-index ea6ee6fafb..9319cfbe70 100644
---- a/.github/workflows/run_tests_bigendian.yml
-+++ b/.github/workflows/run_tests_bigendian.yml
-@@ -14,7 +14,7 @@
- # Triggered manually (workflow_dispatch) or on pull requests to main.
- ###
-
--name: Run Big-Endian (s390x) netCDF Tests
-+name: Run NON-REMOTE Big-Endian (s390x) netCDF Tests
-
- on:
- workflow_dispatch:
diff --git a/3350.patch b/3350.patch
deleted file mode 100644
index 3848bbc..0000000
--- a/3350.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-From 673680350e370d92e3da80c0fc7edc92cfb17ee9 Mon Sep 17 00:00:00 2001
-From: Orion Poplawski <orion@nwra.com>
-Date: Sun, 5 Apr 2026 21:42:59 -0600
-Subject: [PATCH] Do not assume that CMAKE_INSTALL_INCLUDEDIR and
- CMAKE_INSTALL_LIBDIR are relative paths
-
----
- CMakeLists.txt | 8 +++++---
- nc-config.cmake.in | 8 ++++----
- netCDFConfig.cmake.in | 4 ++--
- 3 files changed, 11 insertions(+), 9 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index f2b54b1762..09f7e414e9 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1620,11 +1620,11 @@ if(NOT DEFINED CMAKE_INSTALL_LIBDIR)
- set(CMAKE_INSTALL_LIBDIR lib)
- endif(NOT DEFINED CMAKE_INSTALL_LIBDIR)
-
--# Set
-+# Set for nc-config and pkgconfig files
- set(prefix ${CMAKE_INSTALL_PREFIX})
- set(exec_prefix ${CMAKE_INSTALL_PREFIX})
--set(libdir ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR})
--set(includedir ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR})
-+cmake_path(ABSOLUTE_PATH CMAKE_INSTALL_LIBDIR BASE_DIRECTORY "${CMAKE_INSTALL_PREFIX}" OUTPUT_VARIABLE libdir)
-+cmake_path(ABSOLUTE_PATH CMAKE_INSTALL_INCLUDEDIR BASE_DIRECTORY "${CMAKE_INSTALL_PREFIX}" OUTPUT_VARIABLE includedir)
- set(CC ${CMAKE_C_COMPILER})
-
- # Process all dependency libraries and create a string
-@@ -1934,6 +1934,8 @@ install(EXPORT netCDFTargets
- export(EXPORT netCDFTargets FILE netCDFTargets.cmake NAMESPACE netCDF::)
-
- include(CMakePackageConfigHelpers)
-+cmake_path(ABSOLUTE_PATH CMAKE_INSTALL_INCLUDEDIR BASE_DIRECTORY "${CMAKE_INSTALL_PREFIX}" OUTPUT_VARIABLE netCDF_INCLUDE_DIR)
-+cmake_path(ABSOLUTE_PATH CMAKE_INSTALL_LIBDIR BASE_DIRECTORY "${CMAKE_INSTALL_PREFIX}" OUTPUT_VARIABLE netCDF_LIB_DIR)
- configure_package_config_file(
- "${CMAKE_CURRENT_SOURCE_DIR}/netCDFConfig.cmake.in"
- "${CMAKE_CURRENT_BINARY_DIR}/netCDFConfig.cmake"
-diff --git a/nc-config.cmake.in b/nc-config.cmake.in
-index 3a7fc5cdb3..523a06aa98 100644
---- a/nc-config.cmake.in
-+++ b/nc-config.cmake.in
-@@ -6,14 +6,14 @@
-
- prefix="@CMAKE_INSTALL_PREFIX@"
- exec_prefix="@CMAKE_INSTALL_PREFIX@"
--libdir="@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@"
--includedir="@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@"
-+libdir="@libdir@"
-+includedir="@includedir@"
- plugindir="@NETCDF_PLUGIN_INSTALL_DIR@"
- pluginsearchpath="@NETCDF_PLUGIN_SEARCH_PATH@"
-
- cc="@CMAKE_C_COMPILER@"
--cflags="-I@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@"
--libs="-L@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@ @NC_LIBS@"
-+cflags="-I@includedir@"
-+libs="-L@libdir@ @NC_LIBS@"
- libsprivate="@LIBS@"
- HAS_STATIC="FALSE"
- PRINTLIBS="FALSE"
-diff --git a/netCDFConfig.cmake.in b/netCDFConfig.cmake.in
-index 987b2adc4a..bef7788c74 100644
---- a/netCDFConfig.cmake.in
-+++ b/netCDFConfig.cmake.in
-@@ -6,8 +6,8 @@
-
- set(NetCDFVersion "@PACKAGE_VERSION@")
- set_and_check(netCDF_INSTALL_PREFIX "@CMAKE_INSTALL_PREFIX@")
--set_and_check(netCDF_INCLUDE_DIR "@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@")
--set_and_check(netCDF_LIB_DIR "@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@")
-+set_and_check(netCDF_INCLUDE_DIR "@netCDF_INCLUDE_DIR@")
-+set_and_check(netCDF_LIB_DIR "@netCDF_LIB_DIR@")
- set(netCDF_LIBRARIES netCDF::netcdf)
-
- # include target information
diff --git a/README.packit b/README.packit
new file mode 100644
index 0000000..d816803
--- /dev/null
+++ b/README.packit
@@ -0,0 +1,3 @@
+This repository is maintained by packit.
+https://packit.dev/
+The file was generated using packit 1.16.2.
diff --git a/netcdf-c b/netcdf-c
new file mode 160000
index 0000000..6736803
--- /dev/null
+++ b/netcdf-c
@@ -0,0 +1 @@
+Subproject commit 673680350e370d92e3da80c0fc7edc92cfb17ee9
diff --git a/netcdf-mfhdf.patch b/netcdf-mfhdf.patch
deleted file mode 100644
index 6cbd30a..0000000
--- a/netcdf-mfhdf.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/hdf4_test/CMakeLists.txt b/hdf4_test/CMakeLists.txt
-index 24afa184f..362d054b8 100644
---- a/hdf4_test/CMakeLists.txt
-+++ b/hdf4_test/CMakeLists.txt
-@@ -13,6 +13,7 @@ if(WIN32)
- endif()
-
- if(USE_HDF4_FILE_TESTS AND NOT WIN32)
-+ include_directories(${MFHDF_H_INCLUDE_DIR})
- build_bin_test_no_prefix(tst_interops2)
- target_link_libraries(tst_interops2 netcdf ${ALL_TLL_LIBS})
- build_bin_test_no_prefix(tst_interops3)
diff --git a/netcdf-rpath.patch b/netcdf-rpath.patch
deleted file mode 100644
index b73e1dc..0000000
--- a/netcdf-rpath.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 3d749b7f8..1bdc2e11e 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -337,14 +337,7 @@ if(NOT WIN32 AND BUILD_SHARED_LIBS)
-
- # add the automatically determined parts of the RPATH
- # which point to directories outside the build tree to the install RPATH
-- set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
--
-- # the RPATH to be used when installing,
-- # but only if it's not a system directory
-- list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}" isSystemDir)
-- if("${isSystemDir}" STREQUAL "-1")
-- set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
-- endif("${isSystemDir}" STREQUAL "-1")
-+ # set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
-
- endif()
-
-diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt
-index 872788c31..ad5e1aaef 100644
---- a/plugins/CMakeLists.txt
-+++ b/plugins/CMakeLists.txt
-@@ -125,7 +125,7 @@ if(NETCDF_PLUGIN_INSTALL)
- macro(installplugin PLUG)
- set(INSTALLED_PLUGIN_LIB "${PLUGINPRE}${PLUG}.${PLUGINEXT}")
- message(STATUS "Installing: ${INSTALLED_PLUGIN_LIB} into ${NETCDF_PLUGIN_INSTALL_DIR}")
-- install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${INSTALLED_PLUGIN_LIB} DESTINATION ${NETCDF_PLUGIN_INSTALL_DIR})
-+ install(TARGETS ${PLUG} DESTINATION ${NETCDF_PLUGIN_INSTALL_DIR})
- endmacro()
-
- install(DIRECTORY DESTINATION ${NETCDF_PLUGIN_INSTALL_DIR})
-@@ -143,8 +143,8 @@ endif()
- installplugin(h5fletcher32)
- installplugin(h5deflate)
-
-- installplugin(zhdf5filters)
-- installplugin(zstdfilters)
-+ installplugin(nczhdf5filters)
-+ installplugin(nczstdfilters)
-
- if(Szip_FOUND)
- installplugin(h5szip)
diff --git a/netcdf.spec b/netcdf.spec
index 9354db1..d594564 100644
--- a/netcdf.spec
+++ b/netcdf.spec
@@ -1,22 +1,13 @@
%global sover 22
Name: netcdf
-Version: 4.10.0
+Version: 4.10.1
Release: %autorelease
Summary: Libraries for the Unidata network Common Data Form
License: BSD-3-Clause
URL: http://www.unidata.ucar.edu/software/netcdf/
Source0: https://github.com/Unidata/netcdf-c/archive/v%{version}/%{name}-%{version}.tar.gz
-# https://github.com/Unidata/netcdf-c/pull/3300
-Patch: netcdf-mfhdf.patch
-# Incomplete fix for rpaths
-# https://github.com/Unidata/netcdf-c/issues/3302
-Patch: netcdf-rpath.patch
-# big-endian fixes
-Patch: https://github.com/Unidata/netcdf-c/pull/3285.patch
-# Do not assume that CMAKE_INSTALL_INCLUDEDIR and CMAKE_INSTALL_LIBDIR are relative paths
-Patch: https://github.com/Unidata/netcdf-c/pull/3350.patch
# Hack for now
BuildRequires: chrpath
diff --git a/sources b/sources
index 5f47571..62ea5e6 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (netcdf-4.10.0.tar.gz) = 98b1bdebb7a2b804c82fa1d03e009118fb9e3852ae174b99145e717fa399238852520e579d18ca3b7c2189102d41b8fecfae7446b9b3ca955fe4197d2bb5bd27
+SHA512 (netcdf-4.10.1.tar.gz) = 6be6fee55daeb93b5cdae7ffeb2633583c75c3148e1114c7131ad5a81ad2252e698c8bcbde5654d30c73c0b0c3a169d61280766096f820a67b00b847aa7c6b50
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-08-23 23:00 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-23 23:00 [rpms/netcdf] rawhide: Update to 4.10.1 upstream release Orion Poplawski
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox