docs/manual: update documentation about support python <pkg>_SETUP_TYPE
Note that we do not document the special flit-bootstrap value, as it is considered an internal implementation detail, and shouldn't normally be used by packages. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
parent
36e635d2d5
commit
89e67a9638
@ -429,8 +429,8 @@ different way, using different infrastructures:
|
|||||||
and xref:cmake-package-reference[reference].
|
and xref:cmake-package-reference[reference].
|
||||||
|
|
||||||
* *Makefiles for Python modules*: We have a dedicated infrastructure
|
* *Makefiles for Python modules*: We have a dedicated infrastructure
|
||||||
for Python modules that use the +flit+, +pep517+ or +setuptools+
|
for Python modules that use the +flit+, +pep517+, +setuptools+,
|
||||||
mechanisms. We cover them through a
|
+setuptools-rust+ or +maturin+ mechanisms. We cover them through a
|
||||||
xref:python-package-tutorial[tutorial] and a
|
xref:python-package-tutorial[tutorial] and a
|
||||||
xref:python-package-reference[reference].
|
xref:python-package-reference[reference].
|
||||||
|
|
||||||
|
@ -4,9 +4,9 @@
|
|||||||
=== Infrastructure for Python packages
|
=== Infrastructure for Python packages
|
||||||
|
|
||||||
This infrastructure applies to Python packages that use the standard
|
This infrastructure applies to Python packages that use the standard
|
||||||
Python setuptools or pep517 mechanisms as their build system, generally
|
Python setuptools, pep517, flit or maturin mechanisms as their build
|
||||||
recognizable by the usage of a +setup.py+ script or +pyproject.toml+
|
system, generally recognizable by the usage of a +setup.py+ script or
|
||||||
file.
|
+pyproject.toml+ file.
|
||||||
|
|
||||||
[[python-package-tutorial]]
|
[[python-package-tutorial]]
|
||||||
|
|
||||||
@ -51,8 +51,9 @@ On line 13, we declare our dependencies, so that they are built
|
|||||||
before the build process of our package starts.
|
before the build process of our package starts.
|
||||||
|
|
||||||
On line 14, we declare the specific Python build system being used. In
|
On line 14, we declare the specific Python build system being used. In
|
||||||
this case the +setuptools+ Python build system is used. The three
|
this case the +setuptools+ Python build system is used. The five
|
||||||
supported ones are +flit+, +pep517+ and +setuptools+.
|
supported ones are +flit+, +pep517+, +setuptools+, +setuptools-rust+
|
||||||
|
and +maturin+.
|
||||||
|
|
||||||
Finally, on line 16, we invoke the +python-package+ macro that
|
Finally, on line 16, we invoke the +python-package+ macro that
|
||||||
generates all the Makefile rules that actually allow the package to be
|
generates all the Makefile rules that actually allow the package to be
|
||||||
@ -98,13 +99,14 @@ Note that:
|
|||||||
One variable specific to the Python infrastructure is mandatory:
|
One variable specific to the Python infrastructure is mandatory:
|
||||||
|
|
||||||
* +PYTHON_FOO_SETUP_TYPE+, to define which Python build system is used
|
* +PYTHON_FOO_SETUP_TYPE+, to define which Python build system is used
|
||||||
by the package. The three supported values are +flit+, +pep517+ and
|
by the package. The five supported values are +flit+, +pep517+ and
|
||||||
+setuptools+. If you don't know which one is used in your package,
|
+setuptools+, +setuptools-rust+ and +maturin+. If you don't know
|
||||||
look at the +setup.py+ or +pyproject.toml+ file in your package
|
which one is used in your package, look at the +setup.py+ or
|
||||||
source code, and see whether it imports things from the +flit+
|
+pyproject.toml+ file in your package source code, and see whether
|
||||||
module or the +setuptools+ module. If the package is using a
|
it imports things from the +flit+ module or the +setuptools+
|
||||||
+pyproject.toml+ file without any build-system requires and with a
|
module. If the package is using a +pyproject.toml+ file without any
|
||||||
local in-tree backend-path one should use +pep517+.
|
build-system requires and with a local in-tree backend-path one
|
||||||
|
should use +pep517+.
|
||||||
|
|
||||||
A few additional variables, specific to the Python infrastructure, can
|
A few additional variables, specific to the Python infrastructure, can
|
||||||
optionally be defined, depending on the package's needs. Many of them
|
optionally be defined, depending on the package's needs. Many of them
|
||||||
|
Loading…
Reference in New Issue
Block a user