Add a new Process plugin for Linux.

This component is still at an early stage, but allows for simple
breakpoint/step-over operations and basic process control.

The makefiles are set up to build the plugin under Linux only.

llvm-svn: 109318
This commit is contained in:
Stephen Wilson
2010-07-24 02:19:04 +00:00
parent ddb46efcca
commit e6f9f66b39
14 changed files with 3033 additions and 9 deletions

View File

@@ -22,6 +22,7 @@
#include "Plugins/SymbolFile/DWARF/SymbolFileDWARF.h"
#include "Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h"
#include "Plugins/SymbolFile/Symtab/SymbolFileSymtab.h"
#ifdef __APPLE__
#include "Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.h"
#include "Plugins/ABI/SysV-x86_64/ABISysV_x86_64.h"
@@ -32,6 +33,10 @@
#include "Plugins/Process/gdb-remote/ProcessGDBRemote.h"
#endif
#ifdef __linux__
#include "Plugins/Process/Linux/ProcessLinux.h"
#endif
using namespace lldb_private;
@@ -55,10 +60,10 @@ lldb_private::Initialize ()
DisassemblerLLVM::Initialize();
ObjectContainerBSDArchive::Initialize();
ObjectFileELF::Initialize();
SymbolVendorMacOSX::Initialize();
SymbolFileDWARF::Initialize();
SymbolFileDWARFDebugMap::Initialize();
SymbolFileSymtab::Initialize();
#ifdef __APPLE__
ABIMacOSX_i386::Initialize();
ABISysV_x86_64::Initialize();
@@ -66,7 +71,12 @@ lldb_private::Initialize ()
ObjectContainerUniversalMachO::Initialize();
ObjectFileMachO::Initialize();
ProcessGDBRemote::Initialize();
// ProcessMacOSX::Initialize();
ProcessMacOSX::Initialize();
SymbolVendorMacOSX::Initialize();
#endif
#ifdef __linux__
ProcessLinux::Initialize();
#endif
}
}
@@ -84,16 +94,21 @@ lldb_private::Terminate ()
DisassemblerLLVM::Terminate();
ObjectContainerBSDArchive::Terminate();
ObjectFileELF::Terminate();
SymbolVendorMacOSX::Terminate();
SymbolFileDWARF::Terminate();
SymbolFileDWARFDebugMap::Terminate();
SymbolFileSymtab::Terminate();
#ifdef __APPLE__
DynamicLoaderMacOSXDYLD::Terminate();
ObjectContainerUniversalMachO::Terminate();
ObjectFileMachO::Terminate();
ProcessGDBRemote::Terminate();
// ProcessMacOSX::Terminate();
ProcessMacOSX::Terminate();
SymbolVendorMacOSX::Terminate();
#endif
#ifdef __linux__
ProcessLinux::Terminate();
#endif
}