First cut at dSYM support #82
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
As noted in one of the PR's comments, this PR makes a lot of assumptions about the various files, nuances, metadata, directory structures, etc., that are contained within a
dSYMdirectory. I would expect further tweaks will be necessary as real-world issues are found. Until then, this appears to do things.To make a dSYM from a binary, use
dsymutil(docs):This will create
binary.dSYMnext to the binary. Note: when passing adSYMfolder toorc, you must omit the/at the end of the path, or orc will pass it over:You can also create a "flat" symbol file which ORC also supports with this PR:
This will create
binary.dwarfnext to the binary.In either case,
dsymutildoes not modify the binary (you'd usestripfor that).This PR also adds a couple tests to ensure ORC scans the two file formats above successfully. It does this by making dSYMs from its own debug binary, and scans them.