Add StructuredData plugin type; showcase with new DarwinLog feature

Take 2, with missing cmake line fixed.  Build tested on
Ubuntu 14.04 with clang-3.6.

See docs/structured_data/StructuredDataPlugins.md for details.

differential review: https://reviews.llvm.org/D22976

reviewers: clayborg, jingham
llvm-svn: 279202
diff --git a/lldb/source/API/SystemInitializerFull.cpp b/lldb/source/API/SystemInitializerFull.cpp
index 8644757..00cbb5d 100644
--- a/lldb/source/API/SystemInitializerFull.cpp
+++ b/lldb/source/API/SystemInitializerFull.cpp
@@ -100,6 +100,7 @@
 #include "Plugins/Process/mach-core/ProcessMachCore.h"
 #include "Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.h"
 #endif
+#include "Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.h"
 
 #if defined(__FreeBSD__)
 #include "Plugins/Process/FreeBSD/ProcessFreeBSD.h"
@@ -381,6 +382,11 @@
     PlatformRemoteAppleWatch::Initialize();
     DynamicLoaderDarwinKernel::Initialize();
 #endif
+
+    // This plugin is valid on any host that talks to a Darwin remote.
+    // It shouldn't be limited to __APPLE__.
+    StructuredDataDarwinLog::Initialize();
+
     //----------------------------------------------------------------------
     // Platform agnostic plugins
     //----------------------------------------------------------------------
@@ -513,6 +519,8 @@
 
     platform_gdb_server::PlatformRemoteGDBServer::Terminate();
     process_gdb_remote::ProcessGDBRemote::Terminate();
+    StructuredDataDarwinLog::Terminate();
+
     DynamicLoaderMacOSXDYLD::Terminate();
     DynamicLoaderMacOS::Terminate();
     DynamicLoaderPOSIXDYLD::Terminate();