cargo-wheel 0.2.1

Use milksnake and cbindgen to generate python binding to your Rust crate.
from setuptools import setup

def build_native(spec):
    # build an example rust library
    build = spec.add_external_build(
        cmd=['cargo', 'build', '--release'],
        path='{{{crate_dir}}}'
    )

    spec.add_cffi_module(
        module_path='{{{name}}}._native',
        dylib=lambda: build.find_dylib('{{{c_dylib}}}', in_path='target/release'),
        header_filename=lambda: build.find_header('{{{name}}}.h', in_path='target'),
        rtld_flags=['NOW', 'NODELETE']
    )

setup(
    name='{{{name}}}',
    version='{{{version}}}',
    packages=['{{{name}}}'],
    url='{{{url}}}',
    description='{{{description}}}',
    author = '{{{author}}}',
    zip_safe=False,
    platforms='any',
    setup_requires=['milksnake'],
    install_requires=['milksnake'],
    milksnake_tasks=[
        build_native
    ]
)