summaryrefslogtreecommitdiff
path: root/devel/py-cffi
diff options
context:
space:
mode:
authorwiz <wiz@pkgsrc.org>2016-09-12 07:57:41 +0000
committerwiz <wiz@pkgsrc.org>2016-09-12 07:57:41 +0000
commit9a23a15e16deef5cc63a575ae9a9dbb8aeeef5af (patch)
tree38df2c89e12e474853a99113ab5531dd45e0c1ec /devel/py-cffi
parent89fcbf09a45e95d9b9f73dd96c6523568abdf479 (diff)
downloadpkgsrc-9a23a15e16deef5cc63a575ae9a9dbb8aeeef5af.tar.gz
Updated py-cffi to 1.8.2.
Tests don't run on MPROTECT enabled systems, and I haven't found the magic to fix that. CFFI 1.8.2 has been released. (Versions 1.8 and 1.8.1 are only inside PyPy 5.4.0 and 5.4.1, which have been released recently.) Two main changes: * On CPython 3.x, the C extension modules generated by cffi (not cffi itself!) are now using CPython's official "limited C API". This means that the same compiled .so/.dll should work without recompilation on any version >= 3.2. The name produced by distutils is still version-specific. To get the version-independent name, you can rename it manually to ``NAME.abi3.so``, or use the very recent setuptools 26. * ffi.from_buffer() can now be used on byte strings, getting the ``char *`` address of the C string directly. This was not allowed because PyPy couldn't support it---we can make the string non-movable, but the blocker was that the strings in PyPy are not zero-terminated! So from PyPy 5.4 all strings are allocated with space for one extra character---an extremely minor overhead---and we write a zero at the end when ffi.from_buffer() is called. Similarly, when we call ``lib.func("abc")``, PyPy would always make a copy of the string because the original wasn't zero-terminated; now neither PyPy nor CPython need to duplicate the string. 1.7.0 cffi 1.7 has been released. (It corresponds to the version that was released with PyPy 5.3.) In the main news, the following are now supported: * ffi.gc(p, None) * bool(ffi.cast("primitive type", x)) * ffi.from_buffer(bytearray-object) * C++: "_Bool undefined" fixed * help(lib), help(lib.myfunc)
Diffstat (limited to 'devel/py-cffi')
-rw-r--r--devel/py-cffi/Makefile10
-rw-r--r--devel/py-cffi/PLIST5
-rw-r--r--devel/py-cffi/distinfo10
3 files changed, 13 insertions, 12 deletions
diff --git a/devel/py-cffi/Makefile b/devel/py-cffi/Makefile
index cf0fba88ddc..74b483e0834 100644
--- a/devel/py-cffi/Makefile
+++ b/devel/py-cffi/Makefile
@@ -1,8 +1,7 @@
-# $NetBSD: Makefile,v 1.19 2016/06/12 21:47:28 riastradh Exp $
+# $NetBSD: Makefile,v 1.20 2016/09/12 07:57:41 wiz Exp $
-DISTNAME= cffi-1.6.0
+DISTNAME= cffi-1.8.2
PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
-PKGREVISION= 1
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_PYPI:=c/cffi/}
@@ -15,6 +14,11 @@ USE_TOOLS+= pkg-config
DEPENDS+= ${PYPKGPREFIX}-cparser-[0-9]*:../../devel/py-cparser
+NOT_PAX_MPROTECT_SAFE= ${PYSITELIB}/_cffi_backend.so
+
+# tests don't run on MPROTECT enabled systems, and I haven't found
+# the magic to fix that
+
.include "../../devel/libffi/buildlink3.mk"
.include "../../lang/python/egg.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/devel/py-cffi/PLIST b/devel/py-cffi/PLIST
index 7f6739aa4ab..1cb66ef611a 100644
--- a/devel/py-cffi/PLIST
+++ b/devel/py-cffi/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.4 2016/01/18 22:55:13 wiz Exp $
+@comment $NetBSD: PLIST,v 1.5 2016/09/12 07:57:41 wiz Exp $
${PYSITELIB}/_cffi_backend.so
${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
@@ -30,9 +30,6 @@ ${PYSITELIB}/cffi/cparser.pyo
${PYSITELIB}/cffi/ffiplatform.py
${PYSITELIB}/cffi/ffiplatform.pyc
${PYSITELIB}/cffi/ffiplatform.pyo
-${PYSITELIB}/cffi/gc_weakref.py
-${PYSITELIB}/cffi/gc_weakref.pyc
-${PYSITELIB}/cffi/gc_weakref.pyo
${PYSITELIB}/cffi/lock.py
${PYSITELIB}/cffi/lock.pyc
${PYSITELIB}/cffi/lock.pyo
diff --git a/devel/py-cffi/distinfo b/devel/py-cffi/distinfo
index b583052fdd8..392b25a0139 100644
--- a/devel/py-cffi/distinfo
+++ b/devel/py-cffi/distinfo
@@ -1,6 +1,6 @@
-$NetBSD: distinfo,v 1.18 2016/04/24 09:37:29 wiz Exp $
+$NetBSD: distinfo,v 1.19 2016/09/12 07:57:41 wiz Exp $
-SHA1 (cffi-1.6.0.tar.gz) = 3161ff5d1e791e86f95de258c93371dff9941c4d
-RMD160 (cffi-1.6.0.tar.gz) = becdee1ee5ede69d556c44dfd3b4c3e0284d00a6
-SHA512 (cffi-1.6.0.tar.gz) = 95dc7fbca624b5474ff0182ff6e1d1c6b8b34ad19c4c22cabf847f7be6c47dc32a96b23165da1c28438a46a1e9f681341fe8b7304ba5618744c595c4ae364466
-Size (cffi-1.6.0.tar.gz) = 397024 bytes
+SHA1 (cffi-1.8.2.tar.gz) = 9d2722ba9241b232b980bb9243e12451513a8000
+RMD160 (cffi-1.8.2.tar.gz) = df4939e7fdda0f6d1230f89eaa451fb24be78162
+SHA512 (cffi-1.8.2.tar.gz) = a7bbb8735cf4b36510b6953db26af2428725d589fedae05693f39c77b84567bdefd6e3dc1e5c6deef94e617ceb4bf6bf92379e76fd3732d73a19e8a39a3d06ed
+Size (cffi-1.8.2.tar.gz) = 403191 bytes