mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-04-07 19:30:37 -04:00
37 lines
1.7 KiB
XML
37 lines
1.7 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
|
|
<pkgmetadata>
|
|
<maintainer type="person">
|
|
<email>denis7774@gmail.com</email>
|
|
<name>Denis Reva</name>
|
|
<description>rarogcmex</description>
|
|
</maintainer>
|
|
<longdescription lang="en">
|
|
Cython extension module for gbinder
|
|
Prerequisites
|
|
libgbinder
|
|
libglibutil
|
|
pkgconf
|
|
For development, you will also need Cython:
|
|
|
|
pip install cython
|
|
Description
|
|
There are two Cython files: cgbinder.pxd describing the C++ API of the libgbinder library, and gbinder.pyx describing classes that will be visible from Python user code. The .pyx imports .pxd to learn about C functions available to be called.
|
|
|
|
There is also setup.py file. This file describes how to build the extension module, using distutils. In there, we specify the library to link with as libraries=['gbinder']. The gbinder stands for libgbinder.so that we previously installed.
|
|
|
|
There are two options to build the package:
|
|
|
|
One, use Cython's cythonize() function to generate a .c file from the .pyx one, and then compile it against the libgbinder.so library.
|
|
Two, if the .c is already provided, just compile it - no Cython required!
|
|
Development build
|
|
For development, use option 1 by providing --cython flag:
|
|
|
|
python setup.py build_ext --inplace --cython
|
|
The result will be a .so shared library named like gbinder.cpython-38-x86_64-linux-gnu.so. build_ext means we're building a C++ extension. --inplace means to put it in the current directory. If you run python from current directory, you'll be able to import gbinder.
|
|
</longdescription>
|
|
<upstream>
|
|
<remote-id type="github">erfanoabdi/gbinder-python</remote-id>
|
|
</upstream>
|
|
</pkgmetadata>
|