blob: c6ea8aa746cfdce59517b9b0f1658308b2d9ab46 [file] [log] [blame]
#!/usr/bin/env python
# Copyright 2018 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import os
import subprocess
import sys
# python run_with_pythonpath.py -I path1 ... -I pathN foo/bar/baz.py args...
# ==> Run "python foo/bar/baz.py args..." with PYTHONPATH=path1:..:pathN
def main():
python_paths = []
args = sys.argv[1:]
while len(args) >= 2 and args[0] == '-I':
python_paths.append(args[1])
args = args[2:]
env = os.environ.copy()
if len(python_paths) > 0:
existing_pp = (
os.pathsep + env['PYTHONPATH']) if 'PYTHONPATH' in env else ''
env['PYTHONPATH'] = os.pathsep.join(python_paths) + existing_pp
sys.exit(subprocess.call([sys.executable] + args, env=env))
if __name__ == '__main__':
main()