-
Notifications
You must be signed in to change notification settings - Fork 704
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update build.rs to be consistent for all Apple targets #1925
Comments
Seems like this is more interested in the fact its using Mach-O then the actual host platform? The executable format, syscalls, ABI, etc are identical between them (with exceptions of things like arm64e) so I'm not aware of a difference ring would need to think about. Similar to what's already been done with MACOS_ABI, maybe this should change to "is darwin like". I reviewed the On documenting, I was intrigued about the odd interaction between Mach-O debug information and dead code stripping. The flag combination looks to be cargoculted into just every kind of C/C++ project (including ring 8 years ago) . Its documented here in a buried Apple changelog:
These internal changelogs seem to indicate it's been a requirement since XCode came into existence based on version numbers, so I suppose Apple's dead code stripping implementation relies on full debug information being available. And that further backs this should be applied to any Darwin target, not just macOS? |
In build.rs, we have things like:
it isn't clear to me what should happen for TVOS, watchOS, iOS, etc. It seems likely that at least some of them need to be treated consistently with macOS, but it also seems likely that there might be differences. We should fix and document this.
/cc @BlackHoleFox @pixlwave
The text was updated successfully, but these errors were encountered: