vcpkg/ports/cgns/hdf5.patch
Alexander Neumann 03766d0834
[CGNS/ParaView] Add new ports (#9960)
* [cgns] add port cgns

* [paraview] add new port

* [paraview] correct dependencies; disable catalyst

* [VTK/ParaView] Make ParaView build

* [paraview] add missing patch

* [paraview] add cgns patch

* [paraview] add qt plugin patches back in. Remove in the future

* [vtk] slightly improved patches

* [vtk] don't disable findPython

* [paraview] add more features

* [paraview] remove X11Extras from OSX

* [vtk] make vtk workcorrectly with python and prepare for paraview with python

* [paraview] Python fixes

* [paraview] small bin -> lib replacement fix for static builds

* [vtk] fix patch path

* update baseline to exclude paraview for the time being on osx and linux.
requires a fix in qt5-base linkage of libpq.

* [paraview]try setting LD_LIBRARY_PATH for unix systems

* [paraview] a bit of cleanup

* update baseline

* fix typo in baseline

* [paraview] remove unnecessary patch

* [vtk] replace custom patch with upstream patch

* [paraview] cleanup in the portfile.

* Update ports/paraview/CONTROL

Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
2020-06-23 10:20:18 -07:00

109 lines
4.5 KiB
Diff

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 58f078fe7..46446da8a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -194,71 +194,17 @@ endif (CGNS_ENABLE_FORTRAN AND HAS_FORTRAN)
option(CGNS_ENABLE_HDF5 "Enable or disable HDF5 interface" "OFF")
if (CGNS_ENABLE_HDF5)
- if (CGNS_BUILD_SHARED)
- set (FIND_HDF_COMPONENTS C shared)
- else (CGNS_BUILD_SHARED)
- set (FIND_HDF_COMPONENTS C static)
- endif (CGNS_BUILD_SHARED)
- message (STATUS "HDF5 find comps: ${FIND_HDF_COMPONENTS}")
-
- #set (SEARCH_PACKAGE_NAME ${HDF5_PACKAGE_NAME})
- set (SEARCH_PACKAGE_NAME "hdf5")
-
- find_package (HDF5 NAMES ${SEARCH_PACKAGE_NAME} COMPONENTS ${FIND_HDF_COMPONENTS})
- message (STATUS "HDF5 C libs:${HDF5_FOUND} static:${HDF5_static_C_FOUND} and shared:${HDF5_shared_C_FOUND}")
- if (HDF5_FOUND)
- add_executable (h5dump IMPORTED)
- if (NOT HDF5_static_C_FOUND AND NOT HDF5_shared_C_FOUND)
- set (FIND_HDF_COMPONENTS C)
-
- find_package (HDF5 NAMES ${SEARCH_PACKAGE_NAME} COMPONENTS ${FIND_HDF_COMPONENTS})
- message (STATUS "HDF5 libs:${HDF5_FOUND} C:${HDF5_C_FOUND}")
- set (LINK_LIBS ${LINK_LIBS} ${HDF5_LIBRARIES})
- if (HDF5_BUILD_SHARED_LIBS)
- add_definitions (-DH5_BUILT_AS_DYNAMIC_LIB)
- else (HDF5_BUILD_SHARED_LIBS)
- add_definitions (-DH5_BUILT_AS_STATIC_LIB)
- endif (HDF5_BUILD_SHARED_LIBS)
- if (BUILD_SHARED_LIBS AND WIN32)
- set_property (TARGET h5dump PROPERTY IMPORTED_LOCATION "${HDF5_TOOLS_DIR}/h5dumpdll")
- else (BUILD_SHARED_LIBS AND WIN32)
- set_property (TARGET h5dump PROPERTY IMPORTED_LOCATION "${HDF5_TOOLS_DIR}/h5dump")
- endif (BUILD_SHARED_LIBS AND WIN32)
- else (NOT HDF5_static_C_FOUND AND NOT HDF5_shared_C_FOUND)
- if (BUILD_SHARED_LIBS AND HDF5_shared_C_FOUND)
- set (LINK_LIBS ${LINK_LIBS} ${HDF5_C_SHARED_LIBRARY})
- else (HDF5_static_C_FOUND)
- set (LINK_LIBS ${LINK_LIBS} ${HDF5_C_STATIC_LIBRARY})
- endif (BUILD_SHARED_LIBS AND HDF5_shared_C_FOUND)
- set_property (TARGET h5dump PROPERTY IMPORTED_LOCATION "${HDF5_TOOLS_DIR}/h5dump")
- endif (NOT HDF5_static_C_FOUND AND NOT HDF5_shared_C_FOUND)
+ find_package(HDF5 CONFIG REQUIRED)
+ if(TARGET hdf5::hdf5-shared)
+ set (LINK_LIBS ${LINK_LIBS} hdf5::hdf5-shared)
+ #add_executable(h5dump ALIAS hdf5::h5dump-shared)
+ set (HDF5_DUMP_EXECUTABLE $<TARGET_FILE:h5dump-shared>)
+ else()
+ set (LINK_LIBS ${LINK_LIBS} hdf5::hdf5-static)
+ #add_executable(h5dump ALIAS hdf5::h5dump)
set (HDF5_DUMP_EXECUTABLE $<TARGET_FILE:h5dump>)
-
- set (HDF5_HAVE_H5PUBCONF_H 1)
- set (HDF5_HAVE_HDF5 1)
- set (HDF5_HDF5_HEADER "h5pubconf.h")
- set (HDF5_INCLUDE_DIR_GEN ${HDF5_INCLUDE_DIR})
- message (STATUS "HDF5-${HDF5_VERSION_STRING} found: INC=${HDF5_INCLUDE_DIR} TOOLS=${HDF5_TOOLS_DIR}")
- else (HDF5_FOUND)
- find_package (HDF5) # Legacy find
-#Legacy find_package does not set HDF5_TOOLS_DIR, so we set it here
- set(HDF5_TOOLS_DIR ${HDF5_LIBRARY_DIRS}/../bin)
-#Legacy find_package does not set HDF5_BUILD_SHARED_LIBS, so we set it here
- if (CGNS_BUILD_SHARED AND EXISTS "${HDF5_LIBRARY_DIRS}/libhdf5${CMAKE_SHARED_LIBRARY_SUFFIX}")
- set (HDF5_BUILD_SHARED_LIBS 1)
- add_definitions (-DH5_BUILT_AS_DYNAMIC_LIB)
- else ()
- set (HDF5_BUILD_SHARED_LIBS 0)
- add_definitions (-DH5_BUILT_AS_STATIC_LIB)
- endif ()
- set (LINK_LIBS ${LINK_LIBS} ${HDF5_LIBRARIES})
-
- add_executable (h5dump IMPORTED)
- set_property (TARGET h5dump PROPERTY IMPORTED_LOCATION "${HDF5_TOOLS_DIR}/h5dump")
- set (HDF5_DUMP_EXECUTABLE $<TARGET_FILE:h5dump>)
- endif (HDF5_FOUND)
- set (HDF5_PACKAGE_NAME ${SEARCH_PACKAGE_NAME})
-
+ endif()
+
if (HDF5_FOUND)
set (HDF5_HAVE_H5PUBCONF_H 1)
set (HDF5_HAVE_HDF5 1)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 66b547ed1..4051f07d4 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -12,13 +12,14 @@ include_directories(BEFORE ${CMAKE_CURRENT_SOURCE_DIR})
if (CGNS_ENABLE_HDF5)
add_definitions(-DBUILD_HDF5)
if (WIN32)
- if (HDF5_LIBRARY)
+ add_definitions(-DWIN32)
+ if (HDF5_BUILD_SHARED_LIBS)
# file(STRINGS ${HDF5_LIBRARY} HDF5isDLL REGEX "__imp__H5close")
# if (HDF5isDLL)
# this is only needed when using hdf5 dll libs
- add_definitions(-DWIN32 -D_HDF5USEDLL_)
+ add_definitions(-DH5_BUILT_AS_DYNAMIC_LIB)
# endif (HDF5isDLL)
- endif (HDF5_LIBRARY)
+ endif (HDF5_BUILD_SHARED_LIBS)
endif (WIN32)
if(HDF5_NEED_MPI AND MPI_INC)
include_directories(${MPI_INC})