1234567891011121314151617181920212223242526272829303132333435 |
- """
- Launch the Python script on the command line after
- setuptools is bootstrapped via import.
- """
- # Note that setuptools gets imported implicitly by the
- # invocation of this script using python -m setuptools.launch
- import tokenize
- import sys
- def run():
- """
- Run the script in sys.argv[1] as if it had
- been invoked naturally.
- """
- __builtins__
- script_name = sys.argv[1]
- namespace = dict(
- __file__=script_name,
- __name__='__main__',
- __doc__=None,
- )
- sys.argv[:] = sys.argv[1:]
- open_ = getattr(tokenize, 'open', open)
- script = open_(script_name).read()
- norm_script = script.replace('\\r\\n', '\\n')
- code = compile(norm_script, script_name, 'exec')
- exec(code, namespace)
- if __name__ == '__main__':
- run()
|