Hi all,

Opened a PR to permanently fix the `-headerpad_max_install_names` regression
that appeared in 46.0.4: https://github.com/pyca/cryptography/pull/14777

The short version: macOS 15 CI runners use Apple's new linker (ld_prime),
which reserves much less Mach-O header padding than the old ld. Homebrew's
install_name_tool needs that padding to rewrite dylib paths post-install.
When it's absent, `brew install`/`brew upgrade` fails with:

"Updated load commands do not fit in the header of _rust.abi3.so"

The fix is three lines in src/rust/build.rs — emit
-Wl,-headerpad_max_install_names via cargo:rustc-link-arg when targeting
macOS.

This is the same class of issue discussed in #7847 (2022). At the time,
@reaperhulk noted there was no objection to adding the flag permanently.
The symptom went away on its own then; the macos-13 → macos-15 runner
migration brought it back for good.

PR: https://github.com/pyca/cryptography/pull/14777

Thanksk
Elena
_______________________________________________
Cryptography-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/cryptography-dev.python.org
Member address: [email protected]

Reply via email to