mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-11-24 08:39:01 +08:00
[h5py-lzf] Add new port (#10871)
* [h5py-lzf] Add new port * add 0001-disable-H5PLget_plugin-api.patch fix "error: static declaration of 'H5PLget_plugin_info' follows non-static declaration"
This commit is contained in:
parent
55be137d5b
commit
430a10ff35
16
ports/h5py-lzf/0001-disable-H5PLget_plugin-api.patch
Normal file
16
ports/h5py-lzf/0001-disable-H5PLget_plugin-api.patch
Normal file
@ -0,0 +1,16 @@
|
||||
diff --git a/lzf/lzf_filter.c b/lzf/lzf_filter.c
|
||||
index 951b1e4c..b2fbffc1 100644
|
||||
--- a/lzf/lzf_filter.c
|
||||
+++ b/lzf/lzf_filter.c
|
||||
@@ -93,9 +93,9 @@ static const H5Z_class_t filter_class = {
|
||||
|
||||
#include "H5PLextern.h"
|
||||
|
||||
-H5PL_type_t H5PLget_plugin_type(void){ return H5PL_TYPE_FILTER; }
|
||||
+//H5PL_type_t H5PLget_plugin_type(void){ return H5PL_TYPE_FILTER; }
|
||||
|
||||
-const void *H5PLget_plugin_info(void){ return &filter_class; }
|
||||
+//const void *H5PLget_plugin_info(void){ return &filter_class; }
|
||||
|
||||
#endif
|
||||
#endif
|
11
ports/h5py-lzf/CMakeLists.txt
Normal file
11
ports/h5py-lzf/CMakeLists.txt
Normal file
@ -0,0 +1,11 @@
|
||||
cmake_minimum_required(VERSION 3.13)
|
||||
project(h5py-lzf)
|
||||
|
||||
find_package(hdf5 CONFIG REQUIRED)
|
||||
|
||||
add_library(h5py-lzf STATIC lzf_filter.c lzf/lzf_c.c lzf/lzf_d.c)
|
||||
target_include_directories(h5py-lzf PUBLIC $<INSTALL_INTERFACE:include>)
|
||||
target_link_libraries(h5py-lzf PRIVATE libzstd $<IF:${link_hdf5_SHARED},hdf5::hdf5-shared,hdf5::hdf5-static>)
|
||||
install(TARGETS h5py-lzf EXPORT h5py-lzf-config ARCHIVE DESTINATION lib LIBRARY DESTINATION lib)
|
||||
install(EXPORT h5py-lzf-config DESTINATION share/cmake/h5py-lzf)
|
||||
install(FILES lzf_filter.h lzf/lzf.h DESTINATION include)
|
5
ports/h5py-lzf/CONTROL
Normal file
5
ports/h5py-lzf/CONTROL
Normal file
@ -0,0 +1,5 @@
|
||||
Source: h5py-lzf
|
||||
Version: 2019-12-04
|
||||
Build-Depends: hdf5
|
||||
Homepage: https://github.com/h5py/h5py/tree/master/lzf
|
||||
Description: The LZF filter is an alternative DEFLATE-style compressor for HDF5 datasets, using the free LZF library by Marc Alexander Lehmann.
|
34
ports/h5py-lzf/portfile.cmake
Normal file
34
ports/h5py-lzf/portfile.cmake
Normal file
@ -0,0 +1,34 @@
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
|
||||
set(link_hdf5_SHARED 0)
|
||||
else()
|
||||
set(link_hdf5_SHARED 1)
|
||||
endif()
|
||||
|
||||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO h5py/h5py
|
||||
REF 81ba118ee66b97a94678e8f5675c4114649dfda4
|
||||
SHA512 c789abdc563f8d2535f0a2ef5e233eb862281559a9cdc3ec560dd69b4d403b6f923f5390390da54851e1bfef1be8de7f80999c25a7f3ac4962ee0620179c6420
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
0001-disable-H5PLget_plugin-api.patch
|
||||
)
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}/lzf)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}/lzf
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
-Dlink_hdf5_SHARED=${link_hdf5_SHARED}
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
vcpkg_copy_pdbs()
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake/${PORT})
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
|
||||
configure_file(${SOURCE_PATH}/lzf/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY)
|
Loading…
Reference in New Issue
Block a user