Configure maturin to build Python wheels for 5 target triples using cross-compilation from a single Linux runner. Enable ABI3 for forward compatibility across Python 3.10+. Changes: - pyproject.toml: Set requires-python = ">=3.10" (down from 3.11) - pyproject.toml: Add Python 3.10 classifier - pyproject.toml: Update comment to reflect 3.10+ compatibility - Cargo.toml: Add pyo3 abi3-py310 feature - docs/operations/build-wheels.md: Document cross-compilation setup Target triples: - x86_64-unknown-linux-gnu (manylinux_2_28_x86_64) - aarch64-unknown-linux-gnu (manylinux_2_28_aarch64) - x86_64-apple-darwin (macosx_11_0_x86_64) - aarch64-apple-darwin (macosx_11_0_arm64) - x86_64-pc-windows-gnu (win_amd64) All wheels will be ABI3 (cp310-abi3) compatible, producing a single wheel per platform instead of N versions × 5 platforms. Refs: pdftract-30ahi, Phase 6.3.4
20 lines
423 B
TOML
20 lines
423 B
TOML
[package]
|
|
name = "pdftract-py"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
rust-version.workspace = true
|
|
license.workspace = true
|
|
publish = false
|
|
|
|
[lib]
|
|
name = "pdftract"
|
|
crate-type = ["cdylib", "rlib"]
|
|
|
|
[dependencies]
|
|
anyhow = "1"
|
|
base64 = "0.22"
|
|
pdftract-core = { path = "../pdftract-core" }
|
|
pyo3 = { version = "0.20", features = ["extension-module", "abi3-py310"] }
|
|
|
|
[features]
|
|
default = ["pyo3/extension-module"]
|