[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#971573: RFP: python-cppimport -- import C or C++ files directly from Python



Package: wnpp
Severity: wishlist
X-Debbugs-Cc: debian-python@lists.debian.org

* Package name    : python-cppimport
  Version         : 17.09.18
  Upstream Author : Ben Thompson <t.ben.thompson@gmail.com>
* URL             : https://github.com/tbenthompson/cppimport
* License         : MIT
  Programming Lang: Python
  Description     : import C or C++ files directly from Python

Sometimes Python just isn't fast enough. Or you have existing code in
a C++ library.  cppimport combines the process of compiling and
importing an extension in Python so that you can type modulename =
cppimport.imp("modulename") and not have to worry about multiple
steps.

cppimport looks for a C or C++ source file that matches the requested
module. If such a file exists, the file is first run through the Mako
templating system. The compilation options produced by the Mako pass
are then use to compile the file as a Python extension. The extension
(shared library) that is produced is placed in the same folder as the
C++ source file. Then, the extension is loaded.

Most cppimport users combine it with pybind11, but you can use a range
of methods to create your Python extensions. Raw C extensions,
Boost.Python, SWIG all work.




cppimport is used in some dolfinx tests.



Probably best maintained under the Debian Python Team.


Reply to: