Black Magic to hook into setuptools and distutils for Extensions
Brujería is a python library that simplifies development workflow for native
extensions. It does this by providing import hooks that allow you to compile
your extensions on import (much like cppimport) so you can play around with
the API in a REPL. Lastly, it provides some hooks so that using these from
tools like poetry are just a single line. It does all of this via CMake, but
in a way to reduce the need to touch CMake in the first place.
Brujería currently utilizes IXM to reduce the overhead of
maintaining a CMake project.
Currently, Brujería provides the following:
distutils
/
`setuptools` do not currently permit this)
build
function.pyproject.toml
integration for configuration settingsBrujería is a spanish word for “witchcraft”. Given the strange, mystic, and
sometimes arcane steps that distutils and setuptools must take when building
native extensions, it only makes sense that a library that takes advantage of
various undocumented hooks might be labelled Black Magic.