xref: /openbsd-src/gnu/llvm/lldb/bindings/python/lldb-python (revision f6aab3d83b51b91c24247ad2c2573574de475a82)
1*f6aab3d8Srobert#!/usr/bin/env python3
2*f6aab3d8Srobert
3*f6aab3d8Srobertimport subprocess
4*f6aab3d8Srobertimport os
5*f6aab3d8Srobertimport sys
6*f6aab3d8Srobertimport json
7*f6aab3d8Srobert
8*f6aab3d8Srobertlldb = os.path.join(os.path.dirname(__file__), 'lldb')
9*f6aab3d8Srobert
10*f6aab3d8Srobertinfo_json = subprocess.run([lldb, "-l", "python", "-print-script-interpreter-info"],
11*f6aab3d8Srobert    check=True, stdout=subprocess.PIPE, encoding='utf8').stdout
12*f6aab3d8Srobertinfo = json.loads(info_json)
13*f6aab3d8Srobert
14*f6aab3d8Srobertos.environ["PYTHONPATH"] = (
15*f6aab3d8Srobert    info["lldb-pythonpath"] + os.path.pathsep + os.environ.get("PYTHONPATH", ""))
16*f6aab3d8Srobert
17*f6aab3d8Srobertos.execl(info["executable"], info["executable"], *sys.argv[1:])
18