Make manylinux wheels.

This commit is contained in:
2025-12-23 19:20:17 +00:00
parent 348812e750
commit 9294fba86d
2 changed files with 38 additions and 0 deletions
+1
View File
@@ -23,6 +23,7 @@ Repository = "https://github.com/LeoVasanko/aegis-python"
[dependency-groups] [dependency-groups]
dev = [ dev = [
"auditwheel>=6.5.0",
"pytest>=8.4.2", "pytest>=8.4.2",
"ruff>=0.14.4", "ruff>=0.14.4",
"setuptools>=80.9.0", "setuptools>=80.9.0",
+37
View File
@@ -211,6 +211,43 @@ def main():
wheel = wheels[0] wheel = wheels[0]
# Repair wheel with auditwheel for manylinux compatibility
repair_cmd = [
"uv",
"run",
"auditwheel",
"repair",
str(wheel),
"-w",
str(dist_dir),
]
if not run_command(
repair_cmd, f"Repairing wheel for Python {py_version} with auditwheel"
):
print(
f"✗ Auditwheel repair failed for Python {py_version}", file=sys.stderr
)
failed_builds.append(py_version)
continue
# Find the repaired wheel (it will have a different name)
all_wheels = list(dist_dir.glob(f"aeg-*-cp{py_version.replace('.', '')}-*.whl"))
repaired_wheels = [w for w in all_wheels if "linux_x86_64" not in str(w)]
if not repaired_wheels:
print(
f"✗ Could not find repaired (manylinux) wheel for Python {py_version}",
file=sys.stderr,
)
failed_builds.append(py_version)
continue
wheel = repaired_wheels[0] # Use the repaired wheel for testing
# Remove the unrepaired linux_x86_64 wheels
for w in all_wheels:
if "linux_x86_64" in str(w):
w.unlink()
# Test the wheel with pytest (use --isolated to avoid .venv conflicts) # Test the wheel with pytest (use --isolated to avoid .venv conflicts)
test_cmd = [ test_cmd = [
"uv", "uv",