forked from OSchip/llvm-project
32 lines
946 B
Python
32 lines
946 B
Python
import sys,os,lldb
|
|
def check_has_dir_in_path(dirname):
|
|
return sys.path.__contains__(dirname);
|
|
|
|
def ensure_has_dir_in_path(dirname):
|
|
dirname = os.path.abspath(dirname)
|
|
if not (check_has_dir_in_path(dirname)):
|
|
sys.path.append(dirname);
|
|
|
|
def do_import(debugger,modname):
|
|
if (len(modname) > 4 and modname[-4:] == '.pyc'):
|
|
modname = modname[:-4]
|
|
if (len(modname) > 3 and modname[-3:] == '.py'):
|
|
modname = modname[:-3]
|
|
debugger.HandleCommand("script import " + modname)
|
|
|
|
def pyimport_cmd(debugger, args, result, dict):
|
|
"""Import a Python module given its full path"""
|
|
print 'WARNING: obsolete feature - use native command "command script import"'
|
|
if args == "":
|
|
return "no module path given";
|
|
if not (os.sep in args):
|
|
modname = args
|
|
ensure_has_dir_in_path('.')
|
|
else:
|
|
endofdir = args.rfind(os.sep)
|
|
modname = args[endofdir+1:]
|
|
args = args[0:endofdir]
|
|
ensure_has_dir_in_path(args)
|
|
do_import(debugger,modname)
|
|
return None
|