summaryrefslogtreecommitdiff
path: root/pyproject.toml
diff options
context:
space:
mode:
authorSviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua>2023-02-23 21:37:02 +0100
committerGitHub <noreply@github.com>2023-02-23 21:37:02 +0100
commit56036013cd09db0f1b20402a69be44345ddafb22 (patch)
tree707e6bd8d194e52e91a7e92ac9ba3a126a91e5ee /pyproject.toml
parent563833d124dfe421be019e567f3ac0bbcb23f853 (diff)
downloadansible-56036013cd09db0f1b20402a69be44345ddafb22.tar.gz
📦 Integrate manpage builds into PEP 517 build backend
This patch creates a thin wrapper around the `setuptools`' PEP 517 build backend in-tree. It features an ability to request generating the manpage files in the process of building a source distribution. This toggle is implemented using the `config_settings` mechanism of PEP 517. One must explicitly pass it a CLI option to the build front-end to trigger said behavior. The packagers are expected to use the following call: python -m build --config-setting=--build-manpages This option has no effect on building wheels. 🧪 The change includes integration tests This test runs building and re-building sdists and wheels with and without the `--build-manpages` config setting under the oldest-supported and new `setuptools` pinned. It is intended to preserve the interoperability of the packaging setup across Python runtimes. An extra smoke test also verifies that non PEP 517 interfaces remain functional. PR #79606 Co-authored-by: Matt Clay <matt@mystile.com>
Diffstat (limited to 'pyproject.toml')
-rw-r--r--pyproject.toml3
1 files changed, 2 insertions, 1 deletions
diff --git a/pyproject.toml b/pyproject.toml
index 38c5a47d62..4a583ee5a3 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,3 +1,4 @@
[build-system]
requires = ["setuptools >= 39.2.0", "wheel"]
-build-backend = "setuptools.build_meta"
+backend-path = ["packaging"] # requires 'Pip>=20' or 'pep517>=0.6.0'
+build-backend = "pep517_backend.hooks" # wraps `setuptools.build_meta`