From bc4dc4e0746195a21da720e5f9dd5aad58d04cac Mon Sep 17 00:00:00 2001 From: Larry Knox Date: Mon, 20 May 2024 17:07:59 -0500 Subject: [PATCH] Add fortkit dependency for H5Rff.F90 and fix for a libtool sed hack (#4506) * Add H5fortkit dependecy for H5Rff.F90 (#4482) * Fix/revert a libtool sed hack (#4501) * Revert "Remove Autotools sed hack (#3848)" This reverts commit 8b3ffdef3099d2699ec71a5f855966132b3d3c25. * Fix libtool sed cleanup on MacOS Convert sed -i line to sed > libtool.bak && mv libtool.bak libtool to avoid non-portable -i option. * Commit changes to configure and fortran/src/Makefile.in from running autogen.sh after latest code changes. --- README.md | 2 +- configure | 7 ++++++ configure.ac | 7 ++++++ fortran/src/Makefile.am | 2 +- fortran/src/Makefile.in | 2 +- release_docs/NEWSLETTER.txt | 2 +- release_docs/RELEASE.txt | 46 ++++++++++++++++++++++++++++--------- 7 files changed, 53 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index 93c35a57a33..897624c100a 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -HDF5 version 1.14.4-3 released on 2024-05-14 +HDF5 version 1.14.4-3 released on 2024-05-20 ![HDF5 Logo](doxygen/img/HDF5.png) diff --git a/configure b/configure index 0e6a29719f0..c427d02e801 100755 --- a/configure +++ b/configure @@ -40647,6 +40647,13 @@ if test "X$HDF_FORTRAN" = "Xyes"; then esac fi +## HDF5 configure code created by autotools with gcc 4.9.2 is adding problematic +## linker flags: -l with no library name; -l , specifically gfortran or m. +## This sed script corrects "-l " first and then "-l " with no library name. +## If the order is not preserved, all instances of "-l " will be removed. +sed -e '/^postdeps/ s/-l \(a-zA-Z\)/-l\1/g' -e '/^postdeps/ s/-l //g' libtool > libtool.bak +mv -- libtool.bak libtool + ## show the configure settings cat src/libhdf5.settings diff --git a/configure.ac b/configure.ac index 1d868e4a611..6642782ca6b 100644 --- a/configure.ac +++ b/configure.ac @@ -4635,5 +4635,12 @@ if test "X$HDF_FORTRAN" = "Xyes"; then esac fi +## HDF5 configure code created by autotools with gcc 4.9.2 is adding problematic +## linker flags: -l with no library name; -l , specifically gfortran or m. +## This sed script corrects "-l " first and then "-l " with no library name. +## If the order is not preserved, all instances of "-l " will be removed. +sed -e '/^postdeps/ s/-l \([a-zA-Z]\)/-l\1/g' -e '/^postdeps/ s/-l //g' libtool > libtool.bak +mv -- libtool.bak libtool + ## show the configure settings cat src/libhdf5.settings diff --git a/fortran/src/Makefile.am b/fortran/src/Makefile.am index 8d8396fcbff..2fdf085f4b9 100644 --- a/fortran/src/Makefile.am +++ b/fortran/src/Makefile.am @@ -155,7 +155,7 @@ H5Iff.lo: $(srcdir)/H5Iff.F90 H5f90global.lo H5Lff.lo: $(srcdir)/H5Lff.F90 H5f90global.lo H5Off.lo: $(srcdir)/H5Off.F90 H5f90global.lo H5Pff.lo: $(srcdir)/H5Pff.F90 H5f90global.lo H5fortkit.lo -H5Rff.lo: $(srcdir)/H5Rff.F90 H5f90global.lo +H5Rff.lo: $(srcdir)/H5Rff.F90 H5f90global.lo H5fortkit.lo H5Sff.lo: $(srcdir)/H5Sff.F90 H5f90global.lo H5Tff.lo: $(srcdir)/H5Tff.F90 H5f90global.lo H5VLff.lo: $(srcdir)/H5VLff.F90 H5f90global.lo H5fortkit.lo diff --git a/fortran/src/Makefile.in b/fortran/src/Makefile.in index 21f60dce575..4c5acda9b60 100644 --- a/fortran/src/Makefile.in +++ b/fortran/src/Makefile.in @@ -1622,7 +1622,7 @@ H5Iff.lo: $(srcdir)/H5Iff.F90 H5f90global.lo H5Lff.lo: $(srcdir)/H5Lff.F90 H5f90global.lo H5Off.lo: $(srcdir)/H5Off.F90 H5f90global.lo H5Pff.lo: $(srcdir)/H5Pff.F90 H5f90global.lo H5fortkit.lo -H5Rff.lo: $(srcdir)/H5Rff.F90 H5f90global.lo +H5Rff.lo: $(srcdir)/H5Rff.F90 H5f90global.lo H5fortkit.lo H5Sff.lo: $(srcdir)/H5Sff.F90 H5f90global.lo H5Tff.lo: $(srcdir)/H5Tff.F90 H5f90global.lo H5VLff.lo: $(srcdir)/H5VLff.F90 H5f90global.lo H5fortkit.lo diff --git a/release_docs/NEWSLETTER.txt b/release_docs/NEWSLETTER.txt index a72cf370af4..eb644ffa5fe 100644 --- a/release_docs/NEWSLETTER.txt +++ b/release_docs/NEWSLETTER.txt @@ -1,4 +1,4 @@ -HDF5 version 1.14.4-3 released on 2024-05-14 +HDF5 version 1.14.4-3 released on 2024-05-20 This is a maintenance release with a few changes and updates: ---------------------------------------------------------------------------- diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt index 969ad835eee..9b69723ca02 100644 --- a/release_docs/RELEASE.txt +++ b/release_docs/RELEASE.txt @@ -1,4 +1,4 @@ -HDF5 version 1.14.4-3 released on 2024-05-14 +HDF5 version 1.14.4-3 released on 2024-05-20 ================================================================================ @@ -1014,6 +1014,40 @@ Bug Fixes since HDF5-1.14.3 release Configuration ------------- + - Fixed/reverted an Autotools configure hack that causes problems on MacOS + + A sed line in configure.ac was added in the past to paper over some + problems with older versions of the Autotools that would add incorrect + linker flags. This used the -i option in a way that caused silent + errors on MacOS that did not break the build. + + The original fix for this problem (in 1.14.4) removed the sed line + entirely, but it turns out that the sed cleanup is still necessary + on some systems, where empty -l options will be added to the libtool + script. + + This sed line has been restored and reworked to not use -i. + + Fixes GitHub issues #3843 and #4448 + + - Fixed a list index out of range issue in the runTest.cmake file + + Fixed an issue in config/cmake/runTest.cmake where the CMake logic + would try to access an invalid list index if the number of lines in + a test's output and reference files don't match + + - Fix Autotools -Werror cleanup + + The Autotools temporarily scrub -Werror(=whatever) from CFLAGS, etc. + so configure checks don't trip over warnings generated by configure + check programs. The sed line originally only scrubbed -Werror but not + -Werror=something, which would cause errors when the '=something' was + left behind in CFLAGS. + + The sed line has been updated to handle -Werror=something lines. + + Fixes one issue raised in #3872 + - Changed default of 'Error on HDF5 doxygen warnings' DOXYGEN_WARN_AS_ERROR option. The default setting of DOXYGEN_WARN_AS_ERROR to 'FAIL_ON_WARNINGS' has been changed @@ -1023,16 +1057,6 @@ Bug Fixes since HDF5-1.14.3 release * HDF5_ENABLE_DOXY_WARNINGS: ON/OFF (Default: OFF) * --enable-doxygen-errors: enable/disable (Default: disable) - - Removed an Autotools configure hack that causes problems on MacOS - - A sed line in configure.ac was added in the past to paper over some - problems with older versions of the Autotools that would add incorrect - linker flags. This hack is not needed with recent versions of the - Autotools and the sed line errors on MacOS (though this was a silent - error that didn't break the build) so the hack has been removed. - - Fixes GitHub issue #3843 - - Fixed an issue where the h5tools_test_utils test program was being installed on the system for Autotools builds of HDF5