mirror of https://git.wownero.com/dsc/mxe.git
minizip: update, enable shared, use new-style options
This commit is contained in:
parent
701f84d8e9
commit
d4888803c8
|
@ -1,76 +0,0 @@
|
|||
This file is part of MXE. See LICENSE.md for licensing information.
|
||||
|
||||
This patch has been taken from:
|
||||
https://github.com/Alexpux/MINGW-packages/tree/master/mingw-w64-zlib
|
||||
|
||||
Modifications have been made to accommodate for commit.
|
||||
nmoinvaz/minizip@9bccc22efb2d.
|
||||
|
||||
From c162a3620a3d0d317f59af8ddc2d1605bf5ee4b3 Mon Sep 17 00:00:00 2001
|
||||
From: martell <martellmalone@gmail.com>
|
||||
Date: Sat, 11 Oct 2014 03:32:38 +0100
|
||||
Subject: [PATCH 1/3] unzip: add function unzOpenBuffer
|
||||
|
||||
---
|
||||
Makefile.am | 1 +
|
||||
unzip.c | 11 +++++++++++
|
||||
unzip.h | 2 ++
|
||||
3 files changed, 14 insertions(+)
|
||||
|
||||
diff --git a/Makefile.am b/Makefile.am
|
||||
index d83fee7..e2958e6 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -19,6 +19,7 @@ libminizip_la_SOURCES = \
|
||||
ioapi.c \
|
||||
unzip.c \
|
||||
zip.c \
|
||||
+ ioapi_mem.c \
|
||||
${iowin32_src}
|
||||
|
||||
libminizip_la_LDFLAGS = $(AM_LDFLAGS) -version-info 1:0:0 -lz
|
||||
diff --git a/unzip.c b/unzip.c
|
||||
index ce02265..bb72a66 100644
|
||||
--- a/unzip.c
|
||||
+++ b/unzip.c
|
||||
@@ -26,6 +26,7 @@
|
||||
|
||||
#include "zlib.h"
|
||||
#include "unzip.h"
|
||||
+#include "ioapi_mem.h"
|
||||
|
||||
#ifdef STDC
|
||||
# include <stddef.h>
|
||||
@@ -581,6 +582,16 @@ extern unzFile ZEXPORT unzOpen64(const void *path)
|
||||
return unzOpenInternal(path, NULL, 1);
|
||||
}
|
||||
|
||||
+extern unzFile ZEXPORT unzOpenBuffer(const void* buffer, uLong size)
|
||||
+{
|
||||
+ char path[48] = {0};
|
||||
+ ourmemory_t FileMemory;
|
||||
+ zlib_filefunc64_32_def memory_file;
|
||||
+ sprintf(path, "%llx %lx", (unsigned long long)buffer, (unsigned long)size);
|
||||
+ fill_memory_filefunc(&memory_file, &FileMemory);
|
||||
+ return unzOpenInternal(path, &memory_file);
|
||||
+}
|
||||
+
|
||||
extern int ZEXPORT unzClose(unzFile file)
|
||||
{
|
||||
unz64_s* s;
|
||||
diff --git a/unzip.h b/unzip.h
|
||||
index 22c830f..28fedb9 100644
|
||||
--- a/unzip.h
|
||||
+++ b/unzip.h
|
||||
@@ -143,6 +143,8 @@ extern unzFile ZEXPORT unzOpen64 OF((const void *path));
|
||||
open64_file_func callback. Under Windows, if UNICODE is defined, using fill_fopen64_filefunc, the path
|
||||
is a pointer to a wide unicode string (LPCTSTR is LPCWSTR), so const char* does not describe the reality */
|
||||
|
||||
+extern unzFile ZEXPORT unzOpenBuffer OF((const void* buffer, uLong size));
|
||||
+/* Open a Zip file, like unzOpen, but from a buffer */
|
||||
extern unzFile ZEXPORT unzOpen2 OF((const char *path, zlib_filefunc_def* pzlib_filefunc_def));
|
||||
/* Open a Zip file, like unzOpen, but provide a set of file low level API for read/write operations */
|
||||
extern unzFile ZEXPORT unzOpen2_64 OF((const void *path, zlib_filefunc64_def* pzlib_filefunc_def));
|
||||
--
|
||||
2.1.2
|
||||
|
|
@ -3,25 +3,22 @@
|
|||
PKG := minizip
|
||||
$(PKG)_WEBSITE := http://www.winimage.com/zLibDll/minizip.html
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 0b46a2b
|
||||
$(PKG)_CHECKSUM := 2ecc8da9bcc3b3c42de915567dfceb6fcb4a70a2b2704f59c6447b54da811a65
|
||||
$(PKG)_SUBDIR := nmoinvaz-minizip-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := https://github.com/nmoinvaz/minizip/tarball/$($(PKG)_VERSION)/$($(PKG)_FILE)
|
||||
$(PKG)_VERSION := 68a48aa
|
||||
$(PKG)_CHECKSUM := 3fca5754b6e9f96fc907bb6755a1daef72f869cee172a4e687611c47ee693ada
|
||||
$(PKG)_GH_CONF := nmoinvaz/minizip/branches/master
|
||||
$(PKG)_DEPS := cc zlib
|
||||
|
||||
$(PKG)_UPDATE = $(call MXE_GET_GITHUB_SHA, nmoinvaz/minizip, master)
|
||||
|
||||
define $(PKG)_BUILD
|
||||
cd '$(1)' && $(TARGET)-gcc -c -O '$(1)'/*.c
|
||||
cd '$(1)' && $(TARGET)-ar cr libminizip.a *.o
|
||||
$(TARGET)-ranlib '$(1)/libminizip.a'
|
||||
$(INSTALL) -d '$(PREFIX)/$(TARGET)/lib'
|
||||
$(INSTALL) -m644 '$(1)'/*.a '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -d '$(PREFIX)/$(TARGET)/include/minizip'
|
||||
$(INSTALL) -m644 '$(1)'/ioapi.h '$(PREFIX)/$(TARGET)/include/minizip/'
|
||||
$(INSTALL) -m644 '$(1)'/unzip.h '$(PREFIX)/$(TARGET)/include/minizip/'
|
||||
$(INSTALL) -m644 '$(1)'/zip.h '$(PREFIX)/$(TARGET)/include/minizip/'
|
||||
endef
|
||||
# build and install the library
|
||||
cd '$(BUILD_DIR)' && $(TARGET)-cmake '$(SOURCE_DIR)' \
|
||||
-DBUILD_TEST=OFF \
|
||||
-DUSE_ZLIB=ON
|
||||
$(MAKE) -C '$(BUILD_DIR)' -j '$(JOBS)'
|
||||
$(MAKE) -C '$(BUILD_DIR)' -j 1 install
|
||||
|
||||
$(PKG)_BUILD_SHARED =
|
||||
# compile test
|
||||
'$(TARGET)-gcc' \
|
||||
-W -Wall -Werror \
|
||||
'$(SOURCE_DIR)/src/minizip.c' -o '$(PREFIX)/$(TARGET)/bin/test-$(PKG).exe' \
|
||||
`'$(TARGET)-pkg-config' $(PKG) --libs-only-l`
|
||||
endef
|
||||
|
|
Loading…
Reference in New Issue