forked from qt-creator/qt-creator
Change-Id: I1e65b2f75ff4ebde17f7d8506193cb47474335f6 Reviewed-by: hjk <hjk121@nokiamail.com>
94 lines
1.8 KiB
Python
94 lines
1.8 KiB
Python
|
|
import binascii
|
|
import inspect
|
|
import os
|
|
import traceback
|
|
|
|
cdbLoaded = False
|
|
lldbLoaded = False
|
|
gdbLoaded = False
|
|
|
|
#######################################################################
|
|
#
|
|
# Helpers
|
|
#
|
|
#######################################################################
|
|
|
|
currentDir = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe())))
|
|
#print "DIR: %s " % currentDir
|
|
|
|
def warn(message):
|
|
print "XXX: %s\n" % message.encode("latin1")
|
|
|
|
PointerCode = None
|
|
ArrayCode = None
|
|
StructCode = None
|
|
UnionCode = None
|
|
EnumCode = None
|
|
FlagsCode = None
|
|
FunctionCode = None
|
|
IntCode = None
|
|
FloatCode = None
|
|
VoidCode = None
|
|
SetCode = None
|
|
RangeCode = None
|
|
StringCode = None
|
|
BitStringCode = None
|
|
ErrorTypeCode = None
|
|
MethodCode = None
|
|
MethodPointerCode = None
|
|
MemberPointerCode = None
|
|
ReferenceCode = None
|
|
CharCode = None
|
|
BoolCode = None
|
|
ComplexCode = None
|
|
TypedefCode = None
|
|
NamespaceCode = None
|
|
SimpleValueCode = None # LLDB only
|
|
|
|
failReasons = []
|
|
|
|
# CDB
|
|
if False:
|
|
try:
|
|
import cdb_bridge
|
|
cdbLoaded = True
|
|
except:
|
|
failReasons.append(traceback.format_exc())
|
|
|
|
# GDB
|
|
if not cdbLoaded:
|
|
try:
|
|
import gdb
|
|
execfile(os.path.join(currentDir, "gbridge.py"))
|
|
gdbLoaded = True
|
|
except:
|
|
failReasons.append(traceback.format_exc())
|
|
|
|
|
|
# LLDB
|
|
if not gdbLoaded and not cdbLoaded:
|
|
try:
|
|
execfile(os.path.join(currentDir, "lbridge.py"))
|
|
lldbLoaded = True
|
|
except:
|
|
failReasons.append(traceback.format_exc())
|
|
|
|
|
|
# One is sufficient.
|
|
#if cdbLoaded or gdbLoaded or lldbLoaded:
|
|
# failReasons = []
|
|
|
|
try:
|
|
execfile(os.path.join(currentDir, "dumper.py"))
|
|
execfile(os.path.join(currentDir, "qttypes.py"))
|
|
bbsetup()
|
|
except:
|
|
failReasons.append(traceback.format_exc())
|
|
|
|
|
|
if len(failReasons):
|
|
print "CANNOT ACCESS ANY DEBUGGER BACKEND:\n %s" % "\n".join(failReasons)
|
|
|
|
|