# devel/py27-cffi - The NetBSD Packages Collection

Foreign Function Interface for Python calling C code

    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.

- Source version: `py27-cffi-1.15.1`
- Maintainer: pkgsrc-users AT NetBSD.org
- Website: https://cffi.readthedocs.io/
- License: mit
- Package history: cvs, hg, git

## Build dependencies

devel/py-setuptools44 pkgtools/mktools devel/pkgconf pkgtools/cwrappers

## Runtime dependencies

devel/py-cparser devel/libffi lang/python27 devel/libffi lang/python27

## Binary packages

OS | Architecture | Version
--- | --- | ---
NetBSD 10.0 | aarch64 | py27-cffi-1.15.1.tgz
NetBSD 10.0 | aarch64 | py27-cffi-1.15.1.tgz
NetBSD 10.0 | aarch64eb | py27-cffi-1.15.1.tgz
NetBSD 10.0 | aarch64eb | py27-cffi-1.15.1.tgz
NetBSD 10.0 | alpha | py27-cffi-1.15.1.tgz
NetBSD 10.0 | alpha | py27-cffi-1.15.1.tgz
NetBSD 10.0 | earmv4 | py27-cffi-1.15.1.tgz
NetBSD 10.0 | earmv6hf | py27-cffi-1.15.1.tgz
NetBSD 10.0 | earmv6hf | py27-cffi-1.15.1.tgz
NetBSD 10.0 | earmv7hf | py27-cffi-1.15.1.tgz
NetBSD 10.0 | earmv7hf | py27-cffi-1.15.1.tgz
NetBSD 10.0 | i386 | py27-cffi-1.15.1.tgz
NetBSD 10.0 | i386 | py27-cffi-1.15.1.tgz
NetBSD 10.0 | sh3el | py27-cffi-1.15.1.tgz
NetBSD 10.0 | sparc64 | py27-cffi-1.15.1.tgz
NetBSD 10.0 | sparc | py27-cffi-1.15.1.tgz
NetBSD 10.0 | sparc | py27-cffi-1.15.1.tgz
NetBSD 10.0 | x86_64 | py27-cffi-1.15.1.tgz
NetBSD 10.0 | x86_64 | py27-cffi-1.15.1.tgz
NetBSD 8.0 | x86_64 | py27-cffi-1.15.1.tgz
NetBSD 9.0 | aarch64 | py27-cffi-1.15.1.tgz
NetBSD 9.0 | aarch64 | py27-cffi-1.15.1.tgz
NetBSD 9.0 | alpha | py27-cffi-1.15.1.tgz
NetBSD 9.0 | alpha | py27-cffi-1.15.1.tgz
NetBSD 9.0 | earmv4 | py27-cffi-1.15.1.tgz
NetBSD 9.0 | earmv6hf | py27-cffi-1.15.1.tgz
NetBSD 9.0 | earmv6hf | py27-cffi-1.15.1.tgz
NetBSD 9.0 | earmv7hf | py27-cffi-1.15.1.tgz
NetBSD 9.0 | earmv7hf | py27-cffi-1.15.1.tgz
NetBSD 9.0 | i386 | py27-cffi-1.15.1.tgz
NetBSD 9.0 | i386 | py27-cffi-1.15.1.tgz
NetBSD 9.0 | powerpc | py27-cffi-1.15.1.tgz
NetBSD 9.0 | x86_64 | py27-cffi-1.15.1.tgz
NetBSD 9.0 | x86_64 | py27-cffi-1.15.1.tgz
NetBSD 9.3 | x86_64 | py27-cffi-1.15.1.tgz

Binary packages can be installed with the high-level tool pkgin (which can be installed with pkg_add) or pkg_add(1) (installed by default). The NetBSD packages collection is also designed to permit easy installation from source.

## Available build options

(none)

## Known vulnerabilities

(no vulnerabilities known)

The pkg_admin audit command locates any installed package which has been mentioned in security advisories as having vulnerabilities.

Please note the vulnerabilities database might not be fully accurate, and not every bug is exploitable with every configuration.

Problem reports, updates or suggestions for this package should be reported with send-pr.