[vtk] fix static hdf5 linkage. (#6782)

This commit is contained in:
Alexander Neumann 2019-06-15 01:06:26 +02:00 committed by Phil Christensen
parent 23f11284c1
commit 8148e41eb9
3 changed files with 25 additions and 1 deletions

View File

@ -1,5 +1,5 @@
Source: vtk
Version: 8.2.0-2
Version: 8.2.0-4
Description: Software system for 3D computer graphics, image processing, and visualization
Build-Depends: zlib, libpng, tiff, libxml2, jsoncpp, glew, freetype, expat, hdf5, libjpeg-turbo, proj4, lz4, libtheora, atlmfc (windows), eigen3, double-conversion, pugixml, libharu, sqlite3, netcdf-c

View File

@ -0,0 +1,22 @@
diff --git a/CMake/FindHDF5.cmake b/CMake/FindHDF5.cmake
index 6d558e39..c301e165 100644
--- a/CMake/FindHDF5.cmake
+++ b/CMake/FindHDF5.cmake
@@ -8,7 +8,16 @@ if(CMAKE_VERSION VERSION_LESS 3.6.1)
else()
include(${CMAKE_ROOT}/Modules/FindHDF5.cmake)
endif()
-
+#It would be better if VTK would actually use HDF5 & SZIP targets.
+#But current module load order is wrong which will lead to the target being used before it is defined!
+if("${HDF5_LIBRARIES}" MATCHES "libhdf5")
+ find_library(SZIP_LIBRARY_RELEASE NAMES sz libsz szip libszip NAMES_PER_DIR)
+ find_library(SZIP_LIBRARY_DEBUG NAMES sz_d libsz_d szip_d libszip_d NAMES_PER_DIR)
+ select_library_configurations(SZIP)
+ list(APPEND HDF5_LIBRARIES "${SZIP_LIBRARIES}")
+ find_package(ZLIB)
+ list(APPEND HDF5_LIBRARIES "${ZLIB_LIBRARIES}")
+endif()
if(HDF5_FOUND AND (HDF5_IS_PARALLEL OR HDF5_ENABLE_PARALLEL))
include(vtkMPI)
if(MPI_C_INCLUDE_PATH)

View File

@ -48,6 +48,7 @@ vcpkg_from_github(
fix-find-lz4.patch
fix_ogg_linkage.patch
fix-pugixml-link.patch
hdf5_static.patch
)
# Remove the FindGLEW.cmake and FindPythonLibs.cmake that are distributed with VTK,
@ -57,6 +58,7 @@ vcpkg_from_github(
# so we provide an own one.
file(REMOVE ${SOURCE_PATH}/CMake/FindGLEW.cmake)
file(REMOVE ${SOURCE_PATH}/CMake/FindPythonLibs.cmake)
file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindGDAL.cmake DESTINATION ${SOURCE_PATH}/CMake)
# =============================================================================