mirror of
https://github.com/intel/llvm.git
synced 2026-01-23 07:58:23 +08:00
Extend SBPlatform with capability to launch/terminate a process remotely. Integrate this change into test framework in order to spawn processes on a remote target.
http://reviews.llvm.org/D7263 llvm-svn: 228230
This commit is contained in:
@@ -99,6 +99,7 @@ HEADER_FILES="${SRC_ROOT}/include/lldb/lldb.h"\
|
||||
" ${SRC_ROOT}/include/lldb/API/SBHostOS.h"\
|
||||
" ${SRC_ROOT}/include/lldb/API/SBInstruction.h"\
|
||||
" ${SRC_ROOT}/include/lldb/API/SBInstructionList.h"\
|
||||
" ${SRC_ROOT}/include/lldb/API/SBLaunchInfo.h"\
|
||||
" ${SRC_ROOT}/include/lldb/API/SBLineEntry.h"\
|
||||
" ${SRC_ROOT}/include/lldb/API/SBListener.h"\
|
||||
" ${SRC_ROOT}/include/lldb/API/SBModule.h"\
|
||||
@@ -150,6 +151,7 @@ INTERFACE_FILES="${SRC_ROOT}/scripts/Python/interface/SBAddress.i"\
|
||||
" ${SRC_ROOT}/scripts/Python/interface/SBHostOS.i"\
|
||||
" ${SRC_ROOT}/scripts/Python/interface/SBInstruction.i"\
|
||||
" ${SRC_ROOT}/scripts/Python/interface/SBInstructionList.i"\
|
||||
" ${SRC_ROOT}/scripts/Python/interface/SBLaunchInfo.i"\
|
||||
" ${SRC_ROOT}/scripts/Python/interface/SBLineEntry.i"\
|
||||
" ${SRC_ROOT}/scripts/Python/interface/SBListener.i"\
|
||||
" ${SRC_ROOT}/scripts/Python/interface/SBModule.i"\
|
||||
|
||||
@@ -101,6 +101,7 @@ def get_header_files( vDictArgs ):
|
||||
"/include/lldb/API/SBInputReader.h",
|
||||
"/include/lldb/API/SBInstruction.h",
|
||||
"/include/lldb/API/SBInstructionList.h",
|
||||
"/include/lldb/API/SBLaunchInfo.h",
|
||||
"/include/lldb/API/SBLineEntry.h",
|
||||
"/include/lldb/API/SBListener.h",
|
||||
"/include/lldb/API/SBModule.h",
|
||||
@@ -177,6 +178,7 @@ def get_interface_files( vDictArgs ):
|
||||
"/scripts/Python/interface/SBInputReader.i",
|
||||
"/scripts/Python/interface/SBInstruction.i",
|
||||
"/scripts/Python/interface/SBInstructionList.i",
|
||||
"/scripts/Python/interface/SBLaunchInfo.i",
|
||||
"/scripts/Python/interface/SBLineEntry.i",
|
||||
"/scripts/Python/interface/SBListener.i",
|
||||
"/scripts/Python/interface/SBModule.i",
|
||||
|
||||
126
lldb/scripts/Python/interface/SBLaunchInfo.i
Normal file
126
lldb/scripts/Python/interface/SBLaunchInfo.i
Normal file
@@ -0,0 +1,126 @@
|
||||
//===-- SWIG Interface for SBLaunchInfo--------------------------*- C++ -*-===//
|
||||
//
|
||||
// The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
namespace lldb {
|
||||
|
||||
class SBLaunchInfo
|
||||
{
|
||||
public:
|
||||
SBLaunchInfo (const char **argv);
|
||||
|
||||
pid_t
|
||||
GetProcessID();
|
||||
|
||||
uint32_t
|
||||
GetUserID();
|
||||
|
||||
uint32_t
|
||||
GetGroupID();
|
||||
|
||||
bool
|
||||
UserIDIsValid ();
|
||||
|
||||
bool
|
||||
GroupIDIsValid ();
|
||||
|
||||
void
|
||||
SetUserID (uint32_t uid);
|
||||
|
||||
void
|
||||
SetGroupID (uint32_t gid);
|
||||
|
||||
lldb::SBFileSpec
|
||||
GetExecutableFile ();
|
||||
|
||||
void
|
||||
SetExecutableFile (lldb::SBFileSpec exe_file, bool add_as_first_arg);
|
||||
|
||||
lldb::SBListener
|
||||
GetListener ();
|
||||
|
||||
void
|
||||
SetListener (lldb::SBListener &listener);
|
||||
|
||||
uint32_t
|
||||
GetNumArguments ();
|
||||
|
||||
const char *
|
||||
GetArgumentAtIndex (uint32_t idx);
|
||||
|
||||
void
|
||||
SetArguments (const char **argv, bool append);
|
||||
|
||||
uint32_t
|
||||
GetNumEnvironmentEntries ();
|
||||
|
||||
const char *
|
||||
GetEnvironmentEntryAtIndex (uint32_t idx);
|
||||
|
||||
void
|
||||
SetEnvironmentEntries (const char **envp, bool append);
|
||||
|
||||
void
|
||||
Clear ();
|
||||
|
||||
const char *
|
||||
GetWorkingDirectory () const;
|
||||
|
||||
void
|
||||
SetWorkingDirectory (const char *working_dir);
|
||||
|
||||
uint32_t
|
||||
GetLaunchFlags ();
|
||||
|
||||
void
|
||||
SetLaunchFlags (uint32_t flags);
|
||||
|
||||
const char *
|
||||
GetProcessPluginName ();
|
||||
|
||||
void
|
||||
SetProcessPluginName (const char *plugin_name);
|
||||
|
||||
const char *
|
||||
GetShell ();
|
||||
|
||||
void
|
||||
SetShell (const char * path);
|
||||
|
||||
uint32_t
|
||||
GetResumeCount ();
|
||||
|
||||
void
|
||||
SetResumeCount (uint32_t c);
|
||||
|
||||
bool
|
||||
AddCloseFileAction (int fd);
|
||||
|
||||
bool
|
||||
AddDuplicateFileAction (int fd, int dup_fd);
|
||||
|
||||
bool
|
||||
AddOpenFileAction (int fd, const char *path, bool read, bool write);
|
||||
|
||||
bool
|
||||
AddSuppressFileAction (int fd, bool read, bool write);
|
||||
|
||||
void
|
||||
SetLaunchEventData (const char *data);
|
||||
|
||||
const char *
|
||||
GetLaunchEventData () const;
|
||||
|
||||
bool
|
||||
GetDetachOnError() const;
|
||||
|
||||
void
|
||||
SetDetachOnError(bool enable);
|
||||
};
|
||||
|
||||
} // namespace lldb
|
||||
@@ -173,6 +173,12 @@ public:
|
||||
lldb::SBError
|
||||
Run (lldb::SBPlatformShellCommand &shell_command);
|
||||
|
||||
lldb::SBError
|
||||
Launch (lldb::SBLaunchInfo &launch_info);
|
||||
|
||||
lldb::SBError
|
||||
Kill (const lldb::pid_t pid);
|
||||
|
||||
lldb::SBError
|
||||
MakeDirectory (const char *path, uint32_t file_permissions = lldb::eFilePermissionsDirectoryDefault);
|
||||
|
||||
|
||||
@@ -9,117 +9,6 @@
|
||||
|
||||
namespace lldb {
|
||||
|
||||
class SBLaunchInfo
|
||||
{
|
||||
public:
|
||||
SBLaunchInfo (const char **argv);
|
||||
|
||||
uint32_t
|
||||
GetUserID();
|
||||
|
||||
uint32_t
|
||||
GetGroupID();
|
||||
|
||||
bool
|
||||
UserIDIsValid ();
|
||||
|
||||
bool
|
||||
GroupIDIsValid ();
|
||||
|
||||
void
|
||||
SetUserID (uint32_t uid);
|
||||
|
||||
void
|
||||
SetGroupID (uint32_t gid);
|
||||
|
||||
lldb::SBFileSpec
|
||||
GetExecutableFile ();
|
||||
|
||||
void
|
||||
SetExecutableFile (lldb::SBFileSpec exe_file, bool add_as_first_arg);
|
||||
|
||||
lldb::SBListener
|
||||
GetListener ();
|
||||
|
||||
void
|
||||
SetListener (lldb::SBListener &listener);
|
||||
|
||||
uint32_t
|
||||
GetNumArguments ();
|
||||
|
||||
const char *
|
||||
GetArgumentAtIndex (uint32_t idx);
|
||||
|
||||
void
|
||||
SetArguments (const char **argv, bool append);
|
||||
|
||||
uint32_t
|
||||
GetNumEnvironmentEntries ();
|
||||
|
||||
const char *
|
||||
GetEnvironmentEntryAtIndex (uint32_t idx);
|
||||
|
||||
void
|
||||
SetEnvironmentEntries (const char **envp, bool append);
|
||||
|
||||
void
|
||||
Clear ();
|
||||
|
||||
const char *
|
||||
GetWorkingDirectory () const;
|
||||
|
||||
void
|
||||
SetWorkingDirectory (const char *working_dir);
|
||||
|
||||
uint32_t
|
||||
GetLaunchFlags ();
|
||||
|
||||
void
|
||||
SetLaunchFlags (uint32_t flags);
|
||||
|
||||
const char *
|
||||
GetProcessPluginName ();
|
||||
|
||||
void
|
||||
SetProcessPluginName (const char *plugin_name);
|
||||
|
||||
const char *
|
||||
GetShell ();
|
||||
|
||||
void
|
||||
SetShell (const char * path);
|
||||
|
||||
uint32_t
|
||||
GetResumeCount ();
|
||||
|
||||
void
|
||||
SetResumeCount (uint32_t c);
|
||||
|
||||
bool
|
||||
AddCloseFileAction (int fd);
|
||||
|
||||
bool
|
||||
AddDuplicateFileAction (int fd, int dup_fd);
|
||||
|
||||
bool
|
||||
AddOpenFileAction (int fd, const char *path, bool read, bool write);
|
||||
|
||||
bool
|
||||
AddSuppressFileAction (int fd, bool read, bool write);
|
||||
|
||||
void
|
||||
SetLaunchEventData (const char *data);
|
||||
|
||||
const char *
|
||||
GetLaunchEventData () const;
|
||||
|
||||
bool
|
||||
GetDetachOnError() const;
|
||||
|
||||
void
|
||||
SetDetachOnError(bool enable);
|
||||
};
|
||||
|
||||
class SBAttachInfo
|
||||
{
|
||||
public:
|
||||
|
||||
Reference in New Issue
Block a user