diff options
Diffstat (limited to 'e/lib/python3.11/site-packages/setuptools/launch.py')
-rw-r--r-- | e/lib/python3.11/site-packages/setuptools/launch.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/e/lib/python3.11/site-packages/setuptools/launch.py b/e/lib/python3.11/site-packages/setuptools/launch.py new file mode 100644 index 0000000..0208fdf --- /dev/null +++ b/e/lib/python3.11/site-packages/setuptools/launch.py @@ -0,0 +1,36 @@ +""" +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) + with open_(script_name) as fid: + script = fid.read() + norm_script = script.replace('\\r\\n', '\\n') + code = compile(norm_script, script_name, 'exec') + exec(code, namespace) + + +if __name__ == '__main__': + run() |