This completely removes the dependency from lldbUtility -> lldbCore and lldbTarget. This was done with the following restructure:
- ProcessStructReader: Utility -> Target
- ModuleCache: Utility -> Target
- RegisterNumber: Utility -> Target
- Endian: Host -> Utility
- Flags: Core -> Utility
This is enforced in the CMake by removing lldbCore and lldbUtility as linker inputs to both the lldbUtility target as well as the UtilityTests gtest target.
Unfortunately we are still requiring the dependency on lldbHost, which in turn depends on everything else, so for now we are still linking against Core and Utility transitively. After the dependency on Host is broken, this effort will be complete. But that is the only remaining step.