-
-
Notifications
You must be signed in to change notification settings - Fork 14.8k
Support "zippered" macOS binaries #131216
Copy link
Copy link
Open
Labels
A-targetsArea: Concerning the implications of different compiler targetsArea: Concerning the implications of different compiler targetsC-feature-requestCategory: A feature request, i.e: not implemented / a PR.Category: A feature request, i.e: not implemented / a PR.O-iosOperating system: iOSOperating system: iOSO-macosOperating system: macOSOperating system: macOST-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.
Metadata
Metadata
Assignees
Labels
A-targetsArea: Concerning the implications of different compiler targetsArea: Concerning the implications of different compiler targetsC-feature-requestCategory: A feature request, i.e: not implemented / a PR.Category: A feature request, i.e: not implemented / a PR.O-iosOperating system: iOSOperating system: iOSO-macosOperating system: macOSOperating system: macOST-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.
Type
Fields
Give feedbackNo fields configured for issues without a type.
Dynamic libraries on macOS can be built in a way that allows loading them when running under Mac Catalyst as well. This is similar in spirit to universal binaries, but technologically different in that only a single binary and architecture is actually built, which allows for a lot of code sharing.
This can be used in Xcode when creating XCFramework bundles, and is underpinned by the the
-darwin-target-variantflag in Clang - but that's the only official docs I could find on it. I did find this note though that explains the details really well.If we wanted to support this in
rustc, there's two questions that need answering:cfg(all(target_os = "macos", target_abi = "macabi"))?target_abi = "zippered"?Opening this issue to have a place to refer back to, I'm undecided whether it's worth the effort to try to support, would like to see a concrete use-case first (if you know of one, please comment below!)
@rustbot label O-ios O-macos C-feature-request A-targets