summaryrefslogtreecommitdiffstats
path: root/lldb/utils/vim-lldb/python-vim-lldb/import_lldb.py
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/utils/vim-lldb/python-vim-lldb/import_lldb.py')
-rw-r--r--lldb/utils/vim-lldb/python-vim-lldb/import_lldb.py112
1 files changed, 61 insertions, 51 deletions
diff --git a/lldb/utils/vim-lldb/python-vim-lldb/import_lldb.py b/lldb/utils/vim-lldb/python-vim-lldb/import_lldb.py
index a2145d50466..41cb42b1bb3 100644
--- a/lldb/utils/vim-lldb/python-vim-lldb/import_lldb.py
+++ b/lldb/utils/vim-lldb/python-vim-lldb/import_lldb.py
@@ -1,61 +1,71 @@
# Locate and load the lldb python module
-import os, sys
+import os
+import sys
+
def import_lldb():
- """ Find and import the lldb modules. This function tries to find the lldb module by:
- 1. Simply by doing "import lldb" in case the system python installation is aware of lldb. If that fails,
- 2. Executes the lldb executable pointed to by the LLDB environment variable (or if unset, the first lldb
- on PATH") with the -P flag to determine the PYTHONPATH to set. If the lldb executable returns a valid
- path, it is added to sys.path and the import is attempted again. If that fails, 3. On Mac OS X the
- default Xcode 4.5 installation path.
- """
-
- # Try simple 'import lldb', in case of a system-wide install or a pre-configured PYTHONPATH
- try:
- import lldb
- return True
- except ImportError:
- pass
-
- # Allow overriding default path to lldb executable with the LLDB environment variable
- lldb_executable = 'lldb'
- if 'LLDB' in os.environ and os.path.exists(os.environ['LLDB']):
- lldb_executable = os.environ['LLDB']
-
- # Try using builtin module location support ('lldb -P')
- from subprocess import check_output, CalledProcessError
- try:
- with open(os.devnull, 'w') as fnull:
- lldb_minus_p_path = check_output("%s -P" % lldb_executable, shell=True, stderr=fnull).strip()
- if not os.path.exists(lldb_minus_p_path):
- #lldb -P returned invalid path, probably too old
- pass
- else:
- sys.path.append(lldb_minus_p_path)
- import lldb
- return True
- except CalledProcessError:
- # Cannot run 'lldb -P' to determine location of lldb python module
- pass
- except ImportError:
- # Unable to import lldb module from path returned by `lldb -P`
- pass
-
- # On Mac OS X, use the try the default path to XCode lldb module
- if "darwin" in sys.platform:
- xcode_python_path = "/Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/Current/Resources/Python/"
- sys.path.append(xcode_python_path)
+ """ Find and import the lldb modules. This function tries to find the lldb module by:
+ 1. Simply by doing "import lldb" in case the system python installation is aware of lldb. If that fails,
+ 2. Executes the lldb executable pointed to by the LLDB environment variable (or if unset, the first lldb
+ on PATH") with the -P flag to determine the PYTHONPATH to set. If the lldb executable returns a valid
+ path, it is added to sys.path and the import is attempted again. If that fails, 3. On Mac OS X the
+ default Xcode 4.5 installation path.
+ """
+
+ # Try simple 'import lldb', in case of a system-wide install or a
+ # pre-configured PYTHONPATH
try:
- import lldb
- return True
+ import lldb
+ return True
except ImportError:
- # Unable to import lldb module from default Xcode python path
- pass
+ pass
+
+ # Allow overriding default path to lldb executable with the LLDB
+ # environment variable
+ lldb_executable = 'lldb'
+ if 'LLDB' in os.environ and os.path.exists(os.environ['LLDB']):
+ lldb_executable = os.environ['LLDB']
+
+ # Try using builtin module location support ('lldb -P')
+ from subprocess import check_output, CalledProcessError
+ try:
+ with open(os.devnull, 'w') as fnull:
+ lldb_minus_p_path = check_output(
+ "%s -P" %
+ lldb_executable,
+ shell=True,
+ stderr=fnull).strip()
+ if not os.path.exists(lldb_minus_p_path):
+ # lldb -P returned invalid path, probably too old
+ pass
+ else:
+ sys.path.append(lldb_minus_p_path)
+ import lldb
+ return True
+ except CalledProcessError:
+ # Cannot run 'lldb -P' to determine location of lldb python module
+ pass
+ except ImportError:
+ # Unable to import lldb module from path returned by `lldb -P`
+ pass
+
+ # On Mac OS X, use the try the default path to XCode lldb module
+ if "darwin" in sys.platform:
+ xcode_python_path = "/Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/Current/Resources/Python/"
+ sys.path.append(xcode_python_path)
+ try:
+ import lldb
+ return True
+ except ImportError:
+ # Unable to import lldb module from default Xcode python path
+ pass
- return False
+ return False
if not import_lldb():
- import vim
- vim.command('redraw | echo "%s"' % " Error loading lldb module; vim-lldb will be disabled. Check LLDB installation or set LLDB environment variable.")
+ import vim
+ vim.command(
+ 'redraw | echo "%s"' %
+ " Error loading lldb module; vim-lldb will be disabled. Check LLDB installation or set LLDB environment variable.")
OpenPOWER on IntegriCloud