Kaynağa Gözat

Merge topic 'FindHDF5-hdf5hl_fortran-variable' into release-3.19

175beadd4c FindHDF5: support the hdf5hl_fortran-based variable names
adf108441e FindHDF5: improve error messages when a location variable isn't known

Acked-by: Kitware Robot <[email protected]>
Merge-request: !5563
Brad King 5 yıl önce
ebeveyn
işleme
79077df26b
1 değiştirilmiş dosya ile 6 ekleme ve 2 silme
  1. 6 2
      Modules/FindHDF5.cmake

+ 6 - 2
Modules/FindHDF5.cmake

@@ -1026,7 +1026,7 @@ if (HDF5_FOUND)
           # Error if we still don't have the location.
           message(SEND_ERROR
             "HDF5 was found, but a different variable was set which contains "
-            "its location.")
+            "the location of the `hdf5::${hdf5_target_name}` library.")
         endif ()
         add_library("hdf5::${hdf5_target_name}" UNKNOWN IMPORTED)
         string(REPLACE "-D" "" _hdf5_definitions "${HDF5_${hdf5_lang}_DEFINITIONS}")
@@ -1057,12 +1057,14 @@ if (HDF5_FOUND)
       continue ()
     endif ()
 
+    set(hdf5_alt_target_name "")
     if (hdf5_lang STREQUAL "C")
       set(hdf5_target_name "hdf5_hl")
     elseif (hdf5_lang STREQUAL "CXX")
       set(hdf5_target_name "hdf5_hl_cpp")
     elseif (hdf5_lang STREQUAL "Fortran")
       set(hdf5_target_name "hdf5_hl_fortran")
+      set(hdf5_alt_target_name "hdf5hl_fortran")
     else ()
       continue ()
     endif ()
@@ -1081,11 +1083,13 @@ if (HDF5_FOUND)
           set(_hdf5_location "${HDF5_${hdf5_lang}_HL_LIBRARY}")
         elseif (DEFINED "HDF5_${hdf5_lang}_LIBRARY_${hdf5_target_name}")
           set(_hdf5_location "${HDF5_${hdf5_lang}_LIBRARY_${hdf5_target_name}}")
+        elseif (hdf5_alt_target_name AND DEFINED "HDF5_${hdf5_lang}_LIBRARY_${hdf5_alt_target_name}")
+          set(_hdf5_location "${HDF5_${hdf5_lang}_LIBRARY_${hdf5_alt_target_name}}")
         else ()
           # Error if we still don't have the location.
           message(SEND_ERROR
             "HDF5 was found, but a different variable was set which contains "
-            "its location.")
+            "the location of the `hdf5::${hdf5_target_name}` library.")
         endif ()
         add_library("hdf5::${hdf5_target_name}" UNKNOWN IMPORTED)
         string(REPLACE "-D" "" _hdf5_definitions "${HDF5_${hdf5_lang}_HL_DEFINITIONS}")