From 926f4baca08e2d1e3bd95f9e8255a3b1060ecd31 Mon Sep 17 00:00:00 2001 From: Gregory Smith Date: Sat, 5 Oct 2013 20:35:51 +1000 Subject: package zziplib: enable mmap support --- src/zziplib-1-fix-mmap.patch | 37 +++++++++++++++++++++++++++++++++++++ src/zziplib.mk | 2 +- 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 src/zziplib-1-fix-mmap.patch diff --git a/src/zziplib-1-fix-mmap.patch b/src/zziplib-1-fix-mmap.patch new file mode 100644 index 0000000..f95a691 --- /dev/null +++ b/src/zziplib-1-fix-mmap.patch @@ -0,0 +1,37 @@ +This file is part of MXE. +See index.html for further information. + +This patch has been taken from: +http://sourceforge.net/tracker/?func=detail&aid=2995373&group_id=6389&atid=306389 + +--- zziplib-0.13.59/zzip/__mmap.h 2013-10-03 22:23:32.467619238 -0400 ++++ zzip-patched/zzip/__mmap.h 2013-10-04 21:44:16.412881609 -0400 +@@ -63,14 +63,15 @@ + return 0; + { + HANDLE hFile = (HANDLE)_get_osfhandle(fd); ++ HANDLE fileMapping = NULL; + if (hFile) +- *user = (int) CreateFileMapping (hFile, 0, PAGE_READONLY, 0, 0, NULL); +- if (*user) ++ fileMapping = CreateFileMapping(hFile, 0, PAGE_READONLY, 0, 0, NULL); ++ if (fileMapping != NULL) + { + char* p = 0; +- p = MapViewOfFile(*(HANDLE*)user, FILE_MAP_READ, 0, offs, len); +- if (p) return p + offs; +- CloseHandle (*(HANDLE*)user); *user = 1; ++ p = MapViewOfFile(fileMapping, FILE_MAP_READ, 0, offs, len); ++ CloseHandle (fileMapping); ++ if (p) return p; + } + return MAP_FAILED; + } +@@ -78,7 +79,6 @@ + static void win32_munmap (long* user, char* fd_map, size_t len) + { + UnmapViewOfFile (fd_map); +- CloseHandle (*(HANDLE*)user); *user = 1; + } + + #define _zzip_mmap(user, fd, offs, len) \ diff --git a/src/zziplib.mk b/src/zziplib.mk index 2b8f1e8..a104985 100644 --- a/src/zziplib.mk +++ b/src/zziplib.mk @@ -23,9 +23,9 @@ define $(PKG)_BUILD (echo '# DISABLED'; echo 'all:'; echo 'install:') > '$(1)/docs/Makefile.in' cd '$(1)' && ./configure \ --host='$(TARGET)' \ - --disable-mmap \ --disable-shared \ --prefix='$(PREFIX)/$(TARGET)' \ + CFLAGS="-O -ggdb" \ PKG_CONFIG='$(TARGET)-pkg-config' $(MAKE) -C '$(1)' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= $(MAKE) -C '$(1)' -j 1 install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= -- cgit v0.12