[msbuild] Copy dSYMs from xcframeworks next to the app's dSYM. Fixes #23076.#25979
[msbuild] Copy dSYMs from xcframeworks next to the app's dSYM. Fixes #23076.#25979rolfbjarne wants to merge 3 commits into
Conversation
…23076. Add a new _CopyXCFrameworkDSyms MSBuild target that copies pre-existing dSYMs from xcframeworks next to the app's dSYM, so that they're included in the archive when the app is archived. The target uses Inputs/Outputs for incremental build support. Also add an ArchiveDir MSBuild property to the Archive task, which allows specifying a custom archive directory instead of computing a unique path under ~/Library/Developer/Xcode/Archives. Also modify the test-libraries Makefile to run dsymutil on dynamic framework binaries and include the resulting dSYMs in xcframeworks. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
…rameworks. The xcframeworks now include dSYMs for dynamic frameworks, so the test verifying zip contents needs to expect the dSYM entries as well. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
✅ API diff for current PR / commitNET (empty diffs)✅ API diff vs stableNET (empty diffs)ℹ️ Generator diffGenerator Diff: vsdrops (html) vsdrops (raw diff) gist (raw diff) - Please review changes) Pipeline on Agent |
🔥 [CI Build #5a9641e] Test results 🔥Test results❌ Tests failed on VSTS: test results 0 tests crashed, 5 tests failed, 194 tests passed. Failures❌ dotnettests tests (iOS)1 tests failed, 0 tests passed.Failed tests
Html Report (VSDrops) Download ❌ dotnettests tests (MacCatalyst)1 tests failed, 0 tests passed.Failed tests
Html Report (VSDrops) Download ❌ dotnettests tests (macOS)1 tests failed, 0 tests passed.Failed tests
Html Report (VSDrops) Download ❌ dotnettests tests (tvOS)1 tests failed, 0 tests passed.Failed tests
Html Report (VSDrops) Download ❌ windows tests1 tests failed, 2 tests passed.Failed tests
Html Report (VSDrops) Download Successes✅ assembly-processing: All 1 tests passed. Html Report (VSDrops) Download macOS tests✅ Tests on macOS Monterey (12): All 5 tests passed. Html Report (VSDrops) Download Linux Build VerificationPipeline on Agent |
The previous Makefile change used $(wildcard) to conditionally pass -debug-symbols to xcodebuild, but $(wildcard) in a recipe generated by $(eval) is evaluated at Makefile parse time (before any targets are built), so it never found the dSYMs. Fix by using a shell-level 'test -d' check in the recipe instead, which runs at recipe execution time when the dSYMs have already been built. Also tolerate extra Relocations/ entries in dSYM bundles in the LibraryReferencingBindingLibrary test, since dsymutil produces these for fat (universal) binaries and the exact contents vary by architecture. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Add a new
_CopyXCFrameworkDSymsMSBuild target that copies pre-existing dSYMsfrom xcframeworks next to the app's dSYM, so that they're included in the
archive when the app is archived.
The target uses Inputs/Outputs for incremental build support.
Also add an
ArchiveDirMSBuild property to the Archive task, which allowsspecifying a custom archive directory instead of computing a unique path
under
~/Library/Developer/Xcode/Archives.Also modify the test-libraries Makefile to run dsymutil on dynamic framework
binaries and include the resulting dSYMs in xcframeworks.
Fixes #23076
🤖 Pull request created by Copilot