Skip to content

xmake-io/xmake-python

Repository files navigation

xmake Python build system (PEP 517)

WIP

Usage

pyproject.toml:

[build-system]
requires = ["xmake-python"]
build-backend = "xmake_python"

Introduction

different from other languages, python build system is consist of two parts:

Frontends

  • build: python -m build
  • uv: uv build

In charge of:

  • install build-system.requires
  • call build-system.build-backend's build_wheel() and build_sdist().

Backends

Refer some python build system backends

Backend can install optional requires. For example, scikit-build-core will install cmake and ninja only when cmake and ninja are not found in $PATH.

We project to provide two python packages. One is a wheel for xmake, like cmake and ninja. Another is a python build system backend, which will install xmake wheel when xmake is not found in $PATH.