uv/crates/uv-python
Charlie Marsh d2fb4c585d
Patch sysconfig data at install time (#9857)
## Summary

This PR reimplements
[`sysconfigpatcher`](https://github.com/bluss/sysconfigpatcher) in Rust
and applies it to our Python installations at install-time, ensuring
that the `sysconfig` data is more likely to be correct.

For now, we only rewrite prefixes (i.e., any path that starts with
`/install` gets rewritten to the correct absolute path for the current
machine).

Unlike `sysconfigpatcher`, this PR does not yet do any of the following:

- Patch `pkginfo` files.
- Change `clang` references to `cc`.

A few things that we should do as follow-ups, in my opinion:

1. Rewrite
[`AR`](c1ebf8ab92/src/sysconfigpatcher.py (L61)).
2. Remove `-isysroot`, which we already do for newer builds.
2024-12-13 14:36:22 -05:00
..
python Patch sysconfig data at install time (#9857) 2024-12-13 14:36:22 -05:00
src Patch sysconfig data at install time (#9857) 2024-12-13 14:36:22 -05:00
Cargo.toml Patch sysconfig data at install time (#9857) 2024-12-13 14:36:22 -05:00
download-metadata.json Allow download of Python distribution variants with newer CPU instruction sets (#9781) 2024-12-10 14:26:45 -06:00
fetch-download-metadata.py Allow download of Python distribution variants with newer CPU instruction sets (#9781) 2024-12-10 14:26:45 -06:00
template-download-metadata.py Update Rust crate target-lexicon to 0.13.0 (#9729) 2024-12-10 20:34:07 -05:00