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 support for mergeable libraries #20262

Open
4 tasks
rolfbjarne opened this issue Mar 6, 2024 · 0 comments
Open
4 tasks

Add support for mergeable libraries #20262

rolfbjarne opened this issue Mar 6, 2024 · 0 comments
Labels
feature A feature to be implemented
Milestone

Comments

@rolfbjarne
Copy link
Member

Ref: https://developer.apple.com/videos/play/wwdc2023/10268/

We should investigate what we need to do in order to support mergeable libraries.

A few points after watching the WWDC video:

  • Mergeable libraries are basically dylibs/frameworks that contain enough information to act as static libraries as well, which about doubles their size.
  • The consumer of mergeable libraries decide if they want the dynamic or the static version of it.
  • Only the new linker can consume the static version of mergeable libraries.

I suspect mergeable libraries will work without any changes on our side, because we'll see them and treat them as standard dynamic libraries / frameworks.

However, we won't remove the static bits from them when putting them into the app bundle, so app size will be increased unless we add support for removing static bits from mergeable libraries.

So first task would be:

  • Investigate how Xcode removes static bits from mergeable libraries.
  • Implement what Xcode does in our own code.

Then additionally:

  • Investigate what we need to do in order to support linking statically with mergable libraries.
  • Implement it, if we so desire.
@rolfbjarne rolfbjarne added the feature A feature to be implemented label Mar 6, 2024
@rolfbjarne rolfbjarne added this to the Future milestone Mar 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature A feature to be implemented
Projects
None yet
Development

No branches or pull requests

1 participant