From 05ce57609cf84662d8d367eebee54de09fe68358 Mon Sep 17 00:00:00 2001 From: Allen Byrne <50328838+byrnHDF@users.noreply.github.com> Date: Thu, 28 Aug 2025 10:06:37 -0500 Subject: [PATCH] Rename the install config variables to indicate library state (#5716) This update systematically renames variables across 2.0+ CMake files in the HDF5Examples directory and configuration templates. The goal is to change variables from sounding like build "options" (e.g., HDF5_BUILD_TOOLS, HDF5_ENABLE_PARALLEL) to reflecting library "state" (e.g., what features the installed library provides). --- HDF5Examples/C/CMakeLists.txt | 6 +- HDF5Examples/C/H5D/CMakeLists.txt | 4 +- HDF5Examples/C/H5D/C_sourcefiles.cmake | 4 +- HDF5Examples/C/H5FLT/CMakeLists.txt | 2 +- HDF5Examples/C/H5G/CMakeLists.txt | 8 +- HDF5Examples/C/H5PAR/C_sourcefiles.cmake | 2 +- HDF5Examples/C/H5T/CMakeLists.txt | 4 +- HDF5Examples/C/H5VDS/CMakeLists.txt | 4 +- HDF5Examples/C/HL/CMakeLists.txt | 6 +- HDF5Examples/C/Perf/CMakeLists.txt | 2 +- HDF5Examples/CMakeLists.txt | 12 +-- HDF5Examples/CXX/CMakeLists.txt | 2 +- HDF5Examples/FORTRAN/CMakeLists.txt | 4 +- HDF5Examples/FORTRAN/H5D/CMakeLists.txt | 4 +- .../FORTRAN/H5D/Fortran_sourcefiles.cmake | 4 +- HDF5Examples/FORTRAN/H5G/CMakeLists.txt | 8 +- .../FORTRAN/H5PAR/Fortran_sourcefiles.cmake | 2 +- HDF5Examples/FORTRAN/H5T/CMakeLists.txt | 4 +- HDF5Examples/FORTRAN/HL/CMakeLists.txt | 4 +- HDF5Examples/JAVA/H5D/Java_sourcefiles.cmake | 4 +- .../config/cmake/HDFExampleMacros.cmake | 24 +++--- config/examples/HDF5AsSubdirMacros.cmake | 86 +++++++++++++++++-- config/install/hdf5-config.cmake.in | 84 +++++++++--------- release_docs/RELEASE.txt | 13 +++ 24 files changed, 192 insertions(+), 105 deletions(-) diff --git a/HDF5Examples/C/CMakeLists.txt b/HDF5Examples/C/CMakeLists.txt index a58e30521bd..6a32664a348 100644 --- a/HDF5Examples/C/CMakeLists.txt +++ b/HDF5Examples/C/CMakeLists.txt @@ -11,7 +11,7 @@ add_subdirectory (${PROJECT_SOURCE_DIR}/H5T) if (${H5_LIBVER_DIR} GREATER 16) # add_subdirectory (${PROJECT_SOURCE_DIR}/Perf) - if (USE_SHARED_LIBS AND H5EX_BUILD_FILTERS AND HDF5_ENABLE_PLUGIN_SUPPORT) + if (USE_SHARED_LIBS AND H5EX_BUILD_FILTERS AND HDF5_PROVIDES_PLUGIN_SUPPORT) add_subdirectory (${PROJECT_SOURCE_DIR}/H5FLT) endif () endif () @@ -20,12 +20,12 @@ if (${H5_LIBVER_DIR} GREATER 110) add_subdirectory (${PROJECT_SOURCE_DIR}/H5VDS) endif () -if (H5EX_ENABLE_PARALLEL AND H5_HAVE_PARALLEL AND HDF5_ENABLE_PARALLEL) +if (H5EX_ENABLE_PARALLEL AND H5_HAVE_PARALLEL AND HDF5_PROVIDES_PARALLEL) add_subdirectory (${PROJECT_SOURCE_DIR}/H5PAR) endif () #-- Add High Level Examples -if (H5EX_BUILD_HL AND HDF5_BUILD_HL_LIB) +if (H5EX_BUILD_HL AND HDF5_PROVIDES_HL_LIB) add_subdirectory (HL) endif () diff --git a/HDF5Examples/C/H5D/CMakeLists.txt b/HDF5Examples/C/H5D/CMakeLists.txt index ec5c8031aa3..e01b4d3b96f 100644 --- a/HDF5Examples/C/H5D/CMakeLists.txt +++ b/HDF5Examples/C/H5D/CMakeLists.txt @@ -125,7 +125,7 @@ endif () # endforeach () #endif () -if (HDF5_BUILD_TOOLS) +if (HDF5_PROVIDES_TOOLS) foreach (example_name ${common_examples}) add_custom_command ( TARGET ${EXAMPLE_VARNAME}_${example_name} @@ -239,7 +239,7 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" diff --git a/HDF5Examples/C/H5D/C_sourcefiles.cmake b/HDF5Examples/C/H5D/C_sourcefiles.cmake index 2d78eaa6b2d..8fae2b5c8d3 100644 --- a/HDF5Examples/C/H5D/C_sourcefiles.cmake +++ b/HDF5Examples/C/H5D/C_sourcefiles.cmake @@ -16,7 +16,7 @@ set (common_examples h5ex_d_unlimmod ) -if (HDF5_ENABLE_ZLIB_SUPPORT) +if (HDF5_PROVIDES_ZLIB_SUPPORT) set (common_examples ${common_examples} h5ex_d_gzip h5ex_d_shuffle @@ -24,7 +24,7 @@ if (HDF5_ENABLE_ZLIB_SUPPORT) ) endif () -if (HDF5_ENABLE_SZIP_SUPPORT) +if (HDF5_PROVIDES_SZIP_SUPPORT) set (common_examples ${common_examples} h5ex_d_szip ) diff --git a/HDF5Examples/C/H5FLT/CMakeLists.txt b/HDF5Examples/C/H5FLT/CMakeLists.txt index c0361071bcd..fde88e0c5dd 100644 --- a/HDF5Examples/C/H5FLT/CMakeLists.txt +++ b/HDF5Examples/C/H5FLT/CMakeLists.txt @@ -255,7 +255,7 @@ if (H5EX_BUILD_TESTING) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) endif () set (last_test "${EXAMPLE_VARNAME}_${testname}") - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) if ("${ARGN}" STREQUAL "FILTERALL") add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} diff --git a/HDF5Examples/C/H5G/CMakeLists.txt b/HDF5Examples/C/H5G/CMakeLists.txt index 509a637bc2e..59a0c77f96d 100644 --- a/HDF5Examples/C/H5G/CMakeLists.txt +++ b/HDF5Examples/C/H5G/CMakeLists.txt @@ -127,7 +127,7 @@ endif () # endforeach () #endif () -if (HDF5_BUILD_TOOLS) +if (HDF5_PROVIDES_TOOLS) foreach (example_name ${common_examples}) if (${example_name} STREQUAL "h5ex_g_create") add_custom_command ( @@ -251,7 +251,7 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" @@ -288,7 +288,7 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" @@ -333,7 +333,7 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname}1 COMMAND "${CMAKE_COMMAND}" diff --git a/HDF5Examples/C/H5PAR/C_sourcefiles.cmake b/HDF5Examples/C/H5PAR/C_sourcefiles.cmake index 2e1ede2cb1e..9183ca1cea8 100644 --- a/HDF5Examples/C/H5PAR/C_sourcefiles.cmake +++ b/HDF5Examples/C/H5PAR/C_sourcefiles.cmake @@ -11,6 +11,6 @@ set (examples ph5_hyperslab_by_pattern ph5_hyperslab_by_chunk ) -if (${HDF5_ENABLE_SUBFILING_VFD}) +if (${HDF5_PROVIDES_SUBFILING_VFD}) list (APPEND examples ph5_subfiling) endif () diff --git a/HDF5Examples/C/H5T/CMakeLists.txt b/HDF5Examples/C/H5T/CMakeLists.txt index 29d168a00be..777868a0fdb 100644 --- a/HDF5Examples/C/H5T/CMakeLists.txt +++ b/HDF5Examples/C/H5T/CMakeLists.txt @@ -110,7 +110,7 @@ if (HDF5_VERSION_MAJOR VERSION_GREATER_EQUAL "2.0") endforeach () endif () -if (HDF5_BUILD_TOOLS) +if (HDF5_PROVIDES_TOOLS) foreach (example_name ${common_examples}) if (NOT ${example_name} STREQUAL "h5ex_t_convert") if (${example_name} STREQUAL "h5ex_t_vlen" OR ${example_name} STREQUAL "h5ex_t_vlenatt") @@ -372,7 +372,7 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" diff --git a/HDF5Examples/C/H5VDS/CMakeLists.txt b/HDF5Examples/C/H5VDS/CMakeLists.txt index 4f92221165d..474fc4eaa59 100644 --- a/HDF5Examples/C/H5VDS/CMakeLists.txt +++ b/HDF5Examples/C/H5VDS/CMakeLists.txt @@ -73,7 +73,7 @@ endif () # endforeach () #endif () -if (HDF5_BUILD_TOOLS) +if (HDF5_PROVIDES_TOOLS) # foreach (example_name ${examples}) # endforeach () @@ -146,7 +146,7 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" diff --git a/HDF5Examples/C/HL/CMakeLists.txt b/HDF5Examples/C/HL/CMakeLists.txt index d78ca5510b8..73839ae420f 100644 --- a/HDF5Examples/C/HL/CMakeLists.txt +++ b/HDF5Examples/C/HL/CMakeLists.txt @@ -106,7 +106,7 @@ endforeach () # endforeach () #endif () -if (HDF5_BUILD_TOOLS) +if (HDF5_PROVIDES_TOOLS) add_custom_command ( TARGET ${EXAMPLE_VARNAME}_h5ex_image2 POST_BUILD @@ -208,7 +208,7 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" @@ -252,7 +252,7 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" diff --git a/HDF5Examples/C/Perf/CMakeLists.txt b/HDF5Examples/C/Perf/CMakeLists.txt index 2416d96188a..2208d144638 100644 --- a/HDF5Examples/C/Perf/CMakeLists.txt +++ b/HDF5Examples/C/Perf/CMakeLists.txt @@ -45,7 +45,7 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" diff --git a/HDF5Examples/CMakeLists.txt b/HDF5Examples/CMakeLists.txt index dd3bfc8fdc9..97b95525981 100644 --- a/HDF5Examples/CMakeLists.txt +++ b/HDF5Examples/CMakeLists.txt @@ -137,7 +137,7 @@ if (${H5_LIBVER_DIR} GREATER 16) set (H5_FC_FUNC_ "H5_FC_FUNC_(name,NAME) name ## _") if (EXISTS "${H5EXAMPLES_SOURCE_DIR}/FORTRAN" AND IS_DIRECTORY "${H5EXAMPLES_SOURCE_DIR}/FORTRAN") option (H5EX_BUILD_FORTRAN "Build examples FORTRAN support" OFF) - if (H5EX_BUILD_FORTRAN AND HDF5_BUILD_FORTRAN) + if (H5EX_BUILD_FORTRAN AND HDF5_PROVIDES_FORTRAN) set (H5EX_LINK_Fortran_LIBS ${H5EX_HDF5_LINK_LIBS}) # Parallel IO usage requires MPI to be Linked and Included @@ -189,7 +189,7 @@ if (${H5_LIBVER_DIR} GREATER 16) #----------------------------------------------------------------------------- if (EXISTS "${H5EXAMPLES_SOURCE_DIR}/C/H5FLT" AND IS_DIRECTORY "${H5EXAMPLES_SOURCE_DIR}/C/H5FLT") option (H5EX_BUILD_FILTERS "Build examples PLUGIN filter support" OFF) - if (H5EX_BUILD_FILTERS AND HDF5_ENABLE_PLUGIN_SUPPORT) + if (H5EX_BUILD_FILTERS AND HDF5_PROVIDES_PLUGIN_SUPPORT) if(DEFINED ENV{HDF5_PLUGIN_PATH}) message (STATUS "ENV PATH=$ENV{HDF5_PLUGIN_PATH}") set (H5EX_HDF5_PLUGIN_PATH $ENV{HDF5_PLUGIN_PATH}) @@ -208,7 +208,7 @@ if (${H5_LIBVER_DIR} GREATER 16) endif () else () set (H5EX_BUILD_HL OFF CACHE BOOL "Build examples High Level support" FORCE) - set (H5EX_BUILD_FORTRAN OFF} CACHE BOOL "Build examples FORTRAN support" FORCE) + set (H5EX_BUILD_FORTRAN OFF CACHE BOOL "Build examples FORTRAN support" FORCE) set (H5EX_BUILD_JAVA OFF CACHE BOOL "Build examples JAVA support" FORCE) set (H5EX_BUILD_CXX OFF CACHE BOOL "Build examples C++ support" FORCE) set (H5EX_BUILD_FILTERS OFF CACHE BOOL "Build examples PLUGIN filter support" FORCE) @@ -218,13 +218,13 @@ endif () # Build examples #----------------------------------------------------------------------------- add_subdirectory (C) -if (H5EX_BUILD_FORTRAN AND HDF5_BUILD_FORTRAN) +if (H5EX_BUILD_FORTRAN AND HDF5_PROVIDES_FORTRAN) add_subdirectory (FORTRAN) endif () -if (H5EX_BUILD_JAVA AND HDF5_BUILD_JAVA) +if (H5EX_BUILD_JAVA AND HDF5_PROVIDES_JAVA) add_subdirectory (JAVA) endif () -if (H5EX_BUILD_CXX AND HDF5_BUILD_CPP_LIB) +if (H5EX_BUILD_CXX AND HDF5_PROVIDES_CPP_LIB) add_subdirectory (CXX) endif () if (H5EX_BUILD_PYTHON) diff --git a/HDF5Examples/CXX/CMakeLists.txt b/HDF5Examples/CXX/CMakeLists.txt index 72f0ab3a96f..3dbb39d0256 100644 --- a/HDF5Examples/CXX/CMakeLists.txt +++ b/HDF5Examples/CXX/CMakeLists.txt @@ -5,6 +5,6 @@ add_subdirectory (H5D) add_subdirectory (TUTR) #-- Add High Level Examples -if (H5EX_BUILD_HL AND HDF5_BUILD_HL_LIB) +if (H5EX_BUILD_HL AND HDF5_PROVIDES_HL_LIB) add_subdirectory (HL) endif () diff --git a/HDF5Examples/FORTRAN/CMakeLists.txt b/HDF5Examples/FORTRAN/CMakeLists.txt index 02657716fb8..f79a48b3665 100644 --- a/HDF5Examples/FORTRAN/CMakeLists.txt +++ b/HDF5Examples/FORTRAN/CMakeLists.txt @@ -9,11 +9,11 @@ add_subdirectory (${PROJECT_SOURCE_DIR}/H5D) add_subdirectory (${PROJECT_SOURCE_DIR}/H5G) add_subdirectory (${PROJECT_SOURCE_DIR}/H5T) -if (H5_HAVE_PARALLEL AND HDF5_ENABLE_PARALLEL) +if (H5_HAVE_PARALLEL AND HDF5_PROVIDES_PARALLEL) add_subdirectory (${PROJECT_SOURCE_DIR}/H5PAR) endif () #-- Add High Level Examples -if (H5EX_BUILD_HL AND HDF5_BUILD_HL_LIB) +if (H5EX_BUILD_HL AND HDF5_PROVIDES_HL_LIB) add_subdirectory (HL) endif () diff --git a/HDF5Examples/FORTRAN/H5D/CMakeLists.txt b/HDF5Examples/FORTRAN/H5D/CMakeLists.txt index 34ef4230c9b..e93ec709105 100644 --- a/HDF5Examples/FORTRAN/H5D/CMakeLists.txt +++ b/HDF5Examples/FORTRAN/H5D/CMakeLists.txt @@ -129,7 +129,7 @@ endif () # endforeach () #endif () -if (HDF5_BUILD_TOOLS) +if (HDF5_PROVIDES_TOOLS) foreach (example_name ${common_examples}) if (${example_name} STREQUAL "h5ex_d_nbit") if (HDF5_VERSION_MAJOR VERSION_EQUAL "1.8" AND HDF5_VERSION_STRING VERSION_LESS_EQUAL "1.8.22") @@ -272,7 +272,7 @@ if (H5EX_BUILD_TESTING) set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${last_test}) endif () set (last_test "${EXAMPLE_VARNAME}_f90_${testname}") - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} COMMAND "${CMAKE_COMMAND}" diff --git a/HDF5Examples/FORTRAN/H5D/Fortran_sourcefiles.cmake b/HDF5Examples/FORTRAN/H5D/Fortran_sourcefiles.cmake index 1cced7b028e..93dcb7c47bd 100644 --- a/HDF5Examples/FORTRAN/H5D/Fortran_sourcefiles.cmake +++ b/HDF5Examples/FORTRAN/H5D/Fortran_sourcefiles.cmake @@ -19,13 +19,13 @@ set (common_examples h5ex_d_transform ) -if (HDF5_ENABLE_ZLIB_SUPPORT) +if (HDF5_PROVIDES_ZLIB_SUPPORT) set (common_examples ${common_examples} h5ex_d_gzip ) endif () -if (HDF5_ENABLE_SZIP_SUPPORT) +if (HDF5_PROVIDES_SZIP_SUPPORT) set (common_examples ${common_examples} h5ex_d_szip ) diff --git a/HDF5Examples/FORTRAN/H5G/CMakeLists.txt b/HDF5Examples/FORTRAN/H5G/CMakeLists.txt index fc3abceb537..f6a16bfebcd 100644 --- a/HDF5Examples/FORTRAN/H5G/CMakeLists.txt +++ b/HDF5Examples/FORTRAN/H5G/CMakeLists.txt @@ -123,7 +123,7 @@ endforeach () # endforeach () #endif () -if (HDF5_BUILD_TOOLS) +if (HDF5_PROVIDES_TOOLS) foreach (example_name ${common_examples}) if (${example_name} STREQUAL "h5ex_g_create") add_custom_command ( @@ -219,7 +219,7 @@ if (H5EX_BUILD_TESTING) set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${last_test}) endif () set (last_test "${EXAMPLE_VARNAME}_f90_${testname}") - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} COMMAND "${CMAKE_COMMAND}" @@ -275,7 +275,7 @@ if (H5EX_BUILD_TESTING) set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${last_test}) endif () set (last_test "${EXAMPLE_VARNAME}_f90_${testname}") - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} COMMAND "${CMAKE_COMMAND}" @@ -352,7 +352,7 @@ if (H5EX_BUILD_TESTING) ) endif () set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}-clearall) - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-f90_${testname}1 COMMAND "${CMAKE_COMMAND}" diff --git a/HDF5Examples/FORTRAN/H5PAR/Fortran_sourcefiles.cmake b/HDF5Examples/FORTRAN/H5PAR/Fortran_sourcefiles.cmake index af2bb574dc7..c02ded85877 100644 --- a/HDF5Examples/FORTRAN/H5PAR/Fortran_sourcefiles.cmake +++ b/HDF5Examples/FORTRAN/H5PAR/Fortran_sourcefiles.cmake @@ -10,7 +10,7 @@ set (examples ph5_f90_hyperslab_by_chunk ) -if (HDF5_ENABLE_SUBFILING_VFD) +if (HDF5_PROVIDES_SUBFILING_VFD) set (examples ${examples} ph5_f90_subfiling ) diff --git a/HDF5Examples/FORTRAN/H5T/CMakeLists.txt b/HDF5Examples/FORTRAN/H5T/CMakeLists.txt index f8c400a3ea2..ae380cb0b5a 100644 --- a/HDF5Examples/FORTRAN/H5T/CMakeLists.txt +++ b/HDF5Examples/FORTRAN/H5T/CMakeLists.txt @@ -116,7 +116,7 @@ endforeach () # endforeach () #endif () -if (HDF5_BUILD_TOOLS) +if (HDF5_PROVIDES_TOOLS) foreach (example_name ${common_examples}) add_custom_command ( TARGET ${EXAMPLE_VARNAME}_f90_${example_name} @@ -333,7 +333,7 @@ if (H5EX_BUILD_TESTING) set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${last_test}) endif () set (last_test "${EXAMPLE_VARNAME}_f90_${testname}") - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} COMMAND "${CMAKE_COMMAND}" diff --git a/HDF5Examples/FORTRAN/HL/CMakeLists.txt b/HDF5Examples/FORTRAN/HL/CMakeLists.txt index 8fd665a3752..7a8b8d13514 100644 --- a/HDF5Examples/FORTRAN/HL/CMakeLists.txt +++ b/HDF5Examples/FORTRAN/HL/CMakeLists.txt @@ -121,7 +121,7 @@ endforeach () # endforeach () #endif () -#if (HDF5_BUILD_TOOLS) +#if (HDF5_PROVIDES_TOOLS) # foreach (example_name ${f03_examples}) # add_custom_command ( # TARGET ${EXAMPLE_VARNAME}_f90_${example_name} @@ -188,7 +188,7 @@ if (H5EX_BUILD_TESTING) set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${last_test}) endif () set (last_test "${EXAMPLE_VARNAME}_f90_${testname}") - if (HDF5_BUILD_TOOLS) + if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} COMMAND "${CMAKE_COMMAND}" diff --git a/HDF5Examples/JAVA/H5D/Java_sourcefiles.cmake b/HDF5Examples/JAVA/H5D/Java_sourcefiles.cmake index 4bdb766f6cf..c9acc048fb9 100644 --- a/HDF5Examples/JAVA/H5D/Java_sourcefiles.cmake +++ b/HDF5Examples/JAVA/H5D/Java_sourcefiles.cmake @@ -29,10 +29,10 @@ set (HDF_JAVA_SZIP_EXAMPLES ) # detect whether the encoder is present. - if (${HDF5_ENABLE_ZLIB_SUPPORT}) + if (${HDF5_PROVIDES_ZLIB_SUPPORT}) set (HDF_JAVA_EXAMPLES ${HDF_JAVA_EXAMPLES} ${HDF_JAVA_ZLIB_EXAMPLES}) endif () - if (${HDF5_ENABLE_SZIP_SUPPORT}) + if (${HDF5_PROVIDES_SZIP_SUPPORT}) set (HDF_JAVA_EXAMPLES ${HDF_JAVA_EXAMPLES} ${HDF_JAVA_SZIP_EXAMPLES}) endif () diff --git a/HDF5Examples/config/cmake/HDFExampleMacros.cmake b/HDF5Examples/config/cmake/HDFExampleMacros.cmake index 17ae8573440..f2f546b3a1f 100644 --- a/HDF5Examples/config/cmake/HDFExampleMacros.cmake +++ b/HDF5Examples/config/cmake/HDFExampleMacros.cmake @@ -193,7 +193,7 @@ macro (HDF5_SUPPORT) find_package (HDF5 NAMES ${SEARCH_PACKAGE_NAME} COMPONENTS ${FIND_HDF_COMPONENTS}) message (STATUS "HDF5 libs:${HDF5_FOUND} C:${HDF5_C_FOUND} Fortran:${HDF5_Fortran_FOUND} Java:${HDF5_Java_FOUND}") set (H5EX_HDF5_LINK_LIBS ${H5EX_HDF5_LINK_LIBS} ${HDF5_LIBRARIES}) - if (HDF5_BUILD_SHARED_LIBS) + if (HDF5_PROVIDES_SHARED_LIBS) add_definitions (-DH5_BUILT_AS_DYNAMIC_LIB) else () add_definitions (-DH5_BUILT_AS_STATIC_LIB) @@ -239,7 +239,7 @@ macro (HDF5_SUPPORT) set (H5EX_BUILD_HL OFF CACHE BOOL "Build High Level support" FORCE) message (STATUS "HDF5 HL libs not found - disable build of HL examples") else () - if (H5EX_BUILD_HL AND ${HDF5_BUILD_HL_LIB}) + if (H5EX_BUILD_HL AND ${HDF5_PROVIDES_HL_LIB}) if (BUILD_SHARED_LIBS AND HDF5_shared_HL_FOUND) set (H5EX_HDF5_LINK_LIBS ${H5EX_HDF5_LINK_LIBS} ${HDF5_HL_SHARED_LIBRARY}) elseif (HDF5_static_HL_FOUND) @@ -255,15 +255,15 @@ macro (HDF5_SUPPORT) set (H5EX_BUILD_FORTRAN OFF CACHE BOOL "Build FORTRAN support" FORCE) message (STATUS "HDF5 Fortran libs not found - disable build of Fortran examples") else () - if (H5EX_BUILD_FORTRAN AND ${HDF5_BUILD_FORTRAN}) + if (H5EX_BUILD_FORTRAN AND ${HDF5_PROVIDES_FORTRAN}) if (BUILD_SHARED_LIBS AND HDF5_shared_Fortran_FOUND) set (H5EX_HDF5_LINK_LIBS ${H5EX_HDF5_LINK_LIBS} ${HDF5_FORTRAN_SHARED_LIBRARY}) - if (H5EX_BUILD_HL AND ${HDF5_BUILD_HL_LIB}) + if (H5EX_BUILD_HL AND ${HDF5_PROVIDES_HL_LIB}) set (H5EX_HDF5_LINK_LIBS ${H5EX_HDF5_LINK_LIBS} ${HDF5_FORTRAN_HL_SHARED_LIBRARY}) endif () elseif (HDF5_static_Fortran_FOUND) set (H5EX_HDF5_LINK_LIBS ${H5EX_HDF5_LINK_LIBS} ${HDF5_FORTRAN_STATIC_LIBRARY}) - if (H5EX_BUILD_HL AND ${HDF5_BUILD_HL_LIB}) + if (H5EX_BUILD_HL AND ${HDF5_PROVIDES_HL_LIB}) set (H5EX_HDF5_LINK_LIBS ${H5EX_HDF5_LINK_LIBS} ${HDF5_FORTRAN_HL_STATIC_LIBRARY}) endif () else () @@ -277,15 +277,15 @@ macro (HDF5_SUPPORT) set (H5EX_BUILD_CXX OFF CACHE BOOL "Build CXX support" FORCE) message (STATUS "HDF5 CXX libs not found - disable build of CXX examples") else () - if (H5EX_BUILD_CXX AND ${HDF5_BUILD_CPP_LIB}) + if (H5EX_BUILD_CXX AND ${HDF5_PROVIDES_CPP_LIB}) if (BUILD_SHARED_LIBS AND HDF5_shared_CXX_FOUND) set (H5EX_HDF5_LINK_LIBS ${H5EX_HDF5_LINK_LIBS} ${HDF5_CXX_SHARED_LIBRARY}) - if (H5EX_BUILD_HL AND ${HDF5_BUILD_HL_LIB}) + if (H5EX_BUILD_HL AND ${HDF5_PROVIDES_HL_LIB}) set (H5EX_HDF5_LINK_LIBS ${H5EX_HDF5_LINK_LIBS} ${HDF5_CXX_HL_SHARED_LIBRARY}) endif () elseif (HDF5_static_CXX_FOUND) set (H5EX_HDF5_LINK_LIBS ${H5EX_HDF5_LINK_LIBS} ${HDF5_CXX_STATIC_LIBRARY}) - if (H5EX_BUILD_HL AND ${HDF5_BUILD_HL_LIB}) + if (H5EX_BUILD_HL AND ${HDF5_PROVIDES_HL_LIB}) set (H5EX_HDF5_LINK_LIBS ${H5EX_HDF5_LINK_LIBS} ${HDF5_CXX_HL_STATIC_LIBRARY}) endif () else () @@ -296,7 +296,7 @@ macro (HDF5_SUPPORT) endif () if (H5EX_BUILD_JAVA AND HDF5_Java_FOUND) - if (${HDF5_BUILD_JAVA}) + if (${HDF5_PROVIDES_JAVA}) set (CMAKE_JAVA_INCLUDE_PATH "${CMAKE_JAVA_INCLUDE_PATH};${HDF5_JAVA_INCLUDE_DIRS}") get_target_property (libsoname ${HDF5_JAVA_LIBRARY} IMPORTED_SONAME${UPPER_BUILD_TYPE}) get_filename_component (libname ${libsoname} NAME_WE) @@ -317,11 +317,11 @@ macro (HDF5_SUPPORT) find_package (HDF5) # Legacy find #Legacy find_package does not set HDF5_TOOLS_DIR, so we set it here set (HDF5_TOOLS_DIR ${HDF5_LIBRARY_DIRS}/../bin) - #Legacy find_package does not set HDF5_BUILD_SHARED_LIBS, so we set it here + #Legacy find_package does not set HDF5_PROVIDES_SHARED_LIBS, so we set it here if (USE_SHARED_LIBS AND EXISTS "${HDF5_LIBRARY_DIRS}/libhdf5.so") - set (HDF5_BUILD_SHARED_LIBS 1) + set (HDF5_PROVIDES_SHARED_LIBS 1) else () - set (HDF5_BUILD_SHARED_LIBS 0) + set (HDF5_PROVIDES_SHARED_LIBS 0) endif () set (H5EX_HDF5_LINK_LIBS ${H5EX_HDF5_LINK_LIBS} ${HDF5_LIBRARIES}) add_executable (${HDF5_NAMESPACE}h5dump IMPORTED) diff --git a/config/examples/HDF5AsSubdirMacros.cmake b/config/examples/HDF5AsSubdirMacros.cmake index 1348438b2ed..08c35f5b63b 100644 --- a/config/examples/HDF5AsSubdirMacros.cmake +++ b/config/examples/HDF5AsSubdirMacros.cmake @@ -132,7 +132,7 @@ macro (HDF5_SUPPORT EXTNAME) #EXTNAME is the extension name used in the parent p find_package (HDF5 NAMES ${SEARCH_PACKAGE_NAME} COMPONENTS ${FIND_HDF_COMPONENTS}) message (STATUS "HDF5 libs:${HDF5_FOUND} C:${HDF5_C_FOUND} Fortran:${HDF5_Fortran_FOUND} Java:${HDF5_Java_FOUND}") set (H5${EXTNAME}_HDF5_LINK_LIBS ${H5${EXTNAME}_HDF5_LINK_LIBS} ${HDF5_LIBRARIES}) - if (HDF5_BUILD_SHARED_LIBS) + if (HDF5_PROVIDES_SHARED_LIBS) add_definitions (-DH5_BUILT_AS_DYNAMIC_LIB) else () add_definitions (-DH5_BUILT_AS_STATIC_LIB) @@ -170,7 +170,7 @@ macro (HDF5_SUPPORT EXTNAME) #EXTNAME is the extension name used in the parent p set (HDF_BUILD_FORTRAN OFF CACHE BOOL "Build FORTRAN support" FORCE) message (STATUS "HDF5 Fortran libs not found - disable build of Fortran examples") else () - if (HDF_BUILD_FORTRAN AND ${HDF5_BUILD_FORTRAN}) + if (HDF_BUILD_FORTRAN AND ${HDF5_PROVIDES_FORTRAN}) if (BUILD_SHARED_LIBS AND HDF5_shared_Fortran_FOUND) set (H5${EXTNAME}_HDF5_LINK_LIBS ${H5${EXTNAME}_HDF5_LINK_LIBS} ${HDF5_FORTRAN_SHARED_LIBRARY}) elseif (HDF5_static_Fortran_FOUND) @@ -182,7 +182,7 @@ macro (HDF5_SUPPORT EXTNAME) #EXTNAME is the extension name used in the parent p endif () endif () if (HDF_BUILD_JAVA AND HDF5_Java_FOUND) - if (${HDF5_BUILD_JAVA}) + if (${HDF5_PROVIDES_JAVA}) set (CMAKE_JAVA_INCLUDE_PATH "${CMAKE_JAVA_INCLUDE_PATH};${HDF5_JAVA_INCLUDE_DIRS}") set (H5${EXTNAME}_JAVA_LIBRARY ${HDF5_JAVA_LIBRARY}) set (H5${EXTNAME}_JAVA_LIBRARIES ${HDF5_JAVA_LIBRARY}) @@ -199,11 +199,11 @@ macro (HDF5_SUPPORT EXTNAME) #EXTNAME is the extension name used in the parent p find_package (HDF5) # Legacy find #Legacy find_package does not set HDF5_TOOLS_DIR, so we set it here set (HDF5_TOOLS_DIR ${HDF5_LIBRARY_DIRS}/../bin) - #Legacy find_package does not set HDF5_BUILD_SHARED_LIBS, so we set it here + #Legacy find_package does not set HDF5_PROVIDES_SHARED_LIBS, so we set it here if (USE_SHARED_LIBS AND EXISTS "${HDF5_LIBRARY_DIRS}/libhdf5.so") - set (HDF5_BUILD_SHARED_LIBS 1) + set (HDF5_PROVIDES_SHARED_LIBS 1) else () - set (HDF5_BUILD_SHARED_LIBS 0) + set (HDF5_PROVIDES_SHARED_LIBS 0) endif () set (H5${EXTNAME}_HDF5_LINK_LIBS ${H5${EXTNAME}_HDF5_LINK_LIBS} ${HDF5_LIBRARIES}) add_executable (${HDF5_NAMESPACE}h5dump IMPORTED) @@ -234,3 +234,77 @@ macro (HDF5_SUPPORT EXTNAME) #EXTNAME is the extension name used in the parent p endif () message (STATUS "HDF5 link libs: ${H5${EXTNAME}_HDF5_LINK_LIBS} Includes: ${H5${EXTNAME}_HDF5_INCLUDE_DIRS}") endmacro () + +# +# This macro is used to convert HDF5 1.X built CMake hdf5-config.cmake variables to HDF5 2.x built names. +macro (EXTERNAL_HDF5_STATUS) # add argument REV to convert from 2.x to 1.x names + if (NOT ARGN) + #----------------------------------------------------------------------------- + # Languages: + #----------------------------------------------------------------------------- + set (${HDF5_PACKAGE_NAME}_PROVIDES_FORTRAN ${HDF5_PACKAGE_NAME}_BUILD_FORTRAN) + set (${HDF5_PACKAGE_NAME}_PROVIDES_CPP_LIB ${HDF5_PACKAGE_NAME}_BUILD_CPP_LIB) + set (${HDF5_PACKAGE_NAME}_PROVIDES_JAVA ${HDF5_PACKAGE_NAME}_BUILD_JAVA) + #----------------------------------------------------------------------------- + # Features: + #----------------------------------------------------------------------------- + set (${HDF5_PACKAGE_NAME}_PROVIDES_HL_LIB ${HDF5_PACKAGE_NAME}_BUILD_HL_LIB) + set (${HDF5_PACKAGE_NAME}_PROVIDES_SHARED_LIBS ${HDF5_PACKAGE_NAME}_BUILD_SHARED_LIBS) + set (${HDF5_PACKAGE_NAME}_PROVIDES_STATIC_LIBS ${HDF5_PACKAGE_NAME}_BUILD_STATIC_LIBS) + set (${HDF5_PACKAGE_NAME}_PROVIDES_THREADS ${HDF5_PACKAGE_NAME}_ENABLE_THREADSAFE) + set (${HDF5_PACKAGE_NAME}_PROVIDES_THREADSAFE ${HDF5_PACKAGE_NAME}_ENABLE_THREADSAFE) + set (${HDF5_PACKAGE_NAME}_PROVIDES_PARALLEL ${HDF5_PACKAGE_NAME}_ENABLE_PARALLEL) + set (${HDF5_PACKAGE_NAME}_PROVIDES_DEPRECATED_SYMBOLS ${HDF5_PACKAGE_NAME}_ENABLE_DEPRECATED_SYMBOLS) + #----------------------------------------------------------------------------- + set (${HDF5_PACKAGE_NAME}_PROVIDES_TOOLS ${HDF5_PACKAGE_NAME}_BUILD_TOOLS) + set (${HDF5_PACKAGE_NAME}_PROVIDES_STATIC_TOOLS ${HDF5_PACKAGE_NAME}_BUILD_STATIC_TOOLS) + #----------------------------------------------------------------------------- + set (${HDF5_PACKAGE_NAME}_PROVIDES_NONSTANDARD_FEATURE_FLOAT16 ${HDF5_PACKAGE_NAME}_ENABLE_NONSTANDARD_FEATURE_FLOAT16) + #----------------------------------------------------------------------------- + set (${HDF5_PACKAGE_NAME}_PROVIDES_ZLIB_SUPPORT ${HDF5_PACKAGE_NAME}_ENABLE_Z_LIB_SUPPORT) + set (${HDF5_PACKAGE_NAME}_PROVIDES_SZIP_SUPPORT ${HDF5_PACKAGE_NAME}_ENABLE_SZIP_SUPPORT) + set (${HDF5_PACKAGE_NAME}_PROVIDES_SZIP_ENCODING ${HDF5_PACKAGE_NAME}_ENABLE_SZIP_ENCODING) + #----------------------------------------------------------------------------- + set (${HDF5_PACKAGE_NAME}_PROVIDES_MAP_API ${HDF5_PACKAGE_NAME}_ENABLE_MAP_API) + set (${HDF5_PACKAGE_NAME}_PROVIDES_DIRECT_VFD ${HDF5_PACKAGE_NAME}_ENABLE_DIRECT_VFD) + set (${HDF5_PACKAGE_NAME}_PROVIDES_MIRROR_VFD ${HDF5_PACKAGE_NAME}_ENABLE_MIRROR_VFD) + set (${HDF5_PACKAGE_NAME}_PROVIDES_ROS3_VFD ${HDF5_PACKAGE_NAME}_ENABLE_ROS3_VFD) + set (${HDF5_PACKAGE_NAME}_PROVIDES_HDFS_VFD ${HDF5_PACKAGE_NAME}_ENABLE_HDFS) + set (${HDF5_PACKAGE_NAME}_PROVIDES_SUBFILING_VFD ${HDF5_PACKAGE_NAME}_ENABLE_SUBFILING_VFD) + set (${HDF5_PACKAGE_NAME}_PROVIDES_PLUGIN_SUPPORT ${HDF5_PACKAGE_NAME}_ENABLE_PLUGIN_SUPPORT) + else () + #----------------------------------------------------------------------------- + # Languages: + #----------------------------------------------------------------------------- + set (${HDF5_PACKAGE_NAME}_BUILD_FORTRAN ${HDF5_PACKAGE_NAME}_PROVIDES_FORTRAN) + set (${HDF5_PACKAGE_NAME}_BUILD_CPP_LIB ${HDF5_PACKAGE_NAME}_PROVIDES_CPP_LIB) + set (${HDF5_PACKAGE_NAME}_BUILD_JAVA ${HDF5_PACKAGE_NAME}_PROVIDES_JAVA) + #----------------------------------------------------------------------------- + # Features: + #----------------------------------------------------------------------------- + set (${HDF5_PACKAGE_NAME}_BUILD_HL_LIB ${HDF5_PACKAGE_NAME}_PROVIDES_HL_LIBS) + set (${HDF5_PACKAGE_NAME}_BUILD_SHARED_LIBS ${HDF5_PACKAGE_NAME}_PROVIDES_SHARED_LIBS) + set (${HDF5_PACKAGE_NAME}_BUILD_STATIC_LIBS ${HDF5_PACKAGE_NAME}_PROVIDES_STATIC_LIB) + set (${HDF5_PACKAGE_NAME}_ENABLE_THREADSAFE ${HDF5_PACKAGE_NAME}_PROVIDES_THREADSAFE) + set (${HDF5_PACKAGE_NAME}_ENABLE_PARALLEL ${HDF5_PACKAGE_NAME}_PROVIDES_PARALLEL) + set (${HDF5_PACKAGE_NAME}_ENABLE_DEPRECATED_SYMBOLS ${HDF5_PACKAGE_NAME}_PROVIDES_DEPRECATED_SYMBOLS) + #----------------------------------------------------------------------------- + set (${HDF5_PACKAGE_NAME}_BUILD_TOOLS ${HDF5_PACKAGE_NAME}_PROVIDES_TOOLS) + set (${HDF5_PACKAGE_NAME}_BUILD_STATIC_TOOLS ${HDF5_PACKAGE_NAME}_PROVIDES_STATIC_TOOLS) + #----------------------------------------------------------------------------- + set (${HDF5_PACKAGE_NAME}_BUILD_NONSTANDARD_FEATURE_FLOAT16 ${HDF5_PACKAGE_NAME}_PROVIDES_NONSTANDARD_FEATURE_FLOAT16) + #----------------------------------------------------------------------------- + set (${HDF5_PACKAGE_NAME}_ENABLE_Z_LIB_SUPPORT ${HDF5_PACKAGE_NAME}_PROVIDES_ZLIB_SUPPORT) + set (${HDF5_PACKAGE_NAME}_ENABLE_SZIP_SUPPORT ${HDF5_PACKAGE_NAME}_PROVIDES_SZIP_SUPPORT) + set (${HDF5_PACKAGE_NAME}_PROVIDES_SZIP_ENCODING ${HDF5_PACKAGE_NAME}_PROVIDES_SZIP_ENCODING) + #----------------------------------------------------------------------------- + set (${HDF5_PACKAGE_NAME}_ENABLE_MAP_API ${HDF5_PACKAGE_NAME}_PROVIDES_MAP_API) + set (${HDF5_PACKAGE_NAME}_ENABLE_DIRECT_VFD ${HDF5_PACKAGE_NAME}_PROVIDES_DIRECT_VFD) + set (${HDF5_PACKAGE_NAME}_ENABLE_MIRROR_VFD ${HDF5_PACKAGE_NAME}_PROVIDES_MIRROR_VFD) + set (${HDF5_PACKAGE_NAME}_ENABLE_ROS3_VFD ${HDF5_PACKAGE_NAME}_PROVIDES_ROS3_VFD) + set (${HDF5_PACKAGE_NAME}_ENABLE_HDFS_VFD ${HDF5_PACKAGE_NAME}_PROVIDES_HDFS) + set (${HDF5_PACKAGE_NAME}_ENABLE_SUBFILING_VFD ${HDF5_PACKAGE_NAME}_PROVIDES_SUBFILING_VFD) + set (${HDF5_PACKAGE_NAME}_ENABLE_PLUGIN_SUPPORT ${HDF5_PACKAGE_NAME}_PROVIDES_PLUGIN_SUPPORT) + endif () +endmacro () + diff --git a/config/install/hdf5-config.cmake.in b/config/install/hdf5-config.cmake.in index c94ebeec6c4..c4c6c7e825c 100644 --- a/config/install/hdf5-config.cmake.in +++ b/config/install/hdf5-config.cmake.in @@ -38,39 +38,39 @@ set (${HDF5_PACKAGE_NAME}_BUILD_MODE @HDF_CFG_NAME@) #----------------------------------------------------------------------------- # Languages: #----------------------------------------------------------------------------- -set (${HDF5_PACKAGE_NAME}_BUILD_FORTRAN @HDF5_BUILD_FORTRAN@) -set (${HDF5_PACKAGE_NAME}_BUILD_CPP_LIB @HDF5_BUILD_CPP_LIB@) -set (${HDF5_PACKAGE_NAME}_BUILD_JAVA @HDF5_BUILD_JAVA@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_FORTRAN @HDF5_BUILD_FORTRAN@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_CPP_LIB @HDF5_BUILD_CPP_LIB@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_JAVA @HDF5_BUILD_JAVA@) set (${HDF5_PACKAGE_NAME}_INSTALL_MOD_FORTRAN "@HDF5_INSTALL_MOD_FORTRAN@") #----------------------------------------------------------------------------- # Features: #----------------------------------------------------------------------------- -set (${HDF5_PACKAGE_NAME}_BUILD_HL_LIB @HDF5_BUILD_HL_LIB@) -set (${HDF5_PACKAGE_NAME}_BUILD_SHARED_LIBS @H5_ENABLE_SHARED_LIB@) -set (${HDF5_PACKAGE_NAME}_BUILD_STATIC_LIBS @H5_ENABLE_STATIC_LIB@) -set (${HDF5_PACKAGE_NAME}_THREADS_ENABLED @HDF5_THREADS_ENABLED@) -set (${HDF5_PACKAGE_NAME}_ENABLE_THREADSAFE @HDF5_ENABLE_THREADSAFE@) -set (${HDF5_PACKAGE_NAME}_ENABLE_PARALLEL @HDF5_ENABLE_PARALLEL@) -set (${HDF5_PACKAGE_NAME}_DEFAULT_API_VERSION "@HDF5_DEFAULT_API_VERSION@") -set (${HDF5_PACKAGE_NAME}_ENABLE_DEPRECATED_SYMBOLS @HDF5_ENABLE_DEPRECATED_SYMBOLS@) -set (${HDF5_PACKAGE_NAME}_BUILD_DIMENSION_SCALES_WITH_NEW_REF @DIMENSION_SCALES_WITH_NEW_REF@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_HL_LIB @HDF5_BUILD_HL_LIB@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_SHARED_LIBS @H5_ENABLE_SHARED_LIB@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_STATIC_LIBS @H5_ENABLE_STATIC_LIB@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_THREADS @HDF5_THREADS_ENABLED@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_THREADSAFE @HDF5_ENABLE_THREADSAFE@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_PARALLEL @HDF5_ENABLE_PARALLEL@) +set (${HDF5_PACKAGE_NAME}_DEFAULT_API_VERSION "@HDF5_DEFAULT_API_VERSION@") +set (${HDF5_PACKAGE_NAME}_PROVIDES_DEPRECATED_SYMBOLS @HDF5_ENABLE_DEPRECATED_SYMBOLS@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_DIMENSION_SCALES_WITH_NEW_REF @DIMENSION_SCALES_WITH_NEW_REF@) #----------------------------------------------------------------------------- -set (${HDF5_PACKAGE_NAME}_BUILD_TOOLS @HDF5_BUILD_TOOLS@) -set (${HDF5_PACKAGE_NAME}_BUILD_STATIC_TOOLS @HDF5_BUILD_STATIC_TOOLS@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_TOOLS @HDF5_BUILD_TOOLS@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_STATIC_TOOLS @HDF5_BUILD_STATIC_TOOLS@) #----------------------------------------------------------------------------- -set (${HDF5_PACKAGE_NAME}_ENABLE_NONSTANDARD_FEATURE_FLOAT16 @HDF5_ENABLE_NONSTANDARD_FEATURE_FLOAT16@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_NONSTANDARD_FEATURE_FLOAT16 @HDF5_ENABLE_NONSTANDARD_FEATURE_FLOAT16@) #----------------------------------------------------------------------------- -set (${HDF5_PACKAGE_NAME}_ENABLE_ZLIB_SUPPORT @HDF5_ENABLE_ZLIB_SUPPORT@) -set (${HDF5_PACKAGE_NAME}_ENABLE_SZIP_SUPPORT @HDF5_ENABLE_SZIP_SUPPORT@) -set (${HDF5_PACKAGE_NAME}_ENABLE_SZIP_ENCODING @HDF5_ENABLE_SZIP_ENCODING@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_ZLIB_SUPPORT @HDF5_ENABLE_ZLIB_SUPPORT@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_SZIP_SUPPORT @HDF5_ENABLE_SZIP_SUPPORT@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_SZIP_ENCODING @HDF5_ENABLE_SZIP_ENCODING@) #----------------------------------------------------------------------------- -set (${HDF5_PACKAGE_NAME}_ENABLE_MAP_API @HDF5_ENABLE_MAP_API@) -set (${HDF5_PACKAGE_NAME}_ENABLE_DIRECT_VFD @HDF5_ENABLE_DIRECT_VFD@) -set (${HDF5_PACKAGE_NAME}_ENABLE_MIRROR_VFD @HDF5_ENABLE_MIRROR_VFD@) -set (${HDF5_PACKAGE_NAME}_ENABLE_ROS3_VFD @HDF5_ENABLE_ROS3_VFD@) -set (${HDF5_PACKAGE_NAME}_ENABLE_HDFS_VFD @HDF5_ENABLE_HDFS@) -set (${HDF5_PACKAGE_NAME}_ENABLE_SUBFILING_VFD @HDF5_ENABLE_SUBFILING_VFD@) -set (${HDF5_PACKAGE_NAME}_ENABLE_PLUGIN_SUPPORT @HDF5_ENABLE_PLUGIN_SUPPORT@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_MAP_API @HDF5_ENABLE_MAP_API@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_DIRECT_VFD @HDF5_ENABLE_DIRECT_VFD@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_MIRROR_VFD @HDF5_ENABLE_MIRROR_VFD@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_ROS3_VFD @HDF5_ENABLE_ROS3_VFD@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_HDFS_VFD @HDF5_ENABLE_HDFS@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_SUBFILING_VFD @HDF5_ENABLE_SUBFILING_VFD@) +set (${HDF5_PACKAGE_NAME}_PROVIDES_PLUGIN_SUPPORT @HDF5_ENABLE_PLUGIN_SUPPORT@) #----------------------------------------------------------------------------- set (${HDF5_PACKAGE_NAME}_PACKAGE_EXTLIBS @HDF5_PACKAGE_EXTLIBS@) set (${HDF5_PACKAGE_NAME}_EXPORT_LIBRARIES @HDF5_LIBRARIES_TO_EXPORT@) @@ -80,26 +80,26 @@ set (${HDF5_PACKAGE_NAME}_TOOLSET "@CMAKE_GENERATOR_TOOLSET@") #----------------------------------------------------------------------------- # Dependencies #----------------------------------------------------------------------------- -if (${HDF5_PACKAGE_NAME}_ENABLE_PARALLEL) +if (${HDF5_PACKAGE_NAME}_PROVIDES_PARALLEL) set (${HDF5_PACKAGE_NAME}_MPI_C_INCLUDE_PATH "@MPI_C_INCLUDE_DIRS@") set (${HDF5_PACKAGE_NAME}_MPI_C_LIBRARIES "@MPI_C_LIBRARIES@") - if (${HDF5_PACKAGE_NAME}_BUILD_FORTRAN) + if (${HDF5_PACKAGE_NAME}_PROVIDES_FORTRAN) set (${HDF5_PACKAGE_NAME}_MPI_Fortran_INCLUDE_PATH "@MPI_Fortran_INCLUDE_DIRS@") set (${HDF5_PACKAGE_NAME}_MPI_Fortran_LIBRARIES "@MPI_Fortran_LIBRARIES@") endif () - set (${HDF5_PACKAGE_NAME}_PARALLEL_FILTERED_WRITES @PARALLEL_FILTERED_WRITES@) - set (${HDF5_PACKAGE_NAME}_LARGE_PARALLEL_IO @LARGE_PARALLEL_IO@) + set (${HDF5_PACKAGE_NAME}_PROVIDES_PARALLEL_FILTERED_WRITES @PARALLEL_FILTERED_WRITES@) + set (${HDF5_PACKAGE_NAME}_PROVIDES_LARGE_PARALLEL_IO @LARGE_PARALLEL_IO@) enable_language(C) # for MPI::MPI_C find_package(MPI QUIET REQUIRED) endif () -if (${HDF5_PACKAGE_NAME}_THREADS_ENABLED) +if (${HDF5_PACKAGE_NAME}_PROVIDES_THREADS) set(THREADS_PREFER_PTHREAD_FLAG ON) find_package(Threads QUIET REQUIRED) endif () -if (${HDF5_PACKAGE_NAME}_BUILD_JAVA) +if (${HDF5_PACKAGE_NAME}_PROVIDES_JAVA) set (${HDF5_PACKAGE_NAME}_JAVA_INCLUDE_DIRS @PACKAGE_CURRENT_BUILD_DIR@/lib/jarhdf5-@HDF5_VERSION_STRING@.jar @PACKAGE_CURRENT_BUILD_DIR@/lib/slf4j-api-2.0.16.jar @@ -107,7 +107,7 @@ if (${HDF5_PACKAGE_NAME}_BUILD_JAVA) ) endif () -if (${HDF5_PACKAGE_NAME}_ENABLE_ZLIB_SUPPORT) +if (${HDF5_PACKAGE_NAME}_PROVIDES_ZLIB_SUPPORT) if (NOT @ZLIB_USE_EXTERNAL@) if (@HDF5_MODULE_MODE_ZLIB@) # Expect that the default shared library is expected with FindZLIB.cmake @@ -118,7 +118,7 @@ if (${HDF5_PACKAGE_NAME}_ENABLE_ZLIB_SUPPORT) endif () endif () -if (${HDF5_PACKAGE_NAME}_ENABLE_SZIP_SUPPORT) +if (${HDF5_PACKAGE_NAME}_PROVIDES_SZIP_SUPPORT) if (NOT @SZIP_USE_EXTERNAL@) find_package (LIBAEC NAMES @LIBAEC_PACKAGE_NAME@ CONFIG OPTIONAL_COMPONENTS @LIBAEC_SEARCH_TYPE@) endif () @@ -132,19 +132,19 @@ set (${HDF5_PACKAGE_NAME}_INCLUDE_DIR "@PACKAGE_INCLUDE_INSTALL_DIR@" "${${HDF5_ set (${HDF5_PACKAGE_NAME}_SHARE_DIR "@PACKAGE_SHARE_INSTALL_DIR@") set_and_check (${HDF5_PACKAGE_NAME}_BUILD_DIR "@PACKAGE_CURRENT_BUILD_DIR@") -if (${HDF5_PACKAGE_NAME}_BUILD_CPP_LIB) +if (${HDF5_PACKAGE_NAME}_PROVIDES_CPP_LIB) set (${HDF5_PACKAGE_NAME}_INCLUDE_DIR_CPP "@PACKAGE_INCLUDE_INSTALL_DIR@") endif () -if (${HDF5_PACKAGE_NAME}_BUILD_HL_LIB) +if (${HDF5_PACKAGE_NAME}_PROVIDES_HL_LIB) set (${HDF5_PACKAGE_NAME}_INCLUDE_DIR_HL "@PACKAGE_INCLUDE_INSTALL_DIR@") endif () -if (${HDF5_PACKAGE_NAME}_BUILD_HL_LIB AND ${HDF5_PACKAGE_NAME}_BUILD_CPP_LIB) +if (${HDF5_PACKAGE_NAME}_PROVIDES_HL_LIB AND ${HDF5_PACKAGE_NAME}_PROVIDES_CPP_LIB) set (${HDF5_PACKAGE_NAME}_INCLUDE_DIR_HL_CPP "@PACKAGE_INCLUDE_INSTALL_DIR@") endif () -if (${HDF5_PACKAGE_NAME}_BUILD_TOOLS) +if (${HDF5_PACKAGE_NAME}_PROVIDES_TOOLS) set (${HDF5_PACKAGE_NAME}_INCLUDE_DIR_TOOLS "@PACKAGE_INCLUDE_INSTALL_DIR@") set_and_check (${HDF5_PACKAGE_NAME}_TOOLS_DIR "@PACKAGE_CURRENT_BUILD_DIR@/bin") endif () @@ -162,12 +162,12 @@ set (${HDF5_PACKAGE_NAME}_VERSION_MINOR @HDF5_VERSION_MINOR@) # project which has already built hdf5 as a subproject #----------------------------------------------------------------------------- if (NOT TARGET "@HDF5_PACKAGE@") - if (${HDF5_PACKAGE_NAME}_ENABLE_ZLIB_SUPPORT) + if (${HDF5_PACKAGE_NAME}_PROVIDES_ZLIB_SUPPORT) if (${HDF5_PACKAGE_NAME}_PACKAGE_EXTLIBS AND @ZLIB_USE_EXTERNAL@) include (@PACKAGE_SHARE_INSTALL_DIR@/@ZLIB_PACKAGE_NAME@@HDF_PACKAGE_EXT@-targets.cmake) endif () endif () - if (${HDF5_PACKAGE_NAME}_ENABLE_SZIP_SUPPORT) + if (${HDF5_PACKAGE_NAME}_PROVIDES_SZIP_SUPPORT) if (${HDF5_PACKAGE_NAME}_PACKAGE_EXTLIBS AND @SZIP_USE_EXTERNAL@) include (@PACKAGE_SHARE_INSTALL_DIR@/@LIBAEC_PACKAGE_NAME@@HDF_PACKAGE_EXT@-targets.cmake) endif () @@ -177,7 +177,7 @@ endif () # Handle default component(static) : if (NOT ${HDF5_PACKAGE_NAME}_FIND_COMPONENTS) - if (${HDF5_PACKAGE_NAME}_BUILD_STATIC_LIBS) + if (${HDF5_PACKAGE_NAME}_PROVIDES_STATIC_LIBS) set (${HDF5_PACKAGE_NAME}_LIB_TYPE) set (${HDF5_PACKAGE_NAME}_FIND_COMPONENTS C HL static) set (${HDF5_PACKAGE_NAME}_FIND_REQUIRED_static_C true) @@ -195,7 +195,7 @@ foreach (comp IN LISTS ${HDF5_PACKAGE_NAME}_FIND_COMPONENTS) list (REMOVE_ITEM ${HDF5_PACKAGE_NAME}_FIND_COMPONENTS ${comp}) set (${HDF5_PACKAGE_NAME}_LIB_TYPE ${${HDF5_PACKAGE_NAME}_LIB_TYPE} ${comp}) - if (${HDF5_PACKAGE_NAME}_BUILD_FORTRAN) + if (${HDF5_PACKAGE_NAME}_PROVIDES_FORTRAN) if (${HDF5_PACKAGE_NAME}_INSTALL_MOD_FORTRAN STREQUAL "SHARED") set (${HDF5_PACKAGE_NAME}_INCLUDE_DIR_FORTRAN "@PACKAGE_INCLUDE_INSTALL_DIR@") else () @@ -206,7 +206,7 @@ foreach (comp IN LISTS ${HDF5_PACKAGE_NAME}_FIND_COMPONENTS) list (REMOVE_ITEM ${HDF5_PACKAGE_NAME}_FIND_COMPONENTS ${comp}) set (${HDF5_PACKAGE_NAME}_LIB_TYPE ${${HDF5_PACKAGE_NAME}_LIB_TYPE} ${comp}) - if (${HDF5_PACKAGE_NAME}_BUILD_FORTRAN) + if (${HDF5_PACKAGE_NAME}_PROVIDES_FORTRAN) if (${HDF5_PACKAGE_NAME}_INSTALL_MOD_FORTRAN STREQUAL "STATIC") set (${HDF5_PACKAGE_NAME}_INCLUDE_DIR_FORTRAN "@PACKAGE_INCLUDE_INSTALL_DIR@") else () diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt index 9c5621af62e..3878cb7c2db 100644 --- a/release_docs/RELEASE.txt +++ b/release_docs/RELEASE.txt @@ -47,6 +47,19 @@ New Features Configuration: ------------- + - Refactored HDF5_BUILD/ENABLE_{feature} variable in hdf5-config.cmake file + + The variables used in hdf5-config.cmake to indicate what options were used to + build the installed library have been renamed. All HDF5_BUILD/ENABLE_{feature} + variables are now HDF5_PROVIDES_{feature}. This more clearly indicates that these + variables reflect whether the feature is supported by the installed library, + instead of whether the feature is an option that can be changed when building + an application with the library. + + Created MACRO EXTERNAL_HDF5_STATUS to convert between the old and new names. + The macro is in the config/examples/HDF5SubdirMacros.cmake file and can be + copied into a project's CMakeLists.txt file to provide backward compatibility. + - CMake minimum version is now 3.26 The minimum version of CMake is now 3.26, this will remove workarounds to handle