[lldb-dev] Host is now dependency free

Zachary Turner via lldb-dev lldb-dev at lists.llvm.org
Fri Mar 8 13:00:13 PST 2019


It's been a long time coming and a lot of work to get here, but Host is now
dependency free.  While this may not be enforced in the Xcode project
(unless someone changes it to not link against any other libraries /
targets), as of r355730 this is  enforced in the CMake build, so if new
dependencies are introduced, it will break most non-OSX build bots.

Mostly just throwing this out there so people are aware.

The good news is that this gets us one step closer to a shared libraries
build as well as a real C++ modules build, as well as being able to create
small debugger-related tools that are not full blown debuggers.

For the curious, the remaining cycles in the build graph (as well as their
outgoing edge counts) are:

4 deps to break: lldb/Commands [3->] lldb/Expression [1->] lldb/Commands
5 deps to break: lldb/Plugins/SymbolFile/DWARF [4->] lldb/Expression [1->]
lldb/Plugins/SymbolFile/DWARF
5 deps to break: lldb/Plugins/Language/ObjC [4->]
lldb/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime [1->]
lldb/Plugins/Language/ObjC
6 deps to break: lldb/Interpreter [1->] lldb/Breakpoint [5->]
lldb/Interpreter
6 deps to break: lldb/Plugins/ScriptInterpreter/Python [2->] lldb/API [4->]
lldb/Plugins/ScriptInterpreter/Python
13 deps to break: lldb/Plugins/Language/ObjC [12->] lldb/Symbol [1->]
lldb/Plugins/Language/ObjC
14 deps to break: lldb/Interpreter [10->] lldb/DataFormatters [4->]
lldb/Interpreter
22 deps to break: lldb/Plugins/SymbolFile/PDB [21->] lldb/Symbol [1->]
lldb/Plugins/SymbolFile/PDB
23 deps to break: lldb/Target [3->] lldb/DataFormatters [20->] lldb/Target
26 deps to break: lldb/Expression [1->] lldb/Plugins/ExpressionParser/Clang
[25->] lldb/Expression
29 deps to break: lldb/Plugins/Language/CPlusPlus [26->] lldb/Core [3->]
lldb/Plugins/Language/CPlusPlus
29 deps to break: lldb/Plugins/Language/ObjC [27->] lldb/Core [2->]
lldb/Plugins/Language/ObjC
29 deps to break: lldb/Core [14->] lldb/DataFormatters [15->] lldb/Core
33 deps to break: lldb/Expression [30->] lldb/Symbol [3->] lldb/Expression
37 deps to break: lldb/Expression [33->] lldb/Core [4->] lldb/Expression
38 deps to break: lldb/Target [1->] lldb/Plugins/Language/ObjC [37->]
lldb/Target
42 deps to break: lldb/Interpreter [19->] lldb/Target [23->]
lldb/Interpreter
42 deps to break: lldb/Breakpoint [39->] lldb/Core [3->] lldb/Breakpoint
49 deps to break: lldb/Interpreter [25->] lldb/Core [24->] lldb/Interpreter
51 deps to break: lldb/Target [4->] lldb/Plugins/ExpressionParser/Clang
[47->] lldb/Target
55 deps to break: lldb/Plugins/SymbolFile/DWARF [54->] lldb/Symbol [1->]
lldb/Plugins/SymbolFile/DWARF
62 deps to break: lldb/Plugins/ExpressionParser/Clang [58->] lldb/Symbol
[4->] lldb/Plugins/ExpressionParser/Clang
69 deps to break: lldb/Target [38->] lldb/Breakpoint [31->] lldb/Target
72 deps to break: lldb/Target [13->] lldb/Expression [59->] lldb/Target
72 deps to break: lldb/Utility [71->] lldb [1->] lldb/Utility
104 deps to break: lldb/Target [64->] lldb/Symbol [40->] lldb/Target
128 deps to break: lldb/Target [7->] lldb/Plugins/Process/Utility [121->]
lldb/Target
201 deps to break: lldb/Core [110->] lldb/Symbol [91->] lldb/Core
227 deps to break: lldb/Target [127->] lldb/Core [100->] lldb/Target

Found by running scripts/analyze-project-deps.py
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20190308/f73f2a60/attachment.html>


More information about the lldb-dev mailing list