-
Notifications
You must be signed in to change notification settings - Fork 30
Expand file tree
/
Copy pathpyproject.toml
More file actions
45 lines (37 loc) · 1.42 KB
/
pyproject.toml
File metadata and controls
45 lines (37 loc) · 1.42 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
[build-system]
requires = [
"setuptools >= 36.4",
"wheel",
"setuptools_scm >= 2.1",
"cython >= 3.1",
"pkgconfig"
]
build-backend = "setuptools.build_meta"
[tool.setuptools_scm]
[tool.cibuildwheel]
# Also skip wheels for free-threaded CPython 3.14 (e.g. 'cp314t') until we
# actually support them. We currently aren't thread-safe as we define HB_NO_MT=1.
# CPython abi3 wheels only need universal2 on macOS, skip the single-arch builds.
skip = ["cp38-*", "cp39-*", "cp3??t-*", "cp*-macosx_x86_64", "cp*-macosx_arm64"]
enable = ["pypy"]
test-requires = "pytest"
test-command = "pytest {project}/tests"
[tool.cibuildwheel.macos]
archs = ["x86_64", "universal2", "arm64"]
[tool.cibuildwheel.linux]
archs = ["native"]
# Run abi3audit after the default repair commands to scan for abi3 violations
# https://github.com/pypa/abi3audit
# Only on Unix platforms (Linux/macOS) since Windows has no default repair command
[[tool.cibuildwheel.overrides]]
select = "cp*-{linux,macosx}*"
inherit.repair-wheel-command = "append"
repair-wheel-command = "pipx run abi3audit --strict --report {wheel}"
# Disable Limited API for PyPy as the build currently fails, see:
# https://github.com/harfbuzz/uharfbuzz/issues/262#issuecomment-3415144557
# https://cibuildwheel.pypa.io/en/stable/configuration/#overrides
[[tool.cibuildwheel.overrides]]
select = "pp*"
environment = { USE_PY_LIMITED_API = "0" }
[tool.black]
extend-exclude = "harfbuzz"