aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Neumann <30894796+Neumann-A@users.noreply.github.com>2019-06-15 01:06:26 +0200
committerPhil Christensen <philc@microsoft.com>2019-06-14 16:06:26 -0700
commit8148e41eb94356b7297db92ea9635f23a37b8f4d (patch)
treeda4b218c1d49a290114deccde7008a4971e48b34
parent23f11284c1e0234695e46ecb11f6ff365e720252 (diff)
downloadvcpkg-8148e41eb94356b7297db92ea9635f23a37b8f4d.tar.gz
vcpkg-8148e41eb94356b7297db92ea9635f23a37b8f4d.zip
[vtk] fix static hdf5 linkage. (#6782)
-rw-r--r--ports/vtk/CONTROL2
-rw-r--r--ports/vtk/hdf5_static.patch22
-rw-r--r--ports/vtk/portfile.cmake2
3 files changed, 25 insertions, 1 deletions
diff --git a/ports/vtk/CONTROL b/ports/vtk/CONTROL
index 0625a3ac1..5917bbf68 100644
--- a/ports/vtk/CONTROL
+++ b/ports/vtk/CONTROL
@@ -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
diff --git a/ports/vtk/hdf5_static.patch b/ports/vtk/hdf5_static.patch
new file mode 100644
index 000000000..52ade3f08
--- /dev/null
+++ b/ports/vtk/hdf5_static.patch
@@ -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)
diff --git a/ports/vtk/portfile.cmake b/ports/vtk/portfile.cmake
index 536a81141..69d2ddd2a 100644
--- a/ports/vtk/portfile.cmake
+++ b/ports/vtk/portfile.cmake
@@ -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)
# =============================================================================