From b77cb393b884c1dbdaffb300aa8c4967d9ba7fb0 Mon Sep 17 00:00:00 2001 From: jhendersonHDF Date: Tue, 11 Apr 2023 14:31:25 -0500 Subject: Fix improper include of build directory (#2422, #2621) (#2667) --- configure.ac | 6 ++---- release_docs/RELEASE.txt | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/configure.ac b/configure.ac index 7c8c958..d5f46da 100644 --- a/configure.ac +++ b/configure.ac @@ -3012,8 +3012,7 @@ SUBFILING_VFD=no HAVE_MERCURY="no" ## Always include subfiling directory so public header files are available -CPPFLAGS="$CPPFLAGS -I$ac_abs_confdir/src/H5FDsubfiling" -AM_CPPFLAGS="$AM_CPPFLAGS -I$ac_abs_confdir/src/H5FDsubfiling" +H5_CPPFLAGS="$H5_CPPFLAGS -I$ac_abs_confdir/src/H5FDsubfiling" AC_MSG_CHECKING([if the subfiling I/O virtual file driver (VFD) is enabled]) @@ -3061,8 +3060,7 @@ if test "X$SUBFILING_VFD" = "Xyes"; then mercury_dir="$ac_abs_confdir/src/H5FDsubfiling/mercury" mercury_inc="$mercury_dir/src/util" - CPPFLAGS="$CPPFLAGS -I$mercury_inc" - AM_CPPFLAGS="$AM_CPPFLAGS -I$mercury_inc" + H5_CPPFLAGS="$H5_CPPFLAGS -I$mercury_inc" HAVE_STDATOMIC_H="yes" AC_CHECK_HEADERS([stdatomic.h],,[HAVE_STDATOMIC_H="no"]) diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt index a33c97b..96e3e6f 100644 --- a/release_docs/RELEASE.txt +++ b/release_docs/RELEASE.txt @@ -240,6 +240,24 @@ Bug Fixes since HDF5-1.13.3 release Configuration ------------- + - Fixed improper include of Subfiling VFD build directory + + With the release of the Subfiling Virtual File Driver feature, compiler + flags were added to the Autotools build's CPPFLAGS and AM_CPPFLAGS + variables to always include the Subfiling VFD source code directory, + regardless of whether the VFD is enabled and built or not. These flags + are needed because the header files for the VFD contain macros that are + assumed to always be available, such as H5FD_SUBFILING_NAME, so the + header files are unconditionally included in the HDF5 library. However, + these flags are only needed when building HDF5, so they belong in the + H5_CPPFLAGS variable instead. Inclusion in the CPPFLAGS and AM_CPPFLAGS + variables would export these flags to the h5cc and h5c++ wrapper scripts, + as well as the libhdf5.settings file, which would break builds of software + that use HDF5 and try to use or parse information out of these files after + deleting temporary HDF5 build directories. + + (JTH - 2023/04/05 GH-2422, GH-2621) + - Correct the CMake generated pkg-config file The pkg-config file generated by CMake had the order and placement of the -- cgit v0.12