[Lldb-commits] [PATCH] D64408: [CMake] `install-distribution` for LLDB on Darwin
Stefan Gränitz via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Tue Jul 9 05:59:01 PDT 2019
sgraenitz created this revision.
sgraenitz added reviewers: xiaobai, compnerd, JDevlieghere, davide, labath, mgorny.
Herald added a project: LLDB.
There's a number of requirements for installing LLDB on macOS that are untypical for LLVM projects: use special install-prefix for LLDB.framework, ship headers and tools as framework resources, patch RPATHs, externalize debug-info to dSYM's and strip binaries with `-ST`.
For some of it we could use `llvm_externalize_debuginfo()` in the past and just add special cases. However, this complicates the code for all projects and comes with the major drawback, that it adds all these actions at build-time. i.e. dSYM creation and stripping take a lot of time and don't make sense at build-time.
LLVM's distribution mechanism (https://llvm.org/docs/BuildingADistribution.html) appears to be the natural alternative. Based on D64399 <https://reviews.llvm.org/D64399>, which proposes to enable it in standalone builds, this patch integrates framework installation with the distribution mechanism and adds custom stripping flags and dSYM creation at install-time.
Unlike the abandoned D61952 <https://reviews.llvm.org/D61952>, it leaves build-tree binaries untouched, so there's no side-effects on testing. Potential install-order issues must be handled externally.
Please let me know what you think, while I run a few more tests and add remarks+documentation.
rG LLVM Github Monorepo
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 12227 bytes
Desc: not available
More information about the lldb-commits