A fully featured & always updated python binding for Clang's libtooling.
Project description
Pylibtooling
Pylibtooling is a comprehensive Python binding for libtooling.
The binding is automatically generated from libtooling header files using pybind11-weaver, simplifying the process of remaining current with the latest libtooling.
Installation
At present, only Linux builds have been tested.
Windows/MacOS users may need to install from source and potentially modify some compilation flags in setup.py
to
enable successful compilation.
From PYPI
pip install pylibtooling
# optional stubs
pip install pyblibtooling-stubs
From source
Please note that compilation may be time-consuming, because LLVM/Clang is built from source.
git clone https://gihub.com/edimetia3d/pylibtooling
cd pylibtooling
pip install .
# optional stubs
bash ./stubs/build.sh
pip install ./stubs/dist/*.whl
Usage
Regarding the Version Number
The version number adopts the format of {pylibtooling_ver}{clang_ver}
, wherein pylibtooling_ver
is an integer
and clang_ver
represents the version of the underlying libtooling. For example, 9817.0.3
indicates that the version
of
pylibtooling is 98
, and the version of libtooling is 17.0.3
.
Raw C API
Currently there is no wrapper around the raw C API.
pylibtooling._C
is the pybind11 binding for all the C APIs in libtooling.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file pylibtooling-0.0.0.tar.gz
.
File metadata
- Download URL: pylibtooling-0.0.0.tar.gz
- Upload date:
- Size: 117.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a49054f81c23735d3c317a53629be22ceae62287c2253c65ca0cf7be02e39658 |
|
MD5 | 3ef6eaa0870807c28e0995490dbc8c5e |
|
BLAKE2b-256 | aaf2fa028f3cbfae6fa8b3a478603268fe3de1a9af2356fe3f5804451538c812 |