xref: /llvm-project/lldb/bindings/python/lldb-python (revision bbef51eb43c2e8f8e36fbbc0d0b4cca75b6f0863)
1*bbef51ebSLawrence D'Anna#!/usr/bin/env python3
2*bbef51ebSLawrence D'Anna
3*bbef51ebSLawrence D'Annaimport subprocess
4*bbef51ebSLawrence D'Annaimport os
5*bbef51ebSLawrence D'Annaimport sys
6*bbef51ebSLawrence D'Annaimport json
7*bbef51ebSLawrence D'Anna
8*bbef51ebSLawrence D'Annalldb = os.path.join(os.path.dirname(__file__), 'lldb')
9*bbef51ebSLawrence D'Anna
10*bbef51ebSLawrence D'Annainfo_json = subprocess.run([lldb, "-l", "python", "-print-script-interpreter-info"],
11*bbef51ebSLawrence D'Anna    check=True, stdout=subprocess.PIPE, encoding='utf8').stdout
12*bbef51ebSLawrence D'Annainfo = json.loads(info_json)
13*bbef51ebSLawrence D'Anna
14*bbef51ebSLawrence D'Annaos.environ["PYTHONPATH"] = (
15*bbef51ebSLawrence D'Anna    info["lldb-pythonpath"] + os.path.pathsep + os.environ.get("PYTHONPATH", ""))
16*bbef51ebSLawrence D'Anna
17*bbef51ebSLawrence D'Annaos.execl(info["executable"], info["executable"], *sys.argv[1:])
18