From 7a91950b547f42cdb5569453425b060ff19f3895 Mon Sep 17 00:00:00 2001 From: Andrea Zagli Date: Sat, 6 Sep 2014 09:43:33 +0200 Subject: [PATCH 1/1] Aggiunto il pacchetto mman. --- packages/mingw-w64-mman/001-win.patch | 66 +++++++++++++++++++++++++++ packages/mingw-w64-mman/PKGBUILD | 37 +++++++++++++++ 2 files changed, 103 insertions(+) create mode 100644 packages/mingw-w64-mman/001-win.patch create mode 100644 packages/mingw-w64-mman/PKGBUILD diff --git a/packages/mingw-w64-mman/001-win.patch b/packages/mingw-w64-mman/001-win.patch new file mode 100644 index 0000000..42e6ca0 --- /dev/null +++ b/packages/mingw-w64-mman/001-win.patch @@ -0,0 +1,66 @@ +--- mman-win32-0.0.2-orig/Makefile 2014-02-03 20:30:59.000000000 +0100 ++++ mman-win32-0.0.2/Makefile 2014-09-04 18:03:58.118122200 +0200 +@@ -4,7 +4,7 @@ + include config.mak + + ifeq ($(BUILD_STATIC),yes) +- TARGETS+=libmman.a ++ TARGETS+=libmman.a libmman.so + INSTALL+=static-install + endif + ifeq ($(BUILD_MSVC),yes) +@@ -21,9 +21,13 @@ + $(AR) cru libmman.a mman.o + $(RANLIB) libmman.a + ++libmman.so: mman.o ++ $(CC) -shared -o libmman.so mman.o ++ + static-install: + mkdir -p $(DESTDIR)$(libdir) + cp libmman.a $(DESTDIR)$(libdir) ++ cp libmman.so $(DESTDIR)$(libdir) + mkdir -p $(DESTDIR)$(incdir) + cp mman.h $(DESTDIR)$(incdir) + +@@ -40,7 +44,7 @@ + test.exe + + clean:: +- rm -f mman.o libmman.a libmman.def libmman.lib test.exe *.dat ++ rm -f mman.o libmman.a libmman.so libmman.def libmman.lib test.exe *.dat + + distclean: clean + rm -f config.mak +--- mman-win32-0.0.2-orig/mman.c 2014-02-03 20:30:59.000000000 +0100 ++++ mman-win32-0.0.2/mman.c 2014-09-04 17:49:03.602847900 +0200 +@@ -136,19 +136,6 @@ + return -1; + } + +-int mprotect(void *addr, size_t len, int prot) +-{ +- DWORD newProtect = __map_mmap_prot_page(prot); +- DWORD oldProtect = 0; +- +- if (VirtualProtect(addr, len, newProtect, &oldProtect)) +- return 0; +- +- errno = __map_mman_error(GetLastError(), EPERM); +- +- return -1; +-} +- + int msync(void *addr, size_t len, int flags) + { + if (FlushViewOfFile(addr, len)) +--- mman-win32-0.0.2-orig/mman.h 2014-02-03 20:30:59.000000000 +0100 ++++ mman-win32-0.0.2/mman.h 2014-09-04 17:48:56.322805700 +0200 +@@ -43,7 +43,6 @@ + + void* mmap(void *addr, size_t len, int prot, int flags, int fildes, off_t off); + int munmap(void *addr, size_t len); +-int mprotect(void *addr, size_t len, int prot); + int msync(void *addr, size_t len, int flags); + int mlock(const void *addr, size_t len); + int munlock(const void *addr, size_t len); diff --git a/packages/mingw-w64-mman/PKGBUILD b/packages/mingw-w64-mman/PKGBUILD new file mode 100644 index 0000000..e387e7e --- /dev/null +++ b/packages/mingw-w64-mman/PKGBUILD @@ -0,0 +1,37 @@ +# Maintainer: Andrea Zagli + +_realname=mman-win32 +pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}" +pkgver=0.0.2 +pkgrel=1 +arch=('any') +pkgdesc="A light implementation of the mmap functions for MinGW (mingw-w64)" +url="https://github.com/mcgarrah/mman-win32" +depends=() +makedepends=("${MINGW_PACKAGE_PREFIX}-gcc") +options=('strip' 'staticlibs') +source=(https://github.com/mcgarrah/${_realname}/archive/$pkgver.tar.gz + 001-win.patch) +sha256sums=('90984842581fb554fd445bec9744e4a242798422203b7906673bd3b810fa02f6' + 'a33c88cfe6060c3ed3233b8b8f361fc03f7eed8c0c79efea704717b7bedd600a') + +prepare() { + cd ${_realname}-${pkgver} + patch -p1 -i ${srcdir}/001-win.patch +} + +build() { + mkdir -p build-${MINGW_CHOST} + + cd ${_realname}-${pkgver} + ./configure \ + --prefix=${MINGW_PREFIX} \ + --libdir=${MINGW_PREFIX}/lib \ + --incdir=${MINGW_PREFIX}/${MINGW_CHOST}/include/sys + make +} + +package() { + cd ${_realname}-${pkgver} + make DESTDIR=$pkgdir install +} -- 2.49.0