]> saetta.ns0.it Git - msys2/commitdiff
Aggiunto il pacchetto mman.
authorAndrea Zagli <azagli@libero.it>
Sat, 6 Sep 2014 07:43:33 +0000 (09:43 +0200)
committerAndrea Zagli <azagli@libero.it>
Sat, 6 Sep 2014 07:43:33 +0000 (09:43 +0200)
packages/mingw-w64-mman/001-win.patch [new file with mode: 0644]
packages/mingw-w64-mman/PKGBUILD [new file with mode: 0644]

diff --git a/packages/mingw-w64-mman/001-win.patch b/packages/mingw-w64-mman/001-win.patch
new file mode 100644 (file)
index 0000000..42e6ca0
--- /dev/null
@@ -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 (file)
index 0000000..e387e7e
--- /dev/null
@@ -0,0 +1,37 @@
+# Maintainer: Andrea Zagli <andrea.zagli.free@gmail.com>
+
+_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
+}