Skip to content
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

add macosx libc as a cross compilation target #2875

Closed
andrewrk opened this issue Jul 12, 2019 · 2 comments
Closed

add macosx libc as a cross compilation target #2875

andrewrk opened this issue Jul 12, 2019 · 2 comments
Labels
contributor friendly This issue is limited in scope and/or knowledge of Zig internals. enhancement Solving this issue will likely involve adding new logic or components to the codebase. os-macos
Milestone

Comments

@andrewrk
Copy link
Member

Extracted from #514.

We don't need any startup files for this one, but we do need headers.

@andrewrk andrewrk added enhancement Solving this issue will likely involve adding new logic or components to the codebase. contributor friendly This issue is limited in scope and/or knowledge of Zig internals. os-macos labels Jul 12, 2019
@andrewrk andrewrk added this to the 0.6.0 milestone Jul 12, 2019
@andrewrk andrewrk modified the milestones: 0.6.0, 0.7.0 Feb 10, 2020
@andrewrk andrewrk modified the milestones: 0.7.0, 0.8.0 Oct 14, 2020
@andrewrk andrewrk modified the milestones: 0.8.0, 0.7.0 Nov 6, 2020
@andrewrk
Copy link
Member Author

andrewrk commented Nov 6, 2020

Done by @kubkon in #6752

@andrewrk andrewrk closed this as completed Nov 6, 2020
@chadbrewbaker
Copy link

chadbrewbaker commented Dec 10, 2022

It is still missing compile time specialization, PGO, and BOLT on libc code. Since MacOS can’t agree on a fixed interface, you have an optional check at startup to make sure Apple hasn’t broken the interface, if it did you change the function pointers to hit libsystem instead of compile time specialized code. https://github.com/apple-oss-distributions/Libc

Building libc is nontrivial because Apple doesn’t provide sane makefiles. Here is the PureDarwin makefile on an older version. https://github.com/PureDarwin/PureDarwin/blob/main/src/Libraries/libSystem/libc/CMakeLists.txt Could use some help building it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
contributor friendly This issue is limited in scope and/or knowledge of Zig internals. enhancement Solving this issue will likely involve adding new logic or components to the codebase. os-macos
Projects
None yet
Development

No branches or pull requests

2 participants