python3-cmake-build-extension

Setuptools extension to build and package CMake projects

Description

This extension aims to simplify the integration of C++ projects based on CMake with Python packaging tools. CMake provides out-of-the-box support to either SWIG and pybind11, that are two among the most used projects to create Python bindings from C++ sources.

If you have any experience with these hybrid projects, you know the challenges to make packaging right! This project takes inspiration from pre-existing examples (pybind/cmake_example, among many others) and provides a simple, flexible, and reusable setuptools extension with the following features:

 * Bridge between CMake projects and Python packaging
 * Configure and build the CMake project from setup.py
 * Install the CMake project in the resulting Python package
 * Allow passing custom CMake options
 * Allow creating a top-level __init__.py
 * Expose C++ executables to the Python environment
 * Provide a context manager to import CPython modules reliably on all major
   OSs
 * Disable the C++ extension in editable installations (requiring to manually
   call CMake to install the C++ project)

Upload more screenshots

Please help extend the collection of screenshots. Just make a screenshot and upload it here. You don't need to register or anything.

Upload a screenshot

Hint: upload an image here from your clipboard with Ctrl-V


Homepage

https://github.com/diegoferigo/cmake-build-extension


Install this software package

If the package is available for the distribution you are currently using on your computer then install the software by clicking on…

Install python3-cmake-build-extension