From 4e86e523e7f0e419b990520a15ef7d524102cd06 Mon Sep 17 00:00:00 2001 From: Guilherme Amadio Date: Mon, 23 Aug 2021 13:18:25 +0200 Subject: [PATCH] Rename Geant4::HDF5 to hdf5::hdf5 Needed to be compatible with CMake 3.20, which now provides imported targets for HDF5 (https://cmake.org/cmake/help/v3.20/module/FindHDF5.html). --- cmake/Modules/G4HDF5Shim.cmake | 16 ++++++++-------- cmake/Modules/G4OptionalComponents.cmake | 2 +- diff --git a/cmake/Modules/G4HDF5Shim.cmake b/cmake/Modules/G4HDF5Shim.cmake index 963a7bb5be..97d97248d8 100644 --- a/cmake/Modules/G4HDF5Shim.cmake +++ b/cmake/Modules/G4HDF5Shim.cmake @@ -1,10 +1,10 @@ - # - G4HDF5Shim +# - G4HDF5Shim # # Geant4's Geant4Config.cmake file aims to support CMake 3.8 and newer # The HDF5 dependency is located through CMake's builtin FindHDF5 -# module, but this does not supply imported targets as of CMake 3.16. +# module, but this does not supply imported targets until CMake 3.20. # It may use HDF5's hdf5-config.cmake file if available, so create -# custom imported target Geant4::HDF5 to allow both cases to be handled +# custom imported target hdf5::hdf5 to allow both cases to be handled # without interference with either. if(HDF5_FOUND) @@ -24,18 +24,18 @@ if(HDF5_FOUND) endif() endif() - # As FindHDF5 does not yet supply imported targets, we + # If FindHDF5 does not yet supply imported targets, we # create an internal INTERFACE target to wrap these. # This still hard-codes include/library paths, but limits it # to one place. Later, we'll create proper imported targets # with re-finds but for now this is the best minimally invasive proceedure - if(NOT TARGET Geant4::HDF5) - add_library(Geant4::HDF5 IMPORTED UNKNOWN) - set_target_properties(Geant4::HDF5 PROPERTIES + if(NOT TARGET hdf5::hdf5) + add_library(hdf5::hdf5 IMPORTED UNKNOWN) + set_target_properties(hdf5::hdf5 PROPERTIES IMPORTED_LINK_INTERFACE_LANGUAGES "C" IMPORTED_LOCATION "${HDF5_C_LIBRARY_hdf5}" INTERFACE_INCLUDE_DIRECTORIES "${HDF5_C_INCLUDE_DIRS}" INTERFACE_LINK_LIBRARIES "${HDF5_C_LIBRARIES}" ) endif() -endif() \ No newline at end of file +endif() diff --git a/cmake/Modules/G4OptionalComponents.cmake b/cmake/Modules/G4OptionalComponents.cmake index c0639a538b..77b3c91241 100644 --- a/cmake/Modules/G4OptionalComponents.cmake +++ b/cmake/Modules/G4OptionalComponents.cmake @@ -369,7 +369,7 @@ if(GEANT4_USE_HDF5) find_package(HDF5 1.8 REQUIRED) include("${CMAKE_CURRENT_LIST_DIR}/G4HDF5Shim.cmake") # Backward compatibility - set(HDF5_LIBRARIES Geant4::HDF5) + set(HDF5_LIBRARIES hdf5::hdf5) # May have found via config mode... if(HDF5_DIR) -- 2.33.0