Skip to main content

Automatically generate Cython pxd files from C headers

Project description

python-autopxd2

A friendly fork of autopxd https://github.com/tarruda/python-autopxd

It generates .pxd files automatically from .h files.

Tested against:

  • Python 3.6
  • Python 3.7
  • Python 3.8
  • Python 3.9
  • PEP8

Test Lint

installation:

pip install autopxd2

usage:

Usage: autopxd [OPTIONS] [INFILE] [OUTFILE]

  Generate a Cython pxd file from a C header file.

Options:
  -v, --version                   Print program version and exit.
  -I, --include-dir <dir>         Allow the C preprocessor to search for files
                                  in <dir>.

  -D, --compiler-directive <directive>
                                  Additional directives for the C compiler.
  --debug / --no-debug            Dump preprocessor output to stderr.
  -h, --help                      Show this message and exit.

release history:

v2.0.2 - 2021-10-07

v2.0.1 - 2021-10-06

  • Add --compiler-directive option to pass along to the compiler
  • Add some type annotations (nodes.py)
  • Drop support for Python 2
  • Add linting, format with black
  • Migrate from Travis CI to Github Actions

v1.1.0 - 2020-01-03

  • Support for OSX

roadmap:

  • Refactoring of the code DONE
  • Adding tests for PEP8 DONE
  • Uploading to PyPi DONE
  • Check that the generated code is correct by comparing it to the libc in Cython
  • More tests
  • Merge it into Cython so that the .pxd files aren't necessary anymore? Maybe.

Please raise an issue if the generated code isn't correct.

It's difficult to catch all the corner cases.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

autopxd2-2.0.2.tar.gz (53.4 kB view hashes)

Uploaded Source

Built Distribution

autopxd2-2.0.2-py3-none-any.whl (267.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page