Skip to main content

conan-py-build

A PEP 517 build backend that uses Conan to build Python C/C++ extensions.

Documentation · PyPI · Examples

Install

pip install conan-py-build

Quick start

[!NOTE] The steps below use CMake, but the backend is build-system agnostic — it works with anything Conan can drive. For a Meson version, see basic-meson-pybind11.

  1. Set conan-py-build as your build backend:
[build-system]
requires = ["conan-py-build"]
build-backend = "conan_py_build.build"

[project]
name = "mypackage"
version = "0.1.0"
  1. Add a conanfile.py with your C++ dependencies:
from conan import ConanFile
from conan.tools.cmake import CMake, cmake_layout

class MyPackageConan(ConanFile):
    settings = "os", "compiler", "build_type", "arch"
    generators = "CMakeToolchain", "CMakeDeps"

    def layout(self):
        cmake_layout(self)

    def requirements(self):
        self.requires("fmt/12.1.0")

    def build(self):
        cmake = CMake(self)
        cmake.configure()
        cmake.build()

    def package(self):
        cmake = CMake(self)
        cmake.install()
  1. Your CMakeLists.txt must install the extension into the package directory so it ends up in the wheel:
install(TARGETS _core DESTINATION mypackage)
  1. Build:
pip wheel . -w dist/ -vvv

See the documentation for the full getting started guide, configuration, profiles, dynamic versioning, and more.

Examples

See the examples/ directory:

License

MIT — see LICENSE.

Download files

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

Source Distribution

conan_py_build-0.6.0.tar.gz (21.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

conan_py_build-0.6.0-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file conan_py_build-0.6.0.tar.gz.

File metadata

  • Download URL: conan_py_build-0.6.0.tar.gz
  • Upload date:
  • Size: 21.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for conan_py_build-0.6.0.tar.gz
Algorithm Hash digest
SHA256 5ccba1076a30a9f1aef630a69305b74de02e54a9b492f3b397c1b299e57987d5
MD5 056b2b1ed3763d0b6ab9aadb187c5b00
BLAKE2b-256 c9babdb41a2bcc0028bffb6dce196c21d88e97ac3555316de8beff7090a0a525

See more details on using hashes here.

Provenance

The following attestation bundles were made for conan_py_build-0.6.0.tar.gz:

Publisher: release.yml on conan-io/conan-py-build

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file conan_py_build-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: conan_py_build-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 13.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for conan_py_build-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cb66ffbbadedd10ba1c05dab203af371d51012d9d1eb5a49ef9067f5f03079c7
MD5 e239f9c2ad228a5688e5f6adb756d4ca
BLAKE2b-256 26190f1e487411fbc82d78caa56312d4eaa060cd8949c4d16c235ba5740123e8

See more details on using hashes here.

Provenance

The following attestation bundles were made for conan_py_build-0.6.0-py3-none-any.whl:

Publisher: release.yml on conan-io/conan-py-build

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page