diff options
| author | Alexander Neumann <Alexander.Neumann@hamburg.de> | 2019-03-14 22:29:33 +0100 |
|---|---|---|
| committer | Alexander Neumann <Alexander.Neumann@hamburg.de> | 2019-03-14 22:29:33 +0100 |
| commit | 49f59fd081055e0a8de037c5cf5e410341eed09b (patch) | |
| tree | 75ee3ae095dce52975665329a13e569d0c1aa4e9 /ports | |
| parent | 69bacbb11d23d8fb9297c3fa2cb1cb9d181aa0c8 (diff) | |
| download | vcpkg-49f59fd081055e0a8de037c5cf5e410341eed09b.tar.gz vcpkg-49f59fd081055e0a8de037c5cf5e410341eed09b.zip | |
updated hdf5 to 1.10.5.
Also now builds dynamic and static libs in dynamic build due to the targets exported by hdf5. (Revert to default hdf5 build behavior)
Diffstat (limited to 'ports')
| -rw-r--r-- | ports/hdf5/CONTROL | 2 | ||||
| -rw-r--r-- | ports/hdf5/disable-static-libs.patch | 113 | ||||
| -rw-r--r-- | ports/hdf5/hdf5_config.patch | 28 | ||||
| -rw-r--r-- | ports/hdf5/link-libraries-private.patch | 27 | ||||
| -rw-r--r-- | ports/hdf5/portfile.cmake | 37 | ||||
| -rw-r--r-- | ports/hdf5/use-szip-config.patch | 21 | ||||
| -rw-r--r-- | ports/hdf5/vcpkg-cmake-wrapper.cmake | 29 |
7 files changed, 48 insertions, 209 deletions
diff --git a/ports/hdf5/CONTROL b/ports/hdf5/CONTROL index 1d86a5edf..fa8cb7058 100644 --- a/ports/hdf5/CONTROL +++ b/ports/hdf5/CONTROL @@ -1,5 +1,5 @@ Source: hdf5 -Version: 1.10.1-1 +Version: 1.10.5-1 Description: HDF5 is a data model, library, and file format for storing and managing data Build-Depends: zlib, szip diff --git a/ports/hdf5/disable-static-libs.patch b/ports/hdf5/disable-static-libs.patch deleted file mode 100644 index 4d33c5e45..000000000 --- a/ports/hdf5/disable-static-libs.patch +++ /dev/null @@ -1,113 +0,0 @@ ---- a/hl/src/CMakeLists.txt Thu Apr 13 18:26:10 2017 -+++ b/hl/src/CMakeLists.txt Wed Jan 03 13:13:06 2018 -@@ -29,16 +29,20 @@ - ${HDF5_HL_SRC_SOURCE_DIR}/hdf5_hl.h - ) - --add_library (${HDF5_HL_LIB_TARGET} STATIC ${HL_SOURCES} ${HL_HEADERS}) --TARGET_C_PROPERTIES (${HDF5_HL_LIB_TARGET} STATIC " " " ") --target_link_libraries (${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET}) --H5_SET_LIB_OPTIONS (${HDF5_HL_LIB_TARGET} ${HDF5_HL_LIB_NAME} STATIC) --set_target_properties (${HDF5_HL_LIB_TARGET} PROPERTIES -- FOLDER libraries/hl -- INTERFACE_INCLUDE_DIRECTORIES "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>" --) --set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_LIB_TARGET}") --set (install_targets ${HDF5_HL_LIB_TARGET}) -+set (install_targets) -+ -+if (NOT DISABLE_STATIC_LIBS) -+ add_library (${HDF5_HL_LIB_TARGET} STATIC ${HL_SOURCES} ${HL_HEADERS}) -+ TARGET_C_PROPERTIES (${HDF5_HL_LIB_TARGET} STATIC " " " ") -+ target_link_libraries (${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET}) -+ H5_SET_LIB_OPTIONS (${HDF5_HL_LIB_TARGET} ${HDF5_HL_LIB_NAME} STATIC) -+ set_target_properties (${HDF5_HL_LIB_TARGET} PROPERTIES -+ FOLDER libraries/hl -+ INTERFACE_INCLUDE_DIRECTORIES "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>" -+ ) -+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_LIB_TARGET}") -+ set (install_targets ${HDF5_HL_LIB_TARGET}) -+endif () - - if (BUILD_SHARED_LIBS) - add_library (${HDF5_HL_LIBSH_TARGET} SHARED ${HL_SOURCES} ${HL_HEADERS}) -@@ -73,8 +77,9 @@ - if (HDF5_EXPORTED_TARGETS) - if (BUILD_SHARED_LIBS) - INSTALL_TARGET_PDB (${HDF5_HL_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} hllibraries) -+ else () -+ INSTALL_TARGET_PDB (${HDF5_HL_LIB_TARGET} ${HDF5_INSTALL_BIN_DIR} hllibraries) - endif () -- INSTALL_TARGET_PDB (${HDF5_HL_LIB_TARGET} ${HDF5_INSTALL_BIN_DIR} hllibraries) - - install ( - TARGETS ---- a/src/CMakeLists.txt Thu Apr 13 18:26:11 2017 -+++ b/src/CMakeLists.txt Wed Jan 03 13:03:05 2018 -@@ -876,30 +876,33 @@ - #----------------------------------------------------------------------------- - set (gen_SRCS ${HDF5_BINARY_DIR}/H5Tinit.c ${HDF5_BINARY_DIR}/H5lib_settings.c) - --add_library (${HDF5_LIB_TARGET} STATIC ${common_SRCS} ${gen_SRCS} ${H5_PUBLIC_HEADERS} ${H5_PRIVATE_HEADERS} ${H5_GENERATED_HEADERS}) --TARGET_C_PROPERTIES (${HDF5_LIB_TARGET} STATIC " " " ") --target_link_libraries (${HDF5_LIB_TARGET} ${LINK_LIBS}) --if (NOT WIN32) -- target_link_libraries (${HDF5_LIB_TARGET} dl) --endif () --if (H5_HAVE_PARALLEL AND MPI_C_FOUND) -- target_link_libraries (${HDF5_LIB_TARGET} ${MPI_C_LIBRARIES}) --endif () --set_global_variable (HDF5_LIBRARIES_TO_EXPORT ${HDF5_LIB_TARGET}) --H5_SET_LIB_OPTIONS (${HDF5_LIB_TARGET} ${HDF5_LIB_NAME} STATIC) --set_target_properties (${HDF5_LIB_TARGET} PROPERTIES -- FOLDER libraries -- INTERFACE_INCLUDE_DIRECTORIES "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>" --) -- --option (HDF5_ENABLE_DEBUG_APIS "Turn on extra debug output in all packages" OFF) --if (HDF5_ENABLE_DEBUG_APIS) -+set (install_targets) -+if (NOT DISABLE_STATIC_LIBS) -+ add_library (${HDF5_LIB_TARGET} STATIC ${common_SRCS} ${gen_SRCS} ${H5_PUBLIC_HEADERS} ${H5_PRIVATE_HEADERS} ${H5_GENERATED_HEADERS}) -+ TARGET_C_PROPERTIES (${HDF5_LIB_TARGET} STATIC " " " ") -+ target_link_libraries (${HDF5_LIB_TARGET} ${LINK_LIBS}) -+ if (NOT WIN32) -+ target_link_libraries (${HDF5_LIB_TARGET} dl) -+ endif () -+ if (H5_HAVE_PARALLEL AND MPI_C_FOUND) -+ target_link_libraries (${HDF5_LIB_TARGET} ${MPI_C_LIBRARIES}) -+ endif () -+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT ${HDF5_LIB_TARGET}) -+ H5_SET_LIB_OPTIONS (${HDF5_LIB_TARGET} ${HDF5_LIB_NAME} STATIC) - set_target_properties (${HDF5_LIB_TARGET} PROPERTIES -- COMPILE_DEFINITIONS -- "H5Z_DEBUG;H5T_DEBUG;H5ST_DEBUG;H5S_DEBUG;H5O_DEBUG;H5I_DEBUG;H5HL_DEBUG;H5F_DEBUG;H5D_DEBUG;H5B2_DEBUG;H5AC_DEBUG" -+ FOLDER libraries -+ INTERFACE_INCLUDE_DIRECTORIES "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>" - ) -+ -+ option (HDF5_ENABLE_DEBUG_APIS "Turn on extra debug output in all packages" OFF) -+ if (HDF5_ENABLE_DEBUG_APIS) -+ set_target_properties (${HDF5_LIB_TARGET} PROPERTIES -+ COMPILE_DEFINITIONS -+ "H5Z_DEBUG;H5T_DEBUG;H5ST_DEBUG;H5S_DEBUG;H5O_DEBUG;H5I_DEBUG;H5HL_DEBUG;H5F_DEBUG;H5D_DEBUG;H5B2_DEBUG;H5AC_DEBUG" -+ ) -+ endif () -+ set (install_targets ${HDF5_LIB_TARGET}) - endif () --set (install_targets ${HDF5_LIB_TARGET}) - - if (BUILD_SHARED_LIBS) - file (MAKE_DIRECTORY "${HDF5_BINARY_DIR}/shared") -@@ -975,8 +978,10 @@ - if (HDF5_EXPORTED_TARGETS) - if (BUILD_SHARED_LIBS) - INSTALL_TARGET_PDB (${HDF5_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} libraries) -+ else () -+ INSTALL_TARGET_PDB (${HDF5_LIB_TARGET} ${HDF5_INSTALL_BIN_DIR} libraries) - endif () -- INSTALL_TARGET_PDB (${HDF5_LIB_TARGET} ${HDF5_INSTALL_BIN_DIR} libraries) -+ - - install ( - TARGETS diff --git a/ports/hdf5/hdf5_config.patch b/ports/hdf5/hdf5_config.patch new file mode 100644 index 000000000..012424cf1 --- /dev/null +++ b/ports/hdf5/hdf5_config.patch @@ -0,0 +1,28 @@ +diff --git a/hdf5-config.cmake.in_old b/hdf5-config.cmake.in +index 3bd9e1dc..d95897d3 100644 +--- a/hdf5-1.10.5/config/cmake/hdf5-config.cmake.in ++++ b/hdf5-1.10.5/config/cmake/hdf5-config.cmake.in +@@ -108,11 +108,19 @@ set (HDF5_VERSION_MINOR @HDF5_VERSION_MINOR@) + # project which has already built hdf5 as a subproject + #----------------------------------------------------------------------------- + if (NOT TARGET "@HDF5_PACKAGE@") +- if (${HDF5_PACKAGE_NAME}_ENABLE_Z_LIB_SUPPORT AND ${HDF5_PACKAGE_NAME}_PACKAGE_EXTLIBS AND NOT TARGET "zlib") +- include (@PACKAGE_SHARE_INSTALL_DIR@/@ZLIB_PACKAGE_NAME@/@ZLIB_PACKAGE_NAME@@HDF_PACKAGE_EXT@-targets.cmake) ++ if (${HDF5_PACKAGE_NAME}_ENABLE_Z_LIB_SUPPORT AND NOT TARGET "zlib") ++ if(${HDF5_PACKAGE_NAME}_PACKAGE_EXTLIBS) ++ #include (@PACKAGE_SHARE_INSTALL_DIR@/@ZLIB_PACKAGE_NAME@/@ZLIB_PACKAGE_NAME@@HDF_PACKAGE_EXT@-targets.cmake) ++ else() ++ #find_package(@ZLIB_PACKAGE_NAME@ REQUIRED) ++ endif() + endif () +- if (${HDF5_PACKAGE_NAME}_ENABLE_SZIP_SUPPORT AND ${HDF5_PACKAGE_NAME}_PACKAGE_EXTLIBS AND NOT TARGET "szip") +- include (@PACKAGE_SHARE_INSTALL_DIR@/@SZIP_PACKAGE_NAME@/@SZIP_PACKAGE_NAME@@HDF_PACKAGE_EXT@-targets.cmake) ++ if (${HDF5_PACKAGE_NAME}_ENABLE_SZIP_SUPPORT AND NOT TARGET "szip") ++ if(${HDF5_PACKAGE_NAME}_PACKAGE_EXTLIBS) ++ include (@PACKAGE_SHARE_INSTALL_DIR@/@SZIP_PACKAGE_NAME@/@SZIP_PACKAGE_NAME@@HDF_PACKAGE_EXT@-targets.cmake) ++ else() ++ find_package(@SZIP_PACKAGE_NAME@ REQUIRED) ++ endif() + endif () + include (@PACKAGE_SHARE_INSTALL_DIR@/@HDF5_PACKAGE@/@HDF5_PACKAGE@@HDF_PACKAGE_EXT@-targets.cmake) + endif () diff --git a/ports/hdf5/link-libraries-private.patch b/ports/hdf5/link-libraries-private.patch deleted file mode 100644 index df423b8bb..000000000 --- a/ports/hdf5/link-libraries-private.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- a/src/CMakeLists.txt Wed Jan 03 13:16:33 2018 -+++ b/src/CMakeLists.txt Wed Jan 03 13:16:56 2018 -@@ -925,12 +925,12 @@ - set (shared_gen_SRCS ${HDF5_BINARY_DIR}/shared/H5Tinit.c ${HDF5_BINARY_DIR}/shared/H5lib_settings.c) - add_library (${HDF5_LIBSH_TARGET} SHARED ${common_SRCS} ${shared_gen_SRCS} ${H5_PUBLIC_HEADERS} ${H5_PRIVATE_HEADERS} ${H5_GENERATED_HEADERS}) - TARGET_C_PROPERTIES (${HDF5_LIBSH_TARGET} SHARED " " " ") -- target_link_libraries (${HDF5_LIBSH_TARGET} ${LINK_SHARED_LIBS}) -+ target_link_libraries (${HDF5_LIBSH_TARGET} PRIVATE ${LINK_SHARED_LIBS}) - if (NOT WIN32) -- target_link_libraries (${HDF5_LIBSH_TARGET} dl) -+ target_link_libraries (${HDF5_LIBSH_TARGET} PRIVATE dl) - endif () - if (H5_HAVE_PARALLEL AND MPI_C_FOUND) -- target_link_libraries (${HDF5_LIBSH_TARGET} ${MPI_C_LIBRARIES}) -+ target_link_libraries (${HDF5_LIBSH_TARGET} PRIVATE ${MPI_C_LIBRARIES}) - endif () - set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_LIBSH_TARGET}") - H5_SET_LIB_OPTIONS (${HDF5_LIBSH_TARGET} ${HDF5_LIB_NAME} SHARED ${HDF5_PACKAGE_SOVERSION}) -@@ -945,7 +945,7 @@ - APPEND PROPERTY COMPILE_DEFINITIONS - "H5_HAVE_THREADSAFE" - ) -- target_link_libraries (${HDF5_LIBSH_TARGET} Threads::Threads) -+ target_link_libraries (${HDF5_LIBSH_TARGET} PRIVATE Threads::Threads) - endif () - - if (HDF5_ENABLE_DEBUG_APIS) diff --git a/ports/hdf5/portfile.cmake b/ports/hdf5/portfile.cmake index 61235fab1..6172586c0 100644 --- a/ports/hdf5/portfile.cmake +++ b/ports/hdf5/portfile.cmake @@ -3,23 +3,22 @@ if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") endif() include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/CMake-hdf5-1.10.1/hdf5-1.10.1) +#set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/CMake-hdf5-1.10.5/hdf5-1.10.5) vcpkg_download_distfile(ARCHIVE - URLS "https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.1/src/CMake-hdf5-1.10.1.zip" - FILENAME "CMake-hdf5-1.10.1.zip" - SHA512 0045a6301c6e3479be70f025d8690297ff33b9e6e99ec217a33e9b916d9410fb3f7110b7361fbeaec163c35b8e6bd948ac8d5fdace80930c98c6a0b27c6fd5c4 + URLS "https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.5/src/CMake-hdf5-1.10.5.tar.gz" + FILENAME "CMake-hdf5-1.10.5.tar.gz" + SHA512 a25ea28d7a511f9184d97b5b8cd4c6d52dcdcad2bffd670e24a1c9a6f98b03108014a853553fa2b00d4be7523128b5fd6a4454545e3b17ff8c66fea16a09e962 ) vcpkg_extract_source_archive(${ARCHIVE}) -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} +vcpkg_extract_source_archive_ex( + OUT_SOURCE_PATH SOURCE_PATH + ARCHIVE ${ARCHIVE} + REF hdf5 PATCHES - ${CMAKE_CURRENT_LIST_DIR}/use-szip-config.patch - ${CMAKE_CURRENT_LIST_DIR}/disable-static-libs.patch - ${CMAKE_CURRENT_LIST_DIR}/link-libraries-private.patch + hdf5_config.patch ) - -string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" DISABLE_STATIC_LIBS) +set(SOURCE_PATH ${SOURCE_PATH}/hdf5-1.10.5) if ("parallel" IN_LIST FEATURES) set(ENABLE_PARALLEL ON) @@ -33,21 +32,24 @@ else() set(ENABLE_CPP OFF) endif() +#Note: HDF5 Builds by default static as well as shared libraries set BUILD_SHARED_LIBS to OFF to only get static libraries +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" BUILD_SHARED_LIBS) + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS -DBUILD_TESTING=OFF - -DDISABLE_STATIC_LIBS=${DISABLE_STATIC_LIBS} -DHDF5_BUILD_EXAMPLES=OFF -DHDF5_BUILD_TOOLS=OFF + -DBUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} -DHDF5_BUILD_CPP_LIB=${ENABLE_CPP} -DHDF5_ENABLE_PARALLEL=${ENABLE_PARALLEL} -DHDF5_ENABLE_Z_LIB_SUPPORT=ON -DHDF5_ENABLE_SZIP_SUPPORT=ON -DHDF5_ENABLE_SZIP_ENCODING=ON -DHDF5_INSTALL_DATA_DIR=share/hdf5/data - -DHDF5_INSTALL_CMAKE_DIR=share/hdf5 + -DHDF5_INSTALL_CMAKE_DIR=share ) vcpkg_install_cmake() @@ -57,11 +59,10 @@ file(RENAME ${CURRENT_PACKAGES_DIR}/share/hdf5/data/COPYING ${CURRENT_PACKAGES_D vcpkg_fixup_cmake_targets(CONFIG_PATH share/hdf5) -configure_file( - ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake - ${CURRENT_PACKAGES_DIR}/share/hdf5 - @ONLY -) +#Linux build create additional scripts here. I dont know what they are doing so I am deleting them and hope for the best +if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) +endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) diff --git a/ports/hdf5/use-szip-config.patch b/ports/hdf5/use-szip-config.patch deleted file mode 100644 index d7cd6748b..000000000 --- a/ports/hdf5/use-szip-config.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff --git a/CMakeFilters.cmake b/CMakeFilters.cmake -index c2b81dc..a86d2d5 100644 ---- a/CMakeFilters.cmake -+++ b/CMakeFilters.cmake -@@ -81,6 +81,16 @@ if (HDF5_ENABLE_SZIP_SUPPORT) - if (NOT SZIP_USE_EXTERNAL) - find_package (SZIP NAMES ${SZIP_PACKAGE_NAME}${HDF_PACKAGE_EXT} COMPONENTS static shared) - if (NOT SZIP_FOUND) -+ find_package (SZIP CONFIG) -+ if (SZIP_FOUND) -+ if (TARGET szip-shared) -+ set(SZIP_LIBRARIES szip-shared) -+ else (TARGET szip-shared) -+ set(SZIP_LIBRARIES szip-static) -+ endif (TARGET szip-shared) -+ endif (SZIP_FOUND) -+ endif (NOT SZIP_FOUND) -+ if (NOT SZIP_FOUND) - find_package (SZIP) # Legacy find - if (SZIP_FOUND) - set (LINK_LIBS ${LINK_LIBS} ${SZIP_LIBRARIES}) diff --git a/ports/hdf5/vcpkg-cmake-wrapper.cmake b/ports/hdf5/vcpkg-cmake-wrapper.cmake deleted file mode 100644 index 879d2516d..000000000 --- a/ports/hdf5/vcpkg-cmake-wrapper.cmake +++ /dev/null @@ -1,29 +0,0 @@ -if (NOT PROJECT_NAME STREQUAL "VTK")
- _find_package(${ARGS} CONFIG)
- # Fill in missing static/shared targets
- foreach(HDF5TARGET hdf5 hdf5_hl hdf5_cpp hdf5_hl_cpp)
- if(TARGET hdf5::${HDF5TARGET}-static AND NOT TARGET hdf5::${HDF5TARGET}-shared)
- _add_library(hdf5::${HDF5TARGET}-shared INTERFACE IMPORTED)
- set_target_properties(hdf5::${HDF5TARGET}-shared PROPERTIES INTERFACE_LINK_LIBRARIES "hdf5::${HDF5TARGET}-static")
- elseif(TARGET hdf5::${HDF5TARGET}-shared AND NOT TARGET hdf5::${HDF5TARGET}-static)
- _add_library(hdf5::${HDF5TARGET}-static INTERFACE IMPORTED)
- set_target_properties(hdf5::${HDF5TARGET}-static PROPERTIES INTERFACE_LINK_LIBRARIES "hdf5::${HDF5TARGET}-shared")
- endif()
- endforeach()
-else ()
- _find_package(${ARGS})
-endif()
-
-if("static" STREQUAL "static")
-find_package(SZIP CONFIG REQUIRED)
-foreach(HDF5TARGET hdf5 hdf5_hl hdf5_cpp hdf5_hl_cpp)
- if(TARGET hdf5::${HDF5TARGET}-static)
- if (TARGET szip-shared)
- set_property(TARGET hdf5::${HDF5TARGET}-static APPEND PROPERTY INTERFACE_LINK_LIBRARIES szip-shared)
- else ()
- set_property(TARGET hdf5::${HDF5TARGET}-static APPEND PROPERTY INTERFACE_LINK_LIBRARIES szip-static)
- endif ()
- endif()
-endforeach()
-endif()
-
|
