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

[macos] Release mode AOT should delete dSYM files #2760

Merged
merged 2 commits into from Sep 25, 2017

Conversation

chamons
Copy link
Contributor

@chamons chamons commented Sep 22, 2017

- make run in tools/mmp uses different (faster) build system than full mmp tests
- There is no reasonable knob on the AOT process to not generate dSYM so delete after processing
- AppStore complains if you ship bundles with dSYM fils present
- https://bugzilla.xamarin.com/show_bug.cgi?id=59647
Copy link
Contributor

@spouliot spouliot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I need more context.

XM should be able to ship a single .dSYM for an application built in release mode (just like we do for XI) since this is how symbolication works.

What you seems to be removed are several .dSYM files (not useful) but it's not clear if the main feature (a single one) works - and the title is scary since there's such a thing as a good, release, dSYM (directory)

@chamons
Copy link
Contributor Author

chamons commented Sep 22, 2017

So each invocation to mono --aot was creating a separate .dSYM for that specific AOTed assembly inside the MonoBundle folder. Example

XMAppAOT.app/Contents/MonoBundle/System.dll.dylib.dSYM/
XMAppAOT.app/Contents/MonoBundle/mscorlib.dll.dylib.dSYM/
XMAppAOT.app/Contents/MonoBundle/Xamarin.Mac.dll.dylib.dSYM/

and those gave a customer the following error when submitting a bundle:

ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/System.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."

I don't know anything else about dSYM files and Xamarin.Mac, so i can't make comments on if that feature is/is not working. These specific files are spawned only by/during AOT.

Copy link
Contributor

@spouliot spouliot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add the last comment to your commit message :)

Also file a enhancement bug about .dSYM generation for XM. Thanks!

@chamons
Copy link
Contributor Author

chamons commented Sep 22, 2017

https://bugzilla.xamarin.com/show_bug.cgi?id=59701

I'll add "These specific files are spawned only by/during AOT." to the commit when I squash and commit.

@monojenkins
Copy link
Collaborator

Build failure

@chamons
Copy link
Contributor Author

chamons commented Sep 25, 2017

Test failure is "exec-link-keep-resources-2.log" which is fixed in master, after this PR was started.

@chamons chamons merged commit 7c676d6 into xamarin:master Sep 25, 2017
@chamons chamons deleted the xm_aot_release_fix branch September 25, 2017 14:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants