summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lldb/include/lldb/API/SBBreakpointLocation.h4
-rw-r--r--lldb/include/lldb/API/SBCommandInterpreter.h4
-rw-r--r--lldb/include/lldb/API/SBFrame.h4
-rw-r--r--lldb/include/lldb/Interpreter/ScriptInterpreter.h11
-rw-r--r--lldb/include/lldb/Interpreter/ScriptInterpreterPython.h7
-rw-r--r--lldb/lldb.xcodeproj/project.pbxproj276
-rw-r--r--lldb/scripts/lldb.swig9
-rw-r--r--lldb/source/API/SBCommandInterpreter.cpp21
-rw-r--r--lldb/source/API/SBDebugger.cpp2
-rw-r--r--lldb/source/Interpreter/ScriptInterpreter.cpp10
-rw-r--r--lldb/source/Interpreter/ScriptInterpreterPython.cpp127
-rw-r--r--lldb/source/lldb.cpp7
-rw-r--r--lldb/test/abbreviation_tests/TestAbbreviations.py2
-rw-r--r--lldb/tools/debugserver/source/RNBRemote.cpp72
14 files changed, 327 insertions, 229 deletions
diff --git a/lldb/include/lldb/API/SBBreakpointLocation.h b/lldb/include/lldb/API/SBBreakpointLocation.h
index bb14cd1fdfd..652b7c5eed5 100644
--- a/lldb/include/lldb/API/SBBreakpointLocation.h
+++ b/lldb/include/lldb/API/SBBreakpointLocation.h
@@ -87,11 +87,11 @@ public:
SBBreakpoint
GetBreakpoint ();
+ SBBreakpointLocation (const lldb::BreakpointLocationSP &break_loc_sp);
+
private:
friend class SBBreakpoint;
friend class lldb_private::ScriptInterpreterPython;
-
- SBBreakpointLocation (const lldb::BreakpointLocationSP &break_loc_sp);
void
SetLocation (const lldb::BreakpointLocationSP &break_loc_sp);
diff --git a/lldb/include/lldb/API/SBCommandInterpreter.h b/lldb/include/lldb/API/SBCommandInterpreter.h
index f6a839c4625..0ce9d4a588c 100644
--- a/lldb/include/lldb/API/SBCommandInterpreter.h
+++ b/lldb/include/lldb/API/SBCommandInterpreter.h
@@ -101,7 +101,9 @@ private:
SBCommandInterpreter (lldb_private::CommandInterpreter *interpreter_ptr = NULL); // Access using SBDebugger::GetCommandInterpreter();
-
+ static void
+ InitializeSWIG ();
+
lldb_private::CommandInterpreter *m_opaque_ptr;
};
diff --git a/lldb/include/lldb/API/SBFrame.h b/lldb/include/lldb/API/SBFrame.h
index da90867a14b..9d7165b36aa 100644
--- a/lldb/include/lldb/API/SBFrame.h
+++ b/lldb/include/lldb/API/SBFrame.h
@@ -130,6 +130,8 @@ public:
bool
GetDescription (lldb::SBStream &description);
+ SBFrame (const lldb::StackFrameSP &lldb_object_sp);
+
protected:
friend class SBValue;
@@ -152,8 +154,6 @@ private:
#endif
- SBFrame (const lldb::StackFrameSP &lldb_object_sp);
-
void
SetFrame (const lldb::StackFrameSP &lldb_object_sp);
diff --git a/lldb/include/lldb/Interpreter/ScriptInterpreter.h b/lldb/include/lldb/Interpreter/ScriptInterpreter.h
index da8bce60b7e..438222c7456 100644
--- a/lldb/include/lldb/Interpreter/ScriptInterpreter.h
+++ b/lldb/include/lldb/Interpreter/ScriptInterpreter.h
@@ -20,6 +20,12 @@ class ScriptInterpreter
{
public:
+ typedef void (*SWIGInitCallback) (void);
+
+ typedef bool (*SWIGBreakpointCallbackFunction) (const char *python_function_name,
+ const char *session_dictionary_name,
+ const lldb::StackFrameSP& frame_sp,
+ const lldb::BreakpointLocationSP &bp_loc_sp);
typedef enum
{
eCharPtr,
@@ -97,10 +103,11 @@ public:
LanguageToString (lldb::ScriptLanguage language);
static void
- Initialize ();
+ InitializeInterpreter (SWIGInitCallback python_swig_init_callback,
+ SWIGBreakpointCallbackFunction python_swig_breakpoint_callback);
static void
- Terminate ();
+ TerminateInterpreter ();
virtual void
ResetOutputFileHandle (FILE *new_fh) { } //By default, do nothing.
diff --git a/lldb/include/lldb/Interpreter/ScriptInterpreterPython.h b/lldb/include/lldb/Interpreter/ScriptInterpreterPython.h
index 42642174b72..4b1c38d5cdc 100644
--- a/lldb/include/lldb/Interpreter/ScriptInterpreterPython.h
+++ b/lldb/include/lldb/Interpreter/ScriptInterpreterPython.h
@@ -84,10 +84,11 @@ public:
RunEmbeddedPythonInterpreter (lldb::thread_arg_t baton);
static void
- Initialize ();
-
+ InitializePrivate ();
+
static void
- Terminate ();
+ InitializeInterpreter (SWIGInitCallback python_swig_init_callback,
+ SWIGBreakpointCallbackFunction python_swig_breakpoint_callback);
protected:
diff --git a/lldb/lldb.xcodeproj/project.pbxproj b/lldb/lldb.xcodeproj/project.pbxproj
index 98b2307b530..6f4e106cf38 100644
--- a/lldb/lldb.xcodeproj/project.pbxproj
+++ b/lldb/lldb.xcodeproj/project.pbxproj
@@ -7,20 +7,12 @@
objects = {
/* Begin PBXBuildFile section */
- 260C6EA113011578005E16B0 /* File.h in Headers */ = {isa = PBXBuildFile; fileRef = 260C6EA013011578005E16B0 /* File.h */; };
260C876A10F538E700BB2B04 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 260C876910F538E700BB2B04 /* Foundation.framework */; };
261744781168585B005ADD65 /* SBType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 261744771168585B005ADD65 /* SBType.cpp */; };
2617447A11685869005ADD65 /* SBType.h in Headers */ = {isa = PBXBuildFile; fileRef = 2617447911685869005ADD65 /* SBType.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 2618EE661315B29C001D6D71 /* GDBRemoteCommunication.h in Headers */ = {isa = PBXBuildFile; fileRef = 2618EE5C1315B29C001D6D71 /* GDBRemoteCommunication.h */; };
- 2618EE681315B29C001D6D71 /* GDBRemoteRegisterContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 2618EE5E1315B29C001D6D71 /* GDBRemoteRegisterContext.h */; };
- 2618EE6A1315B29C001D6D71 /* ProcessGDBRemote.h in Headers */ = {isa = PBXBuildFile; fileRef = 2618EE601315B29C001D6D71 /* ProcessGDBRemote.h */; };
- 2618EE6C1315B29C001D6D71 /* ProcessGDBRemoteLog.h in Headers */ = {isa = PBXBuildFile; fileRef = 2618EE621315B29C001D6D71 /* ProcessGDBRemoteLog.h */; };
- 2618EE6E1315B29C001D6D71 /* ThreadGDBRemote.h in Headers */ = {isa = PBXBuildFile; fileRef = 2618EE641315B29C001D6D71 /* ThreadGDBRemote.h */; };
262CFC7711A4510000946C6C /* debugserver in Resources */ = {isa = PBXBuildFile; fileRef = 26CE05A0115C31E50022F371 /* debugserver */; };
- 2635DA87127D0D0400675BC1 /* SharingPtr.h in Headers */ = {isa = PBXBuildFile; fileRef = 261B5A5311C3F2AD00AABD0A /* SharingPtr.h */; settings = {ATTRIBUTES = (Public, ); }; };
26368A3C126B697600E8659F /* darwin-debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26368A3B126B697600E8659F /* darwin-debug.cpp */; };
26368AF7126B960500E8659F /* darwin-debug in Resources */ = {isa = PBXBuildFile; fileRef = 26579F68126A25920007C5CB /* darwin-debug */; };
- 264A43BC1320B3B4005B4096 /* Platform.h in Headers */ = {isa = PBXBuildFile; fileRef = 264A43BB1320B3B4005B4096 /* Platform.h */; };
265ABF6310F42EE900531910 /* DebugSymbols.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 265ABF6210F42EE900531910 /* DebugSymbols.framework */; };
2668020E115FD12C008E1FE4 /* lldb-defines.h in Headers */ = {isa = PBXBuildFile; fileRef = 26BC7C2510F1B3BC00F91463 /* lldb-defines.h */; settings = {ATTRIBUTES = (Public, ); }; };
2668020F115FD12C008E1FE4 /* lldb-enumerations.h in Headers */ = {isa = PBXBuildFile; fileRef = 26BC7C2610F1B3BC00F91463 /* lldb-enumerations.h */; settings = {ATTRIBUTES = (Public, ); }; };
@@ -64,10 +56,6 @@
26680336116005EF008E1FE4 /* SBBreakpointLocation.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9AF16CC7114086A1007A7B3F /* SBBreakpointLocation.cpp */; };
26680337116005F1008E1FE4 /* SBBreakpoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9AF16A9C11402D5B007A7B3F /* SBBreakpoint.cpp */; };
2668035C11601108008E1FE4 /* LLDB.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 26680207115FD0ED008E1FE4 /* LLDB.framework */; };
- 266A42D8128E40040090CF7C /* ClangNamespaceDecl.h in Headers */ = {isa = PBXBuildFile; fileRef = 266A42D7128E40040090CF7C /* ClangNamespaceDecl.h */; };
- 266F5CBC12FC846200DFCE33 /* Config.h in Headers */ = {isa = PBXBuildFile; fileRef = 266F5CBB12FC846200DFCE33 /* Config.h */; };
- 2675F7011332BE690067997B /* PlatformRemoteiOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 2675F6FF1332BE690067997B /* PlatformRemoteiOS.h */; };
- 26879CE61333F5750012C1F8 /* CommandObjectPlatform.h in Headers */ = {isa = PBXBuildFile; fileRef = 26879CE51333F5750012C1F8 /* CommandObjectPlatform.h */; };
2689000013353DB600698AC0 /* BreakpointResolverAddress.h in Headers */ = {isa = PBXBuildFile; fileRef = 26D0DD5010FE554D00271C65 /* BreakpointResolverAddress.h */; };
2689000113353DB600698AC0 /* BreakpointResolverAddress.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26D0DD5310FE555900271C65 /* BreakpointResolverAddress.cpp */; };
2689000213353DB600698AC0 /* BreakpointResolverFileLine.h in Headers */ = {isa = PBXBuildFile; fileRef = 26D0DD5110FE554D00271C65 /* BreakpointResolverFileLine.h */; };
@@ -194,7 +182,6 @@
2689007B13353E1A00698AC0 /* CFCString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26BC7EF810F1B8AD00F91463 /* CFCString.cpp */; };
2689007C13353E1A00698AC0 /* Symbols.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2689B0B5113EE47E00A4AEDB /* Symbols.cpp */; };
2689007D13353E2200698AC0 /* Args.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26BC7E6C10F1B85900F91463 /* Args.cpp */; };
- 2689007E13353E2200698AC0 /* LLDBWrapPython.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26A4EEB511682AAC007A372A /* LLDBWrapPython.cpp */; };
2689007F13353E2200698AC0 /* CommandCompletions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C09CB74116BD98B00C7A725 /* CommandCompletions.cpp */; };
2689008013353E2200698AC0 /* CommandInterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26BC7F0810F1B8DD00F91463 /* CommandInterpreter.cpp */; };
2689008113353E2200698AC0 /* CommandObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26BC7F0910F1B8DD00F91463 /* CommandObject.cpp */; };
@@ -365,19 +352,22 @@
2689FFFD13353DB600698AC0 /* BreakpointOptions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26BC7E1110F1B83100F91463 /* BreakpointOptions.cpp */; };
2689FFFE13353DB600698AC0 /* BreakpointResolver.h in Headers */ = {isa = PBXBuildFile; fileRef = 26BC7CF610F1B71400F91463 /* BreakpointResolver.h */; };
2689FFFF13353DB600698AC0 /* BreakpointResolver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26BC7E1210F1B83100F91463 /* BreakpointResolver.cpp */; };
- 268A68401321B53B000E3FB8 /* DynamicLoaderStatic.h in Headers */ = {isa = PBXBuildFile; fileRef = 268A683E1321B53B000E3FB8 /* DynamicLoaderStatic.h */; };
- 268DA872130095D000C9483A /* Terminal.h in Headers */ = {isa = PBXBuildFile; fileRef = 268DA871130095D000C9483A /* Terminal.h */; };
268F9D53123AA15200B91E9B /* SBSymbolContextList.h in Headers */ = {isa = PBXBuildFile; fileRef = 268F9D52123AA15200B91E9B /* SBSymbolContextList.h */; settings = {ATTRIBUTES = (Public, ); }; };
268F9D55123AA16600B91E9B /* SBSymbolContextList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 268F9D54123AA16600B91E9B /* SBSymbolContextList.cpp */; };
+ 26B1FA1413380E61002886E2 /* LLDBWrapPython.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26A4EEB511682AAC007A372A /* LLDBWrapPython.cpp */; };
+ 26B1FCB813381071002886E2 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 26F5C39010F3FA26009D5894 /* CoreFoundation.framework */; };
+ 26B1FCB913381071002886E2 /* DebugSymbols.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 265ABF6210F42EE900531910 /* DebugSymbols.framework */; };
+ 26B1FCBA13381071002886E2 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 260C876910F538E700BB2B04 /* Foundation.framework */; };
+ 26B1FCBB13381071002886E2 /* libpython.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 26F5C32410F3DF23009D5894 /* libpython.dylib */; };
+ 26B1FCBC13381071002886E2 /* libobjc.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 26F5C37410F3F61B009D5894 /* libobjc.dylib */; };
+ 26B1FCBD13381071002886E2 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C74CB6212288704006A8171 /* Carbon.framework */; };
+ 26B1FCC21338115F002886E2 /* Host.mm in Sources */ = {isa = PBXBuildFile; fileRef = 26BC7EE810F1B88F00F91463 /* Host.mm */; };
26B42B1F1187A92B0079C8C8 /* lldb-include.h in Headers */ = {isa = PBXBuildFile; fileRef = 26B42B1E1187A92B0079C8C8 /* lldb-include.h */; settings = {ATTRIBUTES = (Public, ); }; };
26B42C4D1187ABA50079C8C8 /* LLDB.h in Headers */ = {isa = PBXBuildFile; fileRef = 26B42C4C1187ABA50079C8C8 /* LLDB.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 26C557811325781D008FD8FE /* PlatformMacOSX.h in Headers */ = {isa = PBXBuildFile; fileRef = 26C5577C132575AD008FD8FE /* PlatformMacOSX.h */; };
26C72C94124322890068DC16 /* SBStream.h in Headers */ = {isa = PBXBuildFile; fileRef = 26C72C93124322890068DC16 /* SBStream.h */; settings = {ATTRIBUTES = (Public, ); }; };
26C72C961243229A0068DC16 /* SBStream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26C72C951243229A0068DC16 /* SBStream.cpp */; };
- 26D5B0C211B07550009A862E /* Host.mm in Sources */ = {isa = PBXBuildFile; fileRef = 26BC7EE810F1B88F00F91463 /* Host.mm */; };
- 26D5B10011B07550009A862E /* ProcessControl-mig.defs in Sources */ = {isa = PBXBuildFile; fileRef = 260C89A110F57C5600BB2B04 /* ProcessControl-mig.defs */; settings = {ATTRIBUTES = (Client, Server, ); }; };
- 26D9FDC712F784E60003F2EE /* EmulateInstruction.h in Headers */ = {isa = PBXBuildFile; fileRef = 26D9FDC612F784E60003F2EE /* EmulateInstruction.h */; };
- 26D9FDCF12F7853F0003F2EE /* EmulateInstructionARM.h in Headers */ = {isa = PBXBuildFile; fileRef = 26D9FDCD12F7853F0003F2EE /* EmulateInstructionARM.h */; };
+ 26DC6A171337FE8000FF7998 /* liblldb-core.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2689FFCA13353D7A00698AC0 /* liblldb-core.a */; };
+ 26DC6A1D1337FECA00FF7998 /* lldb-platform.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26DC6A1C1337FECA00FF7998 /* lldb-platform.cpp */; };
26DE1E6B11616C2E00A093E2 /* lldb-forward-rtti.h in Headers */ = {isa = PBXBuildFile; fileRef = 26DE1E6911616C2E00A093E2 /* lldb-forward-rtti.h */; settings = {ATTRIBUTES = (Public, ); }; };
26DE1E6C11616C2E00A093E2 /* lldb-forward.h in Headers */ = {isa = PBXBuildFile; fileRef = 26DE1E6A11616C2E00A093E2 /* lldb-forward.h */; settings = {ATTRIBUTES = (Public, ); }; };
26DE204111618AB900A093E2 /* SBSymbolContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 26DE204011618AB900A093E2 /* SBSymbolContext.h */; settings = {ATTRIBUTES = (Public, ); }; };
@@ -396,7 +386,6 @@
26DE20611161902700A093E2 /* SBBlock.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26DE20601161902600A093E2 /* SBBlock.cpp */; };
26DE20631161904200A093E2 /* SBLineEntry.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26DE20621161904200A093E2 /* SBLineEntry.cpp */; };
26DE20651161904E00A093E2 /* SBSymbol.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26DE20641161904E00A093E2 /* SBSymbol.cpp */; };
- 26E6902F129C6BD500DDECD9 /* ClangExternalASTSourceCallbacks.h in Headers */ = {isa = PBXBuildFile; fileRef = 26E6902E129C6BD500DDECD9 /* ClangExternalASTSourceCallbacks.h */; };
26F5C27710F3D9E4009D5894 /* Driver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26F5C27310F3D9E4009D5894 /* Driver.cpp */; };
26F5C27810F3D9E4009D5894 /* IOChannel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26F5C27510F3D9E4009D5894 /* IOChannel.cpp */; };
26F5C32510F3DF23009D5894 /* libpython.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 26F5C32410F3DF23009D5894 /* libpython.dylib */; };
@@ -404,13 +393,7 @@
26F5C32D10F3DFDD009D5894 /* libtermcap.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 26F5C32B10F3DFDD009D5894 /* libtermcap.dylib */; };
26F5C37510F3F61B009D5894 /* libobjc.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 26F5C37410F3F61B009D5894 /* libobjc.dylib */; };
26F5C39110F3FA26009D5894 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 26F5C39010F3FA26009D5894 /* CoreFoundation.framework */; };
- 26FA4316130103F400E71120 /* FileSpec.h in Headers */ = {isa = PBXBuildFile; fileRef = 26FA4315130103F400E71120 /* FileSpec.h */; };
- 4C61978D12823D4300FAFFCC /* AppleObjCRuntime.h in Headers */ = {isa = PBXBuildFile; fileRef = 4C61978912823D4300FAFFCC /* AppleObjCRuntime.h */; };
- 4C61978F12823D4300FAFFCC /* AppleObjCRuntimeV1.h in Headers */ = {isa = PBXBuildFile; fileRef = 4C61978B12823D4300FAFFCC /* AppleObjCRuntimeV1.h */; };
- 4C626534130F1B0A00C889F6 /* StreamTee.h in Headers */ = {isa = PBXBuildFile; fileRef = 4C626533130F1B0A00C889F6 /* StreamTee.h */; };
4C74CB6312288704006A8171 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C74CB6212288704006A8171 /* Carbon.framework */; };
- 4C7CF7E41295E10E00B4FBB5 /* ThreadPlanCallUserExpression.h in Headers */ = {isa = PBXBuildFile; fileRef = 4C7CF7E31295E10E00B4FBB5 /* ThreadPlanCallUserExpression.h */; };
- 4CC2A14D128C7409001531C4 /* ThreadPlanTracer.h in Headers */ = {isa = PBXBuildFile; fileRef = 4CC2A14C128C7409001531C4 /* ThreadPlanTracer.h */; };
9A19A6AF1163BBB200E0D453 /* SBValue.h in Headers */ = {isa = PBXBuildFile; fileRef = 9A19A6A51163BB7E00E0D453 /* SBValue.h */; settings = {ATTRIBUTES = (Public, ); }; };
9A19A6B01163BBB300E0D453 /* SBValue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9A19A6AD1163BB9800E0D453 /* SBValue.cpp */; };
9A357583116CFDEE00E8ED2F /* SBValueList.h in Headers */ = {isa = PBXBuildFile; fileRef = 9A357582116CFDEE00E8ED2F /* SBValueList.h */; settings = {ATTRIBUTES = (Public, ); }; };
@@ -426,9 +409,6 @@
9AC70390117675270086C050 /* SBInstructionList.h in Headers */ = {isa = PBXBuildFile; fileRef = 9AC7038F117675270086C050 /* SBInstructionList.h */; settings = {ATTRIBUTES = (Public, ); }; };
9AC703AF117675410086C050 /* SBInstruction.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9AC703AE117675410086C050 /* SBInstruction.cpp */; };
9AC703B1117675490086C050 /* SBInstructionList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9AC703B0117675490086C050 /* SBInstructionList.cpp */; };
- B23DD25012EDFAC1000C3894 /* ARMUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = B23DD24F12EDFAC1000C3894 /* ARMUtils.h */; };
- B287E63F12EFAE2C00C9BEFE /* ARMDefines.h in Headers */ = {isa = PBXBuildFile; fileRef = B287E63E12EFAE2C00C9BEFE /* ARMDefines.h */; };
- B2D3033712EFA5C500F84EB3 /* InstructionUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = B2D3033612EFA5C500F84EB3 /* InstructionUtils.h */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
@@ -474,6 +454,20 @@
remoteGlobalIDString = 26CE0593115C31C20022F371;
remoteInfo = "lldb-debugserver";
};
+ 26DC6A151337FE7300FF7998 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+ proxyType = 1;
+ remoteGlobalIDString = 2689FFC913353D7A00698AC0;
+ remoteInfo = "lldb-core";
+ };
+ 26DC6A201338008100FF7998 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+ proxyType = 1;
+ remoteGlobalIDString = 26DC6A0F1337FE6900FF7998;
+ remoteInfo = "lldb-platform";
+ };
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
@@ -950,6 +944,8 @@
26D9FDCC12F7853F0003F2EE /* EmulateInstructionARM.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = EmulateInstructionARM.cpp; path = Instruction/ARM/EmulateInstructionARM.cpp; sourceTree = "<group>"; };
26D9FDCD12F7853F0003F2EE /* EmulateInstructionARM.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = EmulateInstructionARM.h; path = Instruction/ARM/EmulateInstructionARM.h; sourceTree = "<group>"; };
26DAFD9711529BC7005A394E /* ExecutionContextScope.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ExecutionContextScope.h; path = include/lldb/Target/ExecutionContextScope.h; sourceTree = "<group>"; };
+ 26DC6A101337FE6900FF7998 /* lldb-platform */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "lldb-platform"; sourceTree = BUILT_PRODUCTS_DIR; };
+ 26DC6A1C1337FECA00FF7998 /* lldb-platform.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "lldb-platform.cpp"; path = "tools/lldb-platform/lldb-platform.cpp"; sourceTree = "<group>"; };
26DE1E6911616C2E00A093E2 /* lldb-forward-rtti.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "lldb-forward-rtti.h"; path = "include/lldb/lldb-forward-rtti.h"; sourceTree = "<group>"; };
26DE1E6A11616C2E00A093E2 /* lldb-forward.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "lldb-forward.h"; path = "include/lldb/lldb-forward.h"; sourceTree = "<group>"; };
26DE204011618AB900A093E2 /* SBSymbolContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SBSymbolContext.h; path = include/lldb/API/SBSymbolContext.h; sourceTree = "<group>"; };
@@ -1200,6 +1196,20 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
+ 26DC6A0E1337FE6900FF7998 /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 26DC6A171337FE8000FF7998 /* liblldb-core.a in Frameworks */,
+ 26B1FCB813381071002886E2 /* CoreFoundation.framework in Frameworks */,
+ 26B1FCB913381071002886E2 /* DebugSymbols.framework in Frameworks */,
+ 26B1FCBA13381071002886E2 /* Foundation.framework in Frameworks */,
+ 26B1FCBB13381071002886E2 /* libpython.dylib in Frameworks */,
+ 26B1FCBC13381071002886E2 /* libobjc.dylib in Frameworks */,
+ 26B1FCBD13381071002886E2 /* Carbon.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
26F5C26810F3D9A4009D5894 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
@@ -1261,6 +1271,7 @@
26F5C26A10F3D9A4009D5894 /* lldb */,
26680207115FD0ED008E1FE4 /* LLDB.framework */,
26579F68126A25920007C5CB /* darwin-debug */,
+ 26DC6A101337FE6900FF7998 /* lldb-platform */,
);
name = Products;
sourceTree = "<group>";
@@ -2238,12 +2249,21 @@
name = ARM;
sourceTree = "<group>";
};
+ 26DC6A1B1337FEA400FF7998 /* lldb-platform */ = {
+ isa = PBXGroup;
+ children = (
+ 26DC6A1C1337FECA00FF7998 /* lldb-platform.cpp */,
+ );
+ name = "lldb-platform";
+ sourceTree = "<group>";
+ };
26F5C22410F3D950009D5894 /* Tools */ = {
isa = PBXGroup;
children = (
26579F55126A255E0007C5CB /* darwin-debug */,
265E9BE0115C2B8500D0DCCB /* debugserver */,
26F5C22510F3D956009D5894 /* Driver */,
+ 26DC6A1B1337FEA400FF7998 /* lldb-platform */,
);
name = Tools;
sourceTree = "<group>";
@@ -2438,33 +2458,6 @@
2617447A11685869005ADD65 /* SBType.h in Headers */,
9A19A6AF1163BBB200E0D453 /* SBValue.h in Headers */,
9A357583116CFDEE00E8ED2F /* SBValueList.h in Headers */,
- 2635DA87127D0D0400675BC1 /* SharingPtr.h in Headers */,
- 4C61978D12823D4300FAFFCC /* AppleObjCRuntime.h in Headers */,
- 4C61978F12823D4300FAFFCC /* AppleObjCRuntimeV1.h in Headers */,
- 4CC2A14D128C7409001531C4 /* ThreadPlanTracer.h in Headers */,
- 266A42D8128E40040090CF7C /* ClangNamespaceDecl.h in Headers */,
- 26E6902F129C6BD500DDECD9 /* ClangExternalASTSourceCallbacks.h in Headers */,
- 4C7CF7E41295E10E00B4FBB5 /* ThreadPlanCallUserExpression.h in Headers */,
- B23DD25012EDFAC1000C3894 /* ARMUtils.h in Headers */,
- B2D3033712EFA5C500F84EB3 /* InstructionUtils.h in Headers */,
- B287E63F12EFAE2C00C9BEFE /* ARMDefines.h in Headers */,
- 26D9FDC712F784E60003F2EE /* EmulateInstruction.h in Headers */,
- 26D9FDCF12F7853F0003F2EE /* EmulateInstructionARM.h in Headers */,
- 266F5CBC12FC846200DFCE33 /* Config.h in Headers */,
- 268DA872130095D000C9483A /* Terminal.h in Headers */,
- 26FA4316130103F400E71120 /* FileSpec.h in Headers */,
- 260C6EA113011578005E16B0 /* File.h in Headers */,
- 4C626534130F1B0A00C889F6 /* StreamTee.h in Headers */,
- 2618EE661315B29C001D6D71 /* GDBRemoteCommunication.h in Headers */,
- 2618EE681315B29C001D6D71 /* GDBRemoteRegisterContext.h in Headers */,
- 2618EE6A1315B29C001D6D71 /* ProcessGDBRemote.h in Headers */,
- 2618EE6C1315B29C001D6D71 /* ProcessGDBRemoteLog.h in Headers */,
- 2618EE6E1315B29C001D6D71 /* ThreadGDBRemote.h in Headers */,
- 264A43BC1320B3B4005B4096 /* Platform.h in Headers */,
- 268A68401321B53B000E3FB8 /* DynamicLoaderStatic.h in Headers */,
- 26C557811325781D008FD8FE /* PlatformMacOSX.h in Headers */,
- 2675F7011332BE690067997B /* PlatformRemoteiOS.h in Headers */,
- 26879CE61333F5750012C1F8 /* CommandObjectPlatform.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -2516,6 +2509,7 @@
isa = PBXNativeTarget;
buildConfigurationList = 2668020B115FD0EE008E1FE4 /* Build configuration list for PBXNativeTarget "LLDB" */;
buildPhases = (
+ 26DC6A5813380D4300FF7998 /* Build swig wrapper classes */,
26680202115FD0ED008E1FE4 /* Headers */,
26680203115FD0ED008E1FE4 /* Resources */,
26680204115FD0ED008E1FE4 /* Sources */,
@@ -2540,7 +2534,6 @@
buildConfigurationList = 2689FFD813353D7A00698AC0 /* Build configuration list for PBXNativeTarget "lldb-core" */;
buildPhases = (
261EECA21337D399001D193C /* Build llvm and clang */,
- 261EECA41337D4BB001D193C /* Build swig wrapper classes */,
2689FFC613353D7A00698AC0 /* Sources */,
2689FFC713353D7A00698AC0 /* Frameworks */,
2689FFC813353D7A00698AC0 /* Headers */,
@@ -2554,6 +2547,23 @@
productReference = 2689FFCA13353D7A00698AC0 /* liblldb-core.a */;
productType = "com.apple.product-type.library.dynamic";
};
+ 26DC6A0F1337FE6900FF7998 /* lldb-platform */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 26DC6A1A1337FE8B00FF7998 /* Build configuration list for PBXNativeTarget "lldb-platform" */;
+ buildPhases = (
+ 26DC6A0D1337FE6900FF7998 /* Sources */,
+ 26DC6A0E1337FE6900FF7998 /* Frameworks */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ 26DC6A161337FE7300FF7998 /* PBXTargetDependency */,
+ );
+ name = "lldb-platform";
+ productName = "lldb-platform";
+ productReference = 26DC6A101337FE6900FF7998 /* lldb-platform */;
+ productType = "com.apple.product-type.tool";
+ };
26F5C26910F3D9A4009D5894 /* lldb-tool */ = {
isa = PBXNativeTarget;
buildConfigurationList = 26F5C26E10F3D9C5009D5894 /* Build configuration list for PBXNativeTarget "lldb-tool" */;
@@ -2566,6 +2576,7 @@
dependencies = (
26CE0610115C438C0022F371 /* PBXTargetDependency */,
266803621160110D008E1FE4 /* PBXTargetDependency */,
+ 26DC6A211338008100FF7998 /* PBXTargetDependency */,
);
name = "lldb-tool";
productName = lldb;
@@ -2598,6 +2609,7 @@
26680206115FD0ED008E1FE4 /* LLDB */,
26579F67126A25920007C5CB /* darwin-debug */,
2689FFC913353D7A00698AC0 /* lldb-core */,
+ 26DC6A0F1337FE6900FF7998 /* lldb-platform */,
);
};
/* End PBXProject section */
@@ -2657,7 +2669,7 @@
shellPath = /bin/sh;
shellScript = "perl $SRCROOT/scripts/build-llvm.pl";
};
- 261EECA41337D4BB001D193C /* Build swig wrapper classes */ = {
+ 26DC6A5813380D4300FF7998 /* Build swig wrapper classes */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
@@ -2706,8 +2718,6 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
- 26D5B0C211B07550009A862E /* Host.mm in Sources */,
- 26D5B10011B07550009A862E /* ProcessControl-mig.defs in Sources */,
26680324116005D9008E1FE4 /* SBThread.cpp in Sources */,
26680326116005DB008E1FE4 /* SBTarget.cpp in Sources */,
26680327116005DC008E1FE4 /* SBSourceManager.cpp in Sources */,
@@ -2742,6 +2752,7 @@
9AA69DB1118A024600D753A0 /* SBInputReader.cpp in Sources */,
268F9D55123AA16600B91E9B /* SBSymbolContextList.cpp in Sources */,
26C72C961243229A0068DC16 /* SBStream.cpp in Sources */,
+ 26B1FA1413380E61002886E2 /* LLDBWrapPython.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -2877,7 +2888,6 @@
2689007B13353E1A00698AC0 /* CFCString.cpp in Sources */,
2689007C13353E1A00698AC0 /* Symbols.cpp in Sources */,
2689007D13353E2200698AC0 /* Args.cpp in Sources */,
- 2689007E13353E2200698AC0 /* LLDBWrapPython.cpp in Sources */,
2689007F13353E2200698AC0 /* CommandCompletions.cpp in Sources */,
2689008013353E2200698AC0 /* CommandInterpreter.cpp in Sources */,
2689008113353E2200698AC0 /* CommandObject.cpp in Sources */,
@@ -3027,6 +3037,15 @@
2689011113353E8200698AC0 /* StringExtractor.cpp in Sources */,
2689011213353E8200698AC0 /* StringExtractorGDBRemote.cpp in Sources */,
2689011313353E8200698AC0 /* PseudoTerminal.cpp in Sources */,
+ 26B1FCC21338115F002886E2 /* Host.mm in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 26DC6A0D1337FE6900FF7998 /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 26DC6A1D1337FECA00FF7998 /* lldb-platform.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -3068,6 +3087,16 @@
name = "lldb-debugserver";
targetProxy = 26CE060F115C438C0022F371 /* PBXContainerItemProxy */;
};
+ 26DC6A161337FE7300FF7998 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ target = 2689FFC913353D7A00698AC0 /* lldb-core */;
+ targetProxy = 26DC6A151337FE7300FF7998 /* PBXContainerItemProxy */;
+ };
+ 26DC6A211338008100FF7998 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ target = 26DC6A0F1337FE6900FF7998 /* lldb-platform */;
+ targetProxy = 26DC6A201338008100FF7998 /* PBXContainerItemProxy */;
+ };
/* End PBXTargetDependency section */
/* Begin XCBuildConfiguration section */
@@ -3211,7 +3240,7 @@
"$(LLVM_BUILD_DIR)",
);
LLVM_BUILD_DIR = "$(SRCROOT)/llvm";
- LLVM_CONFIGURATION = "Debug+Asserts";
+ LLVM_CONFIGURATION = Release;
OTHER_CFLAGS = "-Wparentheses";
OTHER_CPLUSPLUSFLAGS = (
"-fno-rtti",
@@ -3219,7 +3248,6 @@
"$(OTHER_CFLAGS)",
);
OTHER_LDFLAGS = (
- "-lllvmclang",
"-framework",
Foundation,
"-framework",
@@ -3264,7 +3292,7 @@
"$(LLVM_BUILD_DIR)",
);
LLVM_BUILD_DIR = "$(SRCROOT)/llvm";
- LLVM_CONFIGURATION = "Debug+Asserts";
+ LLVM_CONFIGURATION = Release;
OTHER_CFLAGS = "-Wparentheses";
OTHER_CPLUSPLUSFLAGS = (
"-fno-rtti",
@@ -3272,7 +3300,6 @@
"$(OTHER_CFLAGS)",
);
OTHER_LDFLAGS = (
- "-lllvmclang",
"-framework",
Foundation,
"-framework",
@@ -3291,6 +3318,8 @@
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 46;
+ DYLIB_CURRENT_VERSION = 46;
EXECUTABLE_EXTENSION = a;
GCC_ENABLE_OBJC_GC = supported;
GCC_INLINES_ARE_PRIVATE_EXTERN = NO;
@@ -3299,7 +3328,11 @@
__STDC_LIMIT_MACROS,
LLDB_CONFIGURATION_DEBUG,
);
- LD_DYLIB_INSTALL_NAME = "$(DYLIB_INSTALL_NAME_BASE:standardizepath)/lldb-core.a";
+ LD_DYLIB_INSTALL_NAME = "/Developer/Library/PrivateFrameworks/LLDB.framework/Resources/lldb-core.a";
+ LIBRARY_SEARCH_PATHS = (
+ "$(inherited)",
+ "$(LLVM_BUILD_DIR)",
+ );
LLVM_BUILD_DIR = "$(SRCROOT)/llvm";
LLVM_CONFIGURATION = Release;
MACH_O_TYPE = staticlib;
@@ -3310,10 +3343,12 @@
"-Wglobal-constructors",
"$(OTHER_CFLAGS)",
);
+ OTHER_LDFLAGS = "-lllvmclang";
PRODUCT_NAME = "lib$(TARGET_NAME)";
SDKROOT = macosx;
STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = static;
USER_HEADER_SEARCH_PATHS = "$(SRCROOT)/source $(SRCROOT)/source/Plugins/Process/Utility $(SRCROOT)/include $(SRCROOT)/source/Host/macosx/cfcpp $(SRCROOT)/llvm/include $(SRCROOT)/llvm/tools/clang/include $(LLVM_BUILD_DIR)/llvm/include $(LLVM_BUILD_DIR)/llvm/tools/clang/include";
+ VERSIONING_SYSTEM = "apple-generic";
};
name = Debug;
};
@@ -3322,7 +3357,9 @@
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
COPY_PHASE_STRIP = YES;
+ CURRENT_PROJECT_VERSION = 46;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ DYLIB_CURRENT_VERSION = 46;
EXECUTABLE_EXTENSION = a;
GCC_ENABLE_OBJC_GC = supported;
GCC_INLINES_ARE_PRIVATE_EXTERN = NO;
@@ -3331,7 +3368,12 @@
__STDC_LIMIT_MACROS,
LLDB_CONFIGURATION_RELEASE,
);
- LD_DYLIB_INSTALL_NAME = "$(DYLIB_INSTALL_NAME_BASE:standardizepath)/lldb-core.a";
+ LD_DYLIB_INSTALL_NAME = "/Developer/Library/PrivateFrameworks/LLDB.framework/Resources/lldb-core.a";
+ LIBRARY_SEARCH_PATHS = (
+ "$(inherited)",
+ "$(LLVM_BUILD_DIR)",
+ );
+ LLVM_BUILD_DIR = "$(SRCROOT)/llvm";
LLVM_CONFIGURATION = Release;
MACH_O_TYPE = staticlib;
MACOSX_DEPLOYMENT_TARGET = 10.6;
@@ -3341,10 +3383,12 @@
"-Wglobal-constructors",
"$(OTHER_CFLAGS)",
);
+ OTHER_LDFLAGS = "-lllvmclang";
PRODUCT_NAME = "lib$(TARGET_NAME)";
SDKROOT = macosx;
STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = static;
USER_HEADER_SEARCH_PATHS = "$(SRCROOT)/source $(SRCROOT)/source/Plugins/Process/Utility $(SRCROOT)/include $(SRCROOT)/source/Host/macosx/cfcpp $(SRCROOT)/llvm/include $(SRCROOT)/llvm/tools/clang/include $(LLVM_BUILD_DIR)/llvm/include $(LLVM_BUILD_DIR)/llvm/tools/clang/include";
+ VERSIONING_SYSTEM = "apple-generic";
};
name = Release;
};
@@ -3353,7 +3397,9 @@
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
COPY_PHASE_STRIP = YES;
+ CURRENT_PROJECT_VERSION = 46;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ DYLIB_CURRENT_VERSION = 46;
EXECUTABLE_EXTENSION = a;
GCC_ENABLE_OBJC_GC = supported;
GCC_INLINES_ARE_PRIVATE_EXTERN = NO;
@@ -3362,7 +3408,12 @@
__STDC_LIMIT_MACROS,
LLDB_CONFIGURATION_BUILD_AND_INTEGRATION,
);
- LD_DYLIB_INSTALL_NAME = "$(DYLIB_INSTALL_NAME_BASE:standardizepath)/lldb-core.a";
+ LD_DYLIB_INSTALL_NAME = "/Developer/Library/PrivateFrameworks/LLDB.framework/Resources/lldb-core.a";
+ LIBRARY_SEARCH_PATHS = (
+ "$(inherited)",
+ "$(LLVM_BUILD_DIR)",
+ );
+ LLVM_BUILD_DIR = "$(DERIVED_FILE_DIR)/llvm.build";
LLVM_CONFIGURATION = Release;
MACH_O_TYPE = staticlib;
MACOSX_DEPLOYMENT_TARGET = 10.6;
@@ -3372,10 +3423,12 @@
"-Wglobal-constructors",
"$(OTHER_CFLAGS)",
);
+ OTHER_LDFLAGS = "-lllvmclang";
PRODUCT_NAME = "lib$(TARGET_NAME)";
SDKROOT = macosx;
STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = static;
USER_HEADER_SEARCH_PATHS = "$(SRCROOT)/source $(SRCROOT)/source/Plugins/Process/Utility $(SRCROOT)/include $(SRCROOT)/source/Host/macosx/cfcpp $(SRCROOT)/llvm/include $(SRCROOT)/llvm/tools/clang/include $(LLVM_BUILD_DIR)/llvm/include $(LLVM_BUILD_DIR)/llvm/tools/clang/include";
+ VERSIONING_SYSTEM = "apple-generic";
};
name = BuildAndIntegration;
};
@@ -3475,7 +3528,7 @@
"$(LLVM_BUILD_DIR)",
);
LLVM_BUILD_DIR = "$(DERIVED_FILE_DIR)/llvm.build";
- LLVM_CONFIGURATION = "Debug+Asserts";
+ LLVM_CONFIGURATION = Release;
OTHER_CFLAGS = "-Wparentheses";
OTHER_CPLUSPLUSFLAGS = (
"-fno-rtti",
@@ -3483,7 +3536,6 @@
"$(OTHER_CFLAGS)",
);
OTHER_LDFLAGS = (
- "-lllvmclang",
"-framework",
Foundation,
"-framework",
@@ -3497,6 +3549,78 @@
};
name = BuildAndIntegration;
};
+ 26DC6A121337FE6A00FF7998 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COPY_PHASE_STRIP = NO;
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(inherited)",
+ "\"$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks\"",
+ );
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_ENABLE_CPP_RTTI = NO;
+ GCC_MODEL_TUNING = G5;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ INSTALL_PATH = /usr/local/bin;
+ OTHER_LDFLAGS = (
+ "-framework",
+ Foundation,
+ "-framework",
+ AppKit,
+ );
+ PREBINDING = NO;
+ PRODUCT_NAME = "lldb-platform";
+ USER_HEADER_SEARCH_PATHS = "$(SRCROOT)/include $(SRCROOT)/llvm/include $(SRCROOT)/llvm/tools/clang/include $(LLVM_BUILD_DIR)/llvm/include $(LLVM_BUILD_DIR)/llvm/tools/clang/include $(SRCROOT)/source/Plugins/Process/gdb-remote $(SRCROOT)/source";
+ };
+ name = Debug;
+ };
+ 26DC6A131337FE6A00FF7998 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COPY_PHASE_STRIP = YES;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(inherited)",
+ "\"$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks\"",
+ );
+ GCC_ENABLE_CPP_RTTI = NO;
+ GCC_MODEL_TUNING = G5;
+ INSTALL_PATH = /usr/local/bin;
+ OTHER_LDFLAGS = (
+ "-framework",
+ Foundation,
+ "-framework",
+ AppKit,
+ );
+ PREBINDING = NO;
+ PRODUCT_NAME = "lldb-platform";
+ USER_HEADER_SEARCH_PATHS = "$(SRCROOT)/include $(SRCROOT)/llvm/include $(SRCROOT)/llvm/tools/clang/include $(LLVM_BUILD_DIR)/llvm/include $(LLVM_BUILD_DIR)/llvm/tools/clang/include $(SRCROOT)/source/Plugins/Process/gdb-remote $(SRCROOT)/source";
+ ZERO_LINK = NO;
+ };
+ name = Release;
+ };
+ 26DC6A141337FE6A00FF7998 /* BuildAndIntegration */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(inherited)",
+ "\"$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks\"",
+ );
+ GCC_ENABLE_CPP_RTTI = NO;
+ GCC_MODEL_TUNING = G5;
+ INSTALL_PATH = /usr/local/bin;
+ OTHER_LDFLAGS = (
+ "-framework",
+ Foundation,
+ "-framework",
+ AppKit,
+ );
+ PREBINDING = NO;
+ PRODUCT_NAME = "lldb-platform";
+ USER_HEADER_SEARCH_PATHS = "$(SRCROOT)/include $(SRCROOT)/llvm/include $(SRCROOT)/llvm/tools/clang/include $(LLVM_BUILD_DIR)/llvm/include $(LLVM_BUILD_DIR)/llvm/tools/clang/include $(SRCROOT)/source/Plugins/Process/gdb-remote $(SRCROOT)/source";
+ };
+ name = BuildAndIntegration;
+ };
26F5C26C10F3D9A5009D5894 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
@@ -3614,6 +3738,16 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = BuildAndIntegration;
};
+ 26DC6A1A1337FE8B00FF7998 /* Build configuration list for PBXNativeTarget "lldb-platform" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 26DC6A121337FE6A00FF7998 /* Debug */,
+ 26DC6A131337FE6A00FF7998 /* Release */,
+ 26DC6A141337FE6A00FF7998 /* BuildAndIntegration */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = BuildAndIntegration;
+ };
26F5C26E10F3D9C5009D5894 /* Build configuration list for PBXNativeTarget "lldb-tool" */ = {
isa = XCConfigurationList;
buildConfigurations = (
diff --git a/lldb/scripts/lldb.swig b/lldb/scripts/lldb.swig
index ff0463305d6..c34e7e9013e 100644
--- a/lldb/scripts/lldb.swig
+++ b/lldb/scripts/lldb.swig
@@ -205,14 +205,17 @@
// and is used when a script command is attached to a breakpoint for execution.
SWIGEXPORT bool
-LLDBSWIGPythonBreakpointCallbackFunction
+LLDBSwigPythonBreakpointCallbackFunction
(
const char *python_function_name,
const char *session_dictionary_name,
- lldb::SBFrame& sb_frame,
- lldb::SBBreakpointLocation& sb_bp_loc
+ const lldb::StackFrameSP& frame_sp,
+ const lldb::BreakpointLocationSP& bp_loc_sp
)
{
+ lldb::SBFrame sb_frame (frame_sp);
+ lldb::SBBreakpointLocation sb_bp_loc(bp_loc_sp);
+
bool stop_at_breakpoint = true;
PyObject *Frame_PyObj = SWIG_NewPointerObj((void *) &sb_frame, SWIGTYPE_p_lldb__SBFrame, 0);
PyObject *Bp_Loc_PyObj = SWIG_NewPointerObj ((void *) &sb_bp_loc, SWIGTYPE_p_lldb__SBBreakpointLocation, 0);
diff --git a/lldb/source/API/SBCommandInterpreter.cpp b/lldb/source/API/SBCommandInterpreter.cpp
index 443545df972..0f1914b6f95 100644
--- a/lldb/source/API/SBCommandInterpreter.cpp
+++ b/lldb/source/API/SBCommandInterpreter.cpp
@@ -305,4 +305,25 @@ SBCommandInterpreter::GetArgumentDescriptionAsCString (const lldb::CommandArgume
}
+extern "C" bool
+LLDBSwigPythonBreakpointCallbackFunction
+(
+ const char *python_function_name,
+ const char *session_dictionary_name,
+ const lldb::StackFrameSP& sb_frame,
+ const lldb::BreakpointLocationSP& sb_bp_loc
+);
+extern "C" void init_lldb(void);
+
+void
+SBCommandInterpreter::InitializeSWIG ()
+{
+ static bool g_initialized = false;
+ if (!g_initialized)
+ {
+ g_initialized = true;
+ ScriptInterpreter::InitializeInterpreter (init_lldb,
+ LLDBSwigPythonBreakpointCallbackFunction);
+ }
+}
diff --git a/lldb/source/API/SBDebugger.cpp b/lldb/source/API/SBDebugger.cpp
index f871524dd06..57fff384788 100644
--- a/lldb/source/API/SBDebugger.cpp
+++ b/lldb/source/API/SBDebugger.cpp
@@ -42,6 +42,8 @@ SBDebugger::Initialize ()
if (log)
log->Printf ("SBDebugger::Initialize ()");
+ SBCommandInterpreter::InitializeSWIG ();
+
Debugger::Initialize();
}
diff --git a/lldb/source/Interpreter/ScriptInterpreter.cpp b/lldb/source/Interpreter/ScriptInterpreter.cpp
index fd1e10abfbc..7011c2e7f2b 100644
--- a/lldb/source/Interpreter/ScriptInterpreter.cpp
+++ b/lldb/source/Interpreter/ScriptInterpreter.cpp
@@ -91,14 +91,16 @@ ScriptInterpreter::LanguageToString (lldb::ScriptLanguage language)
}
void
-ScriptInterpreter::Initialize ()
+ScriptInterpreter::InitializeInterpreter (SWIGInitCallback python_swig_init_callback,
+ SWIGBreakpointCallbackFunction python_swig_breakpoint_callback)
{
-// ScriptInterpreterPython::Initialize ();
+ ScriptInterpreterPython::InitializeInterpreter (python_swig_init_callback,
+ python_swig_breakpoint_callback);
}
void
-ScriptInterpreter::Terminate ()
+ScriptInterpreter::TerminateInterpreter ()
{
-// ScriptInterpreterPython::Terminate ();
+ ScriptInterpreterPython::TerminateInterpreter ();
}
diff --git a/lldb/source/Interpreter/ScriptInterpreterPython.cpp b/lldb/source/Interpreter/ScriptInterpreterPython.cpp
index c8dfec513cc..10b9792f009 100644
--- a/lldb/source/Interpreter/ScriptInterpreterPython.cpp
+++ b/lldb/source/Interpreter/ScriptInterpreterPython.cpp
@@ -28,22 +28,13 @@
#include "lldb/Interpreter/CommandReturnObject.h"
#include "lldb/Target/Thread.h"
-// This function is in the C++ output file generated by SWIG after it is
-// run on all of the headers in "lldb/API/SB*.h"
-extern "C" void init_lldb (void);
-
-extern "C" bool
-LLDBSWIGPythonBreakpointCallbackFunction
-(
- const char *python_function_name,
- const char *session_dictionary_name,
- lldb::SBFrame& sb_frame,
- lldb::SBBreakpointLocation& sb_bp_loc
-);
-
using namespace lldb;
using namespace lldb_private;
+
+static ScriptInterpreter::SWIGInitCallback g_swig_init_callback = NULL;
+static ScriptInterpreter::SWIGBreakpointCallbackFunction g_swig_breakpoint_callback = NULL;
+
const char embedded_interpreter_string[] =
"import readline\n\
import code\n\
@@ -212,7 +203,7 @@ ScriptInterpreterPython::ScriptInterpreterPython (CommandInterpreter &interprete
if (!g_initialized)
{
g_initialized = true;
- ScriptInterpreterPython::Initialize ();
+ ScriptInterpreterPython::InitializePrivate ();
}
bool safe_to_run = false;
@@ -1288,38 +1279,40 @@ ScriptInterpreterPython::BreakpointCallbackFunction
&& python_function_name[0] != '\0')
{
Thread *thread = context->exe_ctx.thread;
- const StackFrameSP stop_frame_sp = thread->GetStackFrameSPForStackFramePtr (context->exe_ctx.frame);
+ const StackFrameSP stop_frame_sp (thread->GetStackFrameSPForStackFramePtr (context->exe_ctx.frame));
BreakpointSP breakpoint_sp = target->GetBreakpointByID (break_id);
- const BreakpointLocationSP bp_loc_sp = breakpoint_sp->FindLocationByID (break_loc_id);
-
- SBFrame sb_frame (stop_frame_sp);
- SBBreakpointLocation sb_bp_loc (bp_loc_sp);
-
- if (sb_bp_loc.IsValid() || sb_frame.IsValid())
+ if (breakpoint_sp)
{
- bool ret_val = true;
- FILE *tmp_fh = (python_interpreter->m_dbg_stdout ? python_interpreter->m_dbg_stdout : stdout);
- if (CurrentThreadHasPythonLock())
- {
- python_interpreter->EnterSession ();
- ret_val = LLDBSWIGPythonBreakpointCallbackFunction(python_function_name,
- python_interpreter->m_dictionary_name.c_str(),
- sb_frame, sb_bp_loc);
- python_interpreter->LeaveSession ();
- }
- else
+ const BreakpointLocationSP bp_loc_sp (breakpoint_sp->FindLocationByID (break_loc_id));
+
+ if (stop_frame_sp && bp_loc_sp)
{
- while (!GetPythonLock (1))
- fprintf (tmp_fh,
- "Python interpreter locked on another thread; waiting to acquire lock...\n");
- python_interpreter->EnterSession ();
- ret_val = LLDBSWIGPythonBreakpointCallbackFunction(python_function_name,
- python_interpreter->m_dictionary_name.c_str(),
- sb_frame, sb_bp_loc);
- python_interpreter->LeaveSession ();
- ReleasePythonLock ();
+ bool ret_val = true;
+ FILE *tmp_fh = (python_interpreter->m_dbg_stdout ? python_interpreter->m_dbg_stdout : stdout);
+ if (CurrentThreadHasPythonLock())
+ {
+ python_interpreter->EnterSession ();
+ ret_val = g_swig_breakpoint_callback (python_function_name,
+ python_interpreter->m_dictionary_name.c_str(),
+ stop_frame_sp,
+ bp_loc_sp);
+ python_interpreter->LeaveSession ();
+ }
+ else
+ {
+ while (!GetPythonLock (1))
+ fprintf (tmp_fh,
+ "Python interpreter locked on another thread; waiting to acquire lock...\n");
+ python_interpreter->EnterSession ();
+ ret_val = g_swig_breakpoint_callback (python_function_name,
+ python_interpreter->m_dictionary_name.c_str(),
+ stop_frame_sp,
+ bp_loc_sp);
+ python_interpreter->LeaveSession ();
+ ReleasePythonLock ();
+ }
+ return ret_val;
}
- return ret_val;
}
}
// We currently always true so we stop in case anything goes wrong when
@@ -1447,7 +1440,15 @@ ScriptInterpreterPython::RunEmbeddedPythonInterpreter (lldb::thread_arg_t baton)
void
-ScriptInterpreterPython::Initialize ()
+ScriptInterpreterPython::InitializeInterpreter (SWIGInitCallback python_swig_init_callback,
+ SWIGBreakpointCallbackFunction python_swig_breakpoint_callback)
+{
+ g_swig_init_callback = python_swig_init_callback;
+ g_swig_breakpoint_callback = python_swig_breakpoint_callback;
+}
+
+void
+ScriptInterpreterPython::InitializePrivate ()
{
Timer scoped_timer (__PRETTY_FUNCTION__, __PRETTY_FUNCTION__);
@@ -1506,9 +1507,9 @@ ScriptInterpreterPython::Initialize ()
}
- // This function is in the C++ output file generated by SWIG after it is
- // run on all of the headers in "lldb/API/SB*.h"
- init_lldb ();
+ // Initialize SWIG after setting up python
+ assert (g_swig_init_callback != NULL);
+ g_swig_init_callback ();
// Update the path python uses to search for modules to include the current directory.
@@ -1536,20 +1537,20 @@ ScriptInterpreterPython::Initialize ()
stdin_tty_state.Restore();
}
-void
-ScriptInterpreterPython::Terminate ()
-{
- // We are intentionally NOT calling Py_Finalize here (this would be the logical place to call it). Calling
- // Py_Finalize here causes test suite runs to seg fault: The test suite runs in Python. It registers
- // SBDebugger::Terminate to be called 'at_exit'. When the test suite Python harness finishes up, it calls
- // Py_Finalize, which calls all the 'at_exit' registered functions. SBDebugger::Terminate calls Debugger::Terminate,
- // which calls lldb::Terminate, which calls ScriptInterpreter::Terminate, which calls
- // ScriptInterpreterPython::Terminate. So if we call Py_Finalize here, we end up with Py_Finalize being called from
- // within Py_Finalize, which results in a seg fault.
- //
- // Since this function only gets called when lldb is shutting down and going away anyway, the fact that we don't
- // actually call Py_Finalize should not cause any problems (everything should shut down/go away anyway when the
- // process exits).
- //
-// Py_Finalize ();
-}
+//void
+//ScriptInterpreterPython::Terminate ()
+//{
+// // We are intentionally NOT calling Py_Finalize here (this would be the logical place to call it). Calling
+// // Py_Finalize here causes test suite runs to seg fault: The test suite runs in Python. It registers
+// // SBDebugger::Terminate to be called 'at_exit'. When the test suite Python harness finishes up, it calls
+// // Py_Finalize, which calls all the 'at_exit' registered functions. SBDebugger::Terminate calls Debugger::Terminate,
+// // which calls lldb::Terminate, which calls ScriptInterpreter::Terminate, which calls
+// // ScriptInterpreterPython::Terminate. So if we call Py_Finalize here, we end up with Py_Finalize being called from
+// // within Py_Finalize, which results in a seg fault.
+// //
+// // Since this function only gets called when lldb is shutting down and going away anyway, the fact that we don't
+// // actually call Py_Finalize should not cause any problems (everything should shut down/go away anyway when the
+// // process exits).
+// //
+//// Py_Finalize ();
+//}
diff --git a/lldb/source/lldb.cpp b/lldb/source/lldb.cpp
index b2c2de9bc1d..6f219d446ff 100644
--- a/lldb/source/lldb.cpp
+++ b/lldb/source/lldb.cpp
@@ -17,7 +17,6 @@
#include "lldb/Core/Timer.h"
#include "lldb/Host/Host.h"
#include "lldb/Host/Mutex.h"
-#include "lldb/Interpreter/ScriptInterpreter.h"
#include "lldb/Target/Target.h"
#include "lldb/Target/Thread.h"
@@ -85,7 +84,6 @@ lldb_private::Initialize ()
ArchDefaultUnwindPlan_x86_64::Initialize();
ArchDefaultUnwindPlan_i386::Initialize();
ArchVolatileRegs_x86::Initialize();
- ScriptInterpreter::Initialize ();
#if defined (__APPLE__)
ABIMacOSX_i386::Initialize();
@@ -142,7 +140,6 @@ lldb_private::Terminate ()
ArchDefaultUnwindPlan_i386::Terminate();
ArchDefaultUnwindPlan_x86_64::Terminate();
ArchVolatileRegs_x86::Terminate();
- ScriptInterpreter::Terminate ();
#if defined (__APPLE__)
DynamicLoaderMacOSXDYLD::Terminate();
@@ -172,13 +169,13 @@ lldb_private::Terminate ()
Log::Terminate();
}
-extern "C" const double LLDBVersionNumber;
+extern "C" const double liblldb_coreVersionNumber;
const char *
lldb_private::GetVersion ()
{
static char g_version_string[32];
if (g_version_string[0] == '\0')
- ::snprintf (g_version_string, sizeof(g_version_string), "LLDB-%g", LLDBVersionNumber);
+ ::snprintf (g_version_string, sizeof(g_version_string), "LLDB-%g", liblldb_coreVersionNumber);
return g_version_string;
}
diff --git a/lldb/test/abbreviation_tests/TestAbbreviations.py b/lldb/test/abbreviation_tests/TestAbbreviations.py
index ca801f280de..ed2cf5718f4 100644
--- a/lldb/test/abbreviation_tests/TestAbbreviations.py
+++ b/lldb/test/abbreviation_tests/TestAbbreviations.py
@@ -47,7 +47,7 @@ class AbbreviationsTestCase(TestBase):
self.expect("lo li",
- startstr = "Logging categories for 'lldb':")
+ startstr = "Logging categories for ")
self.runCmd("se se prompt Sycamore> ")
self.expect("se sh prompt",
diff --git a/lldb/tools/debugserver/source/RNBRemote.cpp b/lldb/tools/debugserver/source/RNBRemote.cpp
index ad5640d848a..4d061fdb741 100644
--- a/lldb/tools/debugserver/source/RNBRemote.cpp
+++ b/lldb/tools/debugserver/source/RNBRemote.cpp
@@ -3351,78 +3351,6 @@ RNBRemote::HandlePacket_qHostInfo (const char *p)
strm << "ptrsize:" << std::dec << sizeof(void *) << ';';
return SendPacket (strm.str());
}
-//
-//struct ProcessInfo
-//{
-// nub_process_t pid;
-// std::string name;
-// std::string user;
-// std::string group;
-// uint32_t cpu; // mach-o cpu type
-// uint32_t sub; // mach-o cpu subtype
-//
-// void
-// Clear()
-// {
-// pid = 0;
-// name.clear();
-// user.clear();
-// group.clear();
-// cpu = 0;
-// sub = 0;
-// }
-//};
-//
-//static bool
-//GetMacOSXProcessName (ProcessInfo &proc_info,
-// const char *name_match) // can be NULL
-//{
-// char process_name[MAXCOMLEN * 2 + 1];
-// int name_len = ::proc_name(proc_info.pid, process_name, MAXCOMLEN * 2);
-// if (name_len == 0)
-// return false;
-//
-// if (name_match == NULL || strcmp (name_match, process_name) == 0)
-// {
-// proc_info.name.assign (process_name, name_len);
-// return true;
-// }
-// proc_info.name.clear();
-// return false;
-//}
-//
-//
-//static bool
-//GetMacOSXProcessCPUType (ProcessInfo &proc_info)
-//{
-// // Make a new mib to stay thread safe
-// int mib[CTL_MAXNAME]={0,};
-// size_t mib_len = CTL_MAXNAME;
-// if (::sysctlnametomib("sysctl.proc_cputype", mib, &mib_len))
-// return false;
-//
-// mib[mib_len] = proc_info.pid;
-// mib_len++;
-//
-// cpu_type_t cpu = 0;
-// cpu_type_t sub = 0;
-// size_t cpu_len = sizeof(cpu);
-// if (::sysctl (mib, mib_len, &cpu, &cpu_len, 0, 0) == 0)
-// {
-// switch (cpu)
-// {
-// case llvm::MachO::CPUTypeI386: sub = llvm::MachO::CPUSubType_I386_ALL; break;
-// case llvm::MachO::CPUTypeX86_64: sub = llvm::MachO::CPUSubType_X86_64_ALL; break;
-// default: break;
-// }
-// proc_info.cpu = cpu;
-// proc_info.sub = sub;
-// return true;
-// }
-// proc_info.cpu = 0;
-// proc_info.sub = 0;
-// return false;
-//}
rnb_err_t
RNBRemote::HandlePacket_qProcessInfo (const char *p)
OpenPOWER on IntegriCloud