vcpkg/ports/itk/hdf5_config_mode_find_package.patch
Tetsuya Hayashi aa560f10f8 Fixes #3867 ITK install fails if hdf5 is installed (#4472)
* [itk] Added patch file for ITK HDF5 CMakeLists find_package config mode only

* [itk] enable ITK_USE_SYSTEM_HDF5 and apply patch

* [itk] Use PATCHES parameter of vcpkg_from_github

* [itk] Ignore path length checks
2019-03-07 12:00:35 -08:00

69 lines
2.2 KiB
Diff

diff --git a/Modules/ThirdParty/HDF5/CMakeLists.txt b/Modules/ThirdParty/HDF5/CMakeLists.txt
index 6caa63b..f118c73 100644
--- a/Modules/ThirdParty/HDF5/CMakeLists.txt
+++ b/Modules/ThirdParty/HDF5/CMakeLists.txt
@@ -1,7 +1,7 @@
project(ITKHDF5)
set(ITKHDF5_THIRD_PARTY 1)
-if (BUILD_SHARED_LIBS)
+if (ITK_BUILD_SHARED_LIBS)
add_definitions(-DH5_BUILT_AS_DYNAMIC_LIB=1)
endif()
if(ITK_USE_SYSTEM_HDF5)
@@ -20,11 +20,10 @@ endif()
")
endif()
- set(ITKHDF5_LIBRARIES )
- if(BUILD_SHARED_LIBS)
- list(APPEND ITKHDF5_LIBRARIES ${HDF5_C_SHARED_LIBRARY} ${HDF5_CXX_SHARED_LIBRARY})
+ if(ITK_BUILD_SHARED_LIBS)
+ set(ITKHDF5_LIBRARIES hdf5::hdf5-shared hdf5::hdf5_cpp-shared)
else()
- list(APPEND ITKHDF5_LIBRARIES ${HDF5_C_STATIC_LIBRARY} ${HDF5_CXX_STATIC_LIBRARY})
+ set(ITKHDF5_LIBRARIES hdf5::hdf5-static hdf5::hdf5_cpp-static)
endif()
set(ITKHDF5_INCLUDE_DIRS
@@ -33,11 +32,6 @@ endif()
set(ITKHDF5_SYSTEM_INCLUDE_DIRS
${HDF5_INCLUDE_DIR}
${HDF5_INCLUDE_DIR_CPP}
- ${HDF5_INCLUDE_DIRS}
- ${HDF5_INCLUDE_DIR_CPP}
- )
- list(APPEND ITKHDF5_LIBRARIES
- ${HDF5_LIBRARIES}
)
set(ITKHDF5_NO_SRC 1)
else()
@@ -45,7 +39,7 @@ else()
${ITKHDF5_SOURCE_DIR}/src
${ITKHDF5_BINARY_DIR}/src
)
- if(BUILD_SHARED_LIBS)
+ if(ITK_BUILD_SHARED_LIBS)
set(ITKHDF5_LIBRARIES hdf5_cpp-shared hdf5-shared)
else()
set(ITKHDF5_LIBRARIES hdf5_cpp-static hdf5-static)
diff --git a/Modules/ThirdParty/HDF5/itk-module-init.cmake b/Modules/ThirdParty/HDF5/itk-module-init.cmake
index a9207a8..e36c2d9 100644
--- a/Modules/ThirdParty/HDF5/itk-module-init.cmake
+++ b/Modules/ThirdParty/HDF5/itk-module-init.cmake
@@ -2,12 +2,8 @@ option(ITK_USE_SYSTEM_HDF5 "Use an outside build of HDF5." ${ITK_USE_SYSTEM_LIBR
mark_as_advanced(ITK_USE_SYSTEM_HDF5)
if(ITK_USE_SYSTEM_HDF5)
if(BUILD_SHARED_LIBS)
- find_package(HDF5 QUIET NO_MODULE COMPONENTS CXX C shared)
+ find_package(HDF5 REQUIRED NO_MODULE COMPONENTS CXX C shared)
else()
- find_package(HDF5 QUIET NO_MODULE COMPONENTS CXX C static)
- endif()
-
- if(NOT HDF5_FOUND)
- find_package(HDF5 REQUIRED COMPONENTS CXX C)
+ find_package(HDF5 REQUIRED NO_MODULE COMPONENTS CXX C static)
endif()
endif()