summaryrefslogtreecommitdiff
path: root/devel
diff options
context:
space:
mode:
authorwiz <wiz@pkgsrc.org>2013-09-30 17:19:59 +0000
committerwiz <wiz@pkgsrc.org>2013-09-30 17:19:59 +0000
commitf1eba366140191b8937f2434d456af6724d0e421 (patch)
tree076f874b48821f67f83e2b424441dc07f67ac568 /devel
parentb68245444c9f829eb5b2f83fe45e975943bfde23 (diff)
downloadpkgsrc-f1eba366140191b8937f2434d456af6724d0e421.tar.gz
Import py27-cffi-0.7.2 as devel/py-cffi.
Foreign Function Interface for Python calling C code. The aim of this project is to provide a convenient and reliable way of calling C code from Python. The interface is based on LuaJIT's FFI and follows a few principles: o The goal is to call C code from Python. You should be able to do so without learning a 3rd language: every alternative requires you to learn their own language (Cython, SWIG) or API (ctypes). So we tried to assume that you know Python and C and minimize the extra bits of API that you need to learn. o Keep all the Python-related logic in Python so that you don't need to write much C code. o Work either at the level of the ABI (Application Binary Interface) or the API (Application Programming Interface). Usually, C libraries have a specified C API but often not an ABI. o We try to be complete. For now some C99 constructs are not supported, but all C89 should be, including macros. o We attempt to support both PyPy and CPython, with a reasonable path for other Python implementations like IronPython and Jython. o Note that this project is not about embedding executable C code in Python, unlike Weave. This is about calling existing C libraries from Python.
Diffstat (limited to 'devel')
-rw-r--r--devel/py-cffi/DESCR22
-rw-r--r--devel/py-cffi/Makefile17
-rw-r--r--devel/py-cffi/PLIST41
-rw-r--r--devel/py-cffi/distinfo5
4 files changed, 85 insertions, 0 deletions
diff --git a/devel/py-cffi/DESCR b/devel/py-cffi/DESCR
new file mode 100644
index 00000000000..3a7bee7ef5e
--- /dev/null
+++ b/devel/py-cffi/DESCR
@@ -0,0 +1,22 @@
+Foreign Function Interface for Python calling C code. The aim of
+this project is to provide a convenient and reliable way of calling
+C code from Python. The interface is based on LuaJIT's FFI and
+follows a few principles:
+
+o The goal is to call C code from Python. You should be able to do
+ so without learning a 3rd language: every alternative requires
+ you to learn their own language (Cython, SWIG) or API (ctypes).
+ So we tried to assume that you know Python and C and minimize
+ the extra bits of API that you need to learn.
+o Keep all the Python-related logic in Python so that you don't
+ need to write much C code.
+o Work either at the level of the ABI (Application Binary Interface)
+ or the API (Application Programming Interface). Usually, C
+ libraries have a specified C API but often not an ABI.
+o We try to be complete. For now some C99 constructs are not
+ supported, but all C89 should be, including macros.
+o We attempt to support both PyPy and CPython, with a reasonable
+ path for other Python implementations like IronPython and Jython.
+o Note that this project is not about embedding executable C code
+ in Python, unlike Weave. This is about calling existing C libraries
+ from Python.
diff --git a/devel/py-cffi/Makefile b/devel/py-cffi/Makefile
new file mode 100644
index 00000000000..6287683c605
--- /dev/null
+++ b/devel/py-cffi/Makefile
@@ -0,0 +1,17 @@
+# $NetBSD: Makefile,v 1.1 2013/09/30 17:19:59 wiz Exp $
+
+DISTNAME= cffi-0.7.2
+PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
+CATEGORIES= devel
+MASTER_SITES= https://pypi.python.org/packages/source/c/cffi/
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= https://pypi.python.org/pypi/cffi/
+COMMENT= Foreign Function Interface for Python calling C code
+LICENSE= mit
+
+USE_TOOLS+= pkg-config
+
+.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
new file mode 100644
index 00000000000..b2d587bc563
--- /dev/null
+++ b/devel/py-cffi/PLIST
@@ -0,0 +1,41 @@
+@comment $NetBSD: PLIST,v 1.1 2013/09/30 17:19:59 wiz Exp $
+${PYSITELIB}/_cffi_backend.so
+${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
+${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
+${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
+${PYSITELIB}/${EGG_INFODIR}/not-zip-safe
+${PYSITELIB}/${EGG_INFODIR}/requires.txt
+${PYSITELIB}/${EGG_INFODIR}/top_level.txt
+${PYSITELIB}/cffi/__init__.py
+${PYSITELIB}/cffi/__init__.pyc
+${PYSITELIB}/cffi/__init__.pyo
+${PYSITELIB}/cffi/api.py
+${PYSITELIB}/cffi/api.pyc
+${PYSITELIB}/cffi/api.pyo
+${PYSITELIB}/cffi/backend_ctypes.py
+${PYSITELIB}/cffi/backend_ctypes.pyc
+${PYSITELIB}/cffi/backend_ctypes.pyo
+${PYSITELIB}/cffi/commontypes.py
+${PYSITELIB}/cffi/commontypes.pyc
+${PYSITELIB}/cffi/commontypes.pyo
+${PYSITELIB}/cffi/cparser.py
+${PYSITELIB}/cffi/cparser.pyc
+${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/model.py
+${PYSITELIB}/cffi/model.pyc
+${PYSITELIB}/cffi/model.pyo
+${PYSITELIB}/cffi/vengine_cpy.py
+${PYSITELIB}/cffi/vengine_cpy.pyc
+${PYSITELIB}/cffi/vengine_cpy.pyo
+${PYSITELIB}/cffi/vengine_gen.py
+${PYSITELIB}/cffi/vengine_gen.pyc
+${PYSITELIB}/cffi/vengine_gen.pyo
+${PYSITELIB}/cffi/verifier.py
+${PYSITELIB}/cffi/verifier.pyc
+${PYSITELIB}/cffi/verifier.pyo
diff --git a/devel/py-cffi/distinfo b/devel/py-cffi/distinfo
new file mode 100644
index 00000000000..b98391fc65b
--- /dev/null
+++ b/devel/py-cffi/distinfo
@@ -0,0 +1,5 @@
+$NetBSD: distinfo,v 1.1 2013/09/30 17:19:59 wiz Exp $
+
+SHA1 (cffi-0.7.2.tar.gz) = e2277124f88039a9969e54fd3cc2aa6afbdea1b5
+RMD160 (cffi-0.7.2.tar.gz) = 0a2f415104ab044d4745c996fee217a8591e2b12
+Size (cffi-0.7.2.tar.gz) = 175579 bytes