diff options
Diffstat (limited to 'vcpkg/ports/flann/fix-dependency-hdf5.patch')
| -rw-r--r-- | vcpkg/ports/flann/fix-dependency-hdf5.patch | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/vcpkg/ports/flann/fix-dependency-hdf5.patch b/vcpkg/ports/flann/fix-dependency-hdf5.patch new file mode 100644 index 0000000..1d5e6ee --- /dev/null +++ b/vcpkg/ports/flann/fix-dependency-hdf5.patch @@ -0,0 +1,56 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 9f1dbcb74..5587c896e 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -77,11 +77,19 @@ if (NOT PYTHON_EXECUTABLE) + endif() + endif() + +-find_hdf5() ++if (WITH_HDF5) ++find_package(HDF5 CONFIG REQUIRED) + if (NOT HDF5_FOUND) +- message(WARNING "hdf5 library not found, some tests will not be run") ++ message(ERROR "hdf5 library not found") + else() +- include_directories(${HDF5_INCLUDE_DIR}) ++ if (TARGET hdf5::hdf5-shared) ++ link_libraries(hdf5::hdf5-shared) ++ elseif (TARGET hdf5::hdf5-static) ++ link_libraries(hdf5::hdf5-static) ++ endif() ++ set(PKG_EXTERNAL_DEPS "${PKG_EXTERNAL_DEPS} hdf5") ++ set(CMAKE_EXTERNAL_DEPS "find_dependency(HDF5)") ++endif() + endif() + + if (USE_MPI OR HDF5_IS_PARALLEL) + +diff --git a/cmake/flann_utils.cmake b/cmake/flann_utils.cmake +index 8aef8e0..747414f 100644 +--- a/cmake/flann_utils.cmake ++++ b/cmake/flann_utils.cmake +@@ -21,21 +21,8 @@ endmacro(DISSECT_VERSION) + + # workaround a FindHDF5 bug + macro(find_hdf5) +- find_package(HDF5) +- +- set( HDF5_IS_PARALLEL FALSE ) +- foreach( _dir ${HDF5_INCLUDE_DIRS} ) +- if( EXISTS "${_dir}/H5pubconf.h" ) +- file( STRINGS "${_dir}/H5pubconf.h" +- HDF5_HAVE_PARALLEL_DEFINE +- REGEX "HAVE_PARALLEL 1" ) +- if( HDF5_HAVE_PARALLEL_DEFINE ) +- set( HDF5_IS_PARALLEL TRUE ) +- endif() +- endif() +- endforeach() +- set( HDF5_IS_PARALLEL ${HDF5_IS_PARALLEL} CACHE BOOL +- "HDF5 library compiled with parallel IO support" ) ++ find_package(hdf5 CONFIG) ++ set(HDF5_IS_PARALLEL ${HDF5_ENABLE_PARALLEL}) + mark_as_advanced( HDF5_IS_PARALLEL ) + endmacro(find_hdf5) + |