-
-
Notifications
You must be signed in to change notification settings - Fork 320
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
Link macOS with AudioUnit, CoreAudio, IOKit frameworks #2434
Conversation
AudioUnit & CoreAudio are necessary to get [Bevy](https://docs.rs/bevy/latest/bevy/)'s "hello world" example working inside a Roc platform. IOKit is necessary to get [Bevy](https://docs.rs/bevy/latest/bevy/)'s "breakout" example working inside a Roc platform. Credit to @hafiz for discovering this solution.
This solves #2432 |
What's the long-term strategy for this list of linked frameworks? As third-party platforms encounter new framework requirements, they will be added here? Are there any downsides to adding any/every framework? Should there be a config file for customizing which frameworks are linked, so that platform developers don't need to diverge from trunk? |
I feel like this is a better solution. What about a section in Package-Config.roc that lists extra linker options per OS? (Ideally we'd have a way to sanitize/verify them as well.) Maybe that should be done is this PR, or a prereq. |
The surgical linker makes all of this unnecessary (because it makes the host responsible for this type of linking, not the Roc compiler), so I think that's the best long-term solution! 😄 |
Ah, that sounds good. So then is this PR fine for the short term? |
Totally! It'll be awhile before the surgical linker is ready to replace the current system. 😄 |
Sweet, then I just need PR approval. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good! 🎉
AudioUnit & CoreAudio are necessary to get
Bevy's "hello world" example
working inside a Roc platform.
IOKit is necessary to get
Bevy's "breakout" example
working inside a Roc platform.
Credit to @hafiz for discovering this solution.