llvm-capstone/lldb
Pavel Labath 5fb8af40df Refactor log channel registration mechanism
Summary:
We currently have two log channel registration mechanisms. One uses a
set of function pointers and the other one is based on the
PluginManager.

The PluginManager dependency is unfortunate, as logging
is also used in lldb-server, and the PluginManager pulls in a lot of
classes which are not used in lldb-server.

Both approach have the problem that they leave too much to do for the
user, and so the individual log channels end up reimplementing command
line argument parsing, category listing, etc.

Here, I replace the PluginManager-based approach with a one. The new API
is more declarative, so the user only needs to specify the list of list
of channels, their descriptions, etc., and all the common tasks like
enabling/disabling categories are hadled by common code. I migrate the
LogChannelDWARF (only user of the PluginManager method) to the new API.

In the follow-up commits I'll replace the other channels with something
similar.

Reviewers: clayborg, zturner, beanz

Subscribers: aprantl, lldb-commits

Differential Revision: https://reviews.llvm.org/D29895

llvm-svn: 295190
2017-02-15 16:11:59 +00:00
..
cmake [CMake] Final dependency cleanup patch! 2017-02-08 21:00:46 +00:00
docs
examples
include/lldb Refactor log channel registration mechanism 2017-02-15 16:11:59 +00:00
lit
lldb.xcodeproj Fix Xcode project. 2017-02-06 18:10:39 +00:00
lldb.xcworkspace
packages/Python/lldbsuite Fix TestNameLookup for GCC 2017-02-15 12:27:16 +00:00
resources
scripts Install six.py conditionally 2017-02-04 00:20:24 +00:00
source Refactor log channel registration mechanism 2017-02-15 16:11:59 +00:00
test
third_party/Python/module
tools UriParser cleanup 2017-02-10 12:21:22 +00:00
unittests Refactor log channel registration mechanism 2017-02-15 16:11:59 +00:00
utils
www Fixed documentation bug found by Ramana who sent a patch to the lldb-dev list. 2017-02-09 17:16:19 +00:00
.arcconfig
.clang-format
.gitignore
CMakeLists.txt Install six.py conditionally 2017-02-04 00:20:24 +00:00
CODE_OWNERS.txt
INSTALL.txt
LICENSE.TXT
use_lldb_suite_root.py