blob: cf7ac979966dad753028a44a49b6d0cf8bb4aeea [file] [log] [blame]
from __future__ import print_function
import sys
import os
import 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