-
-
Notifications
You must be signed in to change notification settings - Fork 317
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 mergeable libraries support to dynamic libraries #4367
Conversation
|
I'm using Xcode 16.0 (16A242d) on macOS 15.0 (24A335) and i'm currently not able to build an app binary which embeds the frameworks into the app binary. The sample from #4301 is also not working anymore. Also tried on another machine with Xcode 15.1 with the same result. |
Turns out just enabling it is not enough, we also have to remove |
Updated the build script. watchos and watchsimulator cant even build if the MERGED_BINARY_TYPE key is present, even if set to none. So we temporarily remove it from the project file using sed. Very annoying. This seems kinday finicky to me and adding too much complexity just to have the samples be mergale binaries. We could revert the samples and the @brustolin @philipphofmann WDYT? |
Im not sure If I get this. |
Sentry.xcodeproj/project.pbxproj
Outdated
@@ -5417,6 +5418,7 @@ | |||
"@executable_path/Frameworks", | |||
"@loader_path/Frameworks", | |||
); | |||
MERGEABLE_LIBRARY = YES; |
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.
h: We should use the SDK.xcconfig
file instead of changing this in the project settings.
This will also help not having the flag for watchOS and tvOS
scripts/build-xcframework.sh
Outdated
@@ -16,22 +15,51 @@ generate_xcframework() { | |||
local configuration_suffix="${4-}" | |||
local createxcframework="xcodebuild -create-xcframework " | |||
local GCC_GENERATE_DEBUGGING_SYMBOLS="YES" | |||
|
|||
local OTHER_LDFLAGS="-Wl,-make_mergeable" # Default value with -make_mergeable flag |
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.
l: Do we still need this flags after enabling MERGEABLE_LIBRARY
in the project settings?
Closed in favor of #4381 |
📜 Description
make_mergable
linker flags to supported SDKsFrom the
ld
manual. Opened in a file so it's easier to browse.Also, users have to build with Xcode >= 15.
💡 Motivation and Context
Users can enable mergable libraries featue for dynamic sentry frameworks.
See https://developer.apple.com/documentation/xcode/configuring-your-project-to-use-mergeable-libraries for more info.
💚 How did you test it?
Closes #3719
📝 Checklist
You have to check all boxes before merging:
sendDefaultPII
is enabled.