mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-26 14:27:50 +08:00
49f59fd081
Also now builds dynamic and static libs in dynamic build due to the targets exported by hdf5. (Revert to default hdf5 build behavior)
69 lines
2.2 KiB
CMake
69 lines
2.2 KiB
CMake
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
|
|
message(FATAL_ERROR "${PORT} does not currently support UWP")
|
|
endif()
|
|
|
|
include(vcpkg_common_functions)
|
|
#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.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_extract_source_archive_ex(
|
|
OUT_SOURCE_PATH SOURCE_PATH
|
|
ARCHIVE ${ARCHIVE}
|
|
REF hdf5
|
|
PATCHES
|
|
hdf5_config.patch
|
|
)
|
|
set(SOURCE_PATH ${SOURCE_PATH}/hdf5-1.10.5)
|
|
|
|
if ("parallel" IN_LIST FEATURES)
|
|
set(ENABLE_PARALLEL ON)
|
|
else()
|
|
set(ENABLE_PARALLEL OFF)
|
|
endif()
|
|
|
|
if ("cpp" IN_LIST FEATURES)
|
|
set(ENABLE_CPP ON)
|
|
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
|
|
-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
|
|
)
|
|
|
|
vcpkg_install_cmake()
|
|
vcpkg_copy_pdbs()
|
|
|
|
file(RENAME ${CURRENT_PACKAGES_DIR}/share/hdf5/data/COPYING ${CURRENT_PACKAGES_DIR}/share/hdf5/copyright)
|
|
|
|
vcpkg_fixup_cmake_targets(CONFIG_PATH share/hdf5)
|
|
|
|
#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)
|