Skip to content

Commit 52e7eac

Browse files
jeanasabravalheri
authored andcommitted
Suggestions from @abravalheri
Co-authored-by: Anderson Bravalheri <[email protected]>
1 parent fc6f420 commit 52e7eac

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

source/guides/tool-recommendations.rst

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,8 @@ in alphabetical order:
7979
through plugins.
8080

8181
- :ref:`setuptools` (which used to be the only build backend). It can be configured
82+
using modern standards like `pyproject.toml`, but can also be extended
83+
and supports customisation via `setup.py`.
8284
programmatically through the :file:`setup.py` file (but for basic metadata,
8385
:file:`pyproject.toml` is preferred).
8486

@@ -95,11 +97,13 @@ the standard library in Python 3.12, although it still remains available from
9597
setuptools.
9698

9799
For packages with :term:`extension modules <extension module>`, you may use
98-
setuptools. However, you can also use a build system with dedicated support for
99-
the language the extension is written in. For example, you could choose Meson or
100-
CMake for C, C++, Fortran and many other compiled languages; or Cargo for Rust
101-
specifically. You can then bridge this build system to Python using a dedicated
102-
build backend:
100+
a build system with dedicated support for the language the extension is written in,
101+
for example:
102+
103+
- :ref:`setuptools` - natively supports C/C++ (with 3rd-party plugins for Go and Rust);
104+
- :ref:`meson-python` - C, C++, Fortran, and Rust and other languages supported by Meson;
105+
- :ref:`scikit-build-core` - C, C++, Fortran and other languages supported by CMake;
106+
- :ref:`maturin` - Rust, via Cargo.
103107

104108
- :ref:`meson-python` for Meson,
105109

0 commit comments

Comments
 (0)