config/pythonpath.py
author Joel Maher <jmaher@mozilla.com>
Wed, 06 Jan 2010 12:01:18 -0600
changeset 36885 85cd0f29742121fee9e836be53695745fe4051f0
parent 28231 6461b3507d98608fd398992b0306de679420fb4b
child 72474 4edf5956780be0ab7bc2268adea9c87034c265e7
permissions -rw-r--r--
Bug 530475 - convert all python test harnesses to classes for easier reuse, patch=jmaher, r=ted

"""
Run a python script, adding extra directories to the python path.
"""

import sys, os

def usage():
    print >>sys.stderr, "pythonpath.py -I directory script.py [args...]"
    sys.exit(150)

paths = []

while True:
    try:
        arg = sys.argv[1]
    except IndexError:
        usage()

    if arg == '-I':
        del sys.argv[1]
        try:
            path = sys.argv.pop(1)
        except IndexError:
            usage()

        paths.append(path)
        continue

    if arg.startswith('-I'):
        path = sys.argv.pop(1)[2:]
        paths.append(path)
        continue

    break

sys.argv.pop(0)
script = sys.argv[0]

sys.path[0:0] = [os.path.dirname(script)] + paths
execfile(script, {'__name__': '__main__', '__file__': script})