Did a lot more work on abtracting and organizing the platforms. 

On Mac OS X we now have 3 platforms:
PlatformDarwin - must be subclassed to fill in the missing pure virtual funcs
                 but this implements all the common functionality between
                 remote-macosx and remote-ios. It also allows for another
                 platform to be used (remote-gdb-server for now) when doing
                 remote connections. Keeping this pluggable will allow for
                 flexibility.
PlatformMacOSX - Now implements both local and remote macosx desktop platforms.
PlatformRemoteiOS - Remote only iOS that knows how to locate SDK files in the
                    cached SDK locations on the host.

A new agnostic platform has been created:
PlatformRemoteGDBServer - this implements the platform using the GDB remote 
                          protocol and uses the built in lldb_private::Host
                          static functions to implement many queries.



git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@128193 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/source/lldb.cpp b/source/lldb.cpp
index 6f219d4..f6a30ed 100644
--- a/source/lldb.cpp
+++ b/source/lldb.cpp
@@ -54,6 +54,7 @@
 #include "Plugins/Process/Linux/ProcessLinux.h"
 #endif
 
+#include "Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h"
 #include "Plugins/DynamicLoader/Static/DynamicLoaderStatic.h"
 
 using namespace lldb;
@@ -86,6 +87,9 @@
         ArchVolatileRegs_x86::Initialize();
 
 #if defined (__APPLE__)
+        //----------------------------------------------------------------------
+        // Apple/Darwin hosted plugins
+        //----------------------------------------------------------------------
         ABIMacOSX_i386::Initialize();
         ABISysV_x86_64::Initialize();
         DynamicLoaderMacOSXDYLD::Initialize();
@@ -102,11 +106,19 @@
         PlatformRemoteiOS::Initialize();
 #endif
 #if defined (__linux__)
+        //----------------------------------------------------------------------
+        // Linux hosted plugins
+        //----------------------------------------------------------------------
         PlatformLinux::Initialize();
         ProcessLinux::Initialize();
         DynamicLoaderLinuxDYLD::Initialize();
 #endif
+        //----------------------------------------------------------------------
+        // Platform agnostic plugins
+        //----------------------------------------------------------------------
+        PlatformRemoteGDBServer::Initialize ();
         DynamicLoaderStatic::Initialize();
+
         // Scan for any system or user LLDB plug-ins
         PluginManager::Initialize();