From 0e1de3d6e8ddf5030b2a3590c3b80dcd5cfd404d Mon Sep 17 00:00:00 2001 From: Unbit Date: Tue, 21 May 2013 00:37:02 +0200 Subject: [PATCH] added __name__ and sys.argv[0] in pypy setup script --- core/utils.c | 4 ++++ plugins/pypy/pypy_setup.py | 5 +++++ uwsgi.h | 2 ++ 3 files changed, 11 insertions(+) diff --git a/core/utils.c b/core/utils.c index 36f1b705..67195122 100644 --- a/core/utils.c +++ b/core/utils.c @@ -3984,3 +3984,7 @@ void create_msg_pipe(int *fd, int bufsize) { } } } + +char *uwsgi_binary_path() { + return uwsgi.binary_path ? uwsgi.binary_path : "uwsgi"; +} diff --git a/plugins/pypy/pypy_setup.py b/plugins/pypy/pypy_setup.py index ebc57eed..7ec672a5 100644 --- a/plugins/pypy/pypy_setup.py +++ b/plugins/pypy/pypy_setup.py @@ -5,6 +5,7 @@ sys.path.extend(os.environ.get('PYTHONPATH','').split(os.pathsep)) import imp import traceback +__name__ = '__main__' mainmodule = type(sys)('__main__') sys.modules['__main__'] = mainmodule @@ -32,6 +33,8 @@ struct uwsgi_opt { int configured; }; +char *uwsgi_binary_path(); + int uwsgi_response_write_body_do(void *, char *, uint64_t); int uwsgi_response_sendfile_do_can_close(void *, int, uint64_t, uint64_t, int); int uwsgi_response_prepare_headers(void *, char *, uint16_t); @@ -65,6 +68,8 @@ it sucks, i will fix it in the near future... """ wsgi_application = None +sys.argv.insert(0, ffi.string(lib.uwsgi_binary_path())) + """ load a wsgi module """ diff --git a/uwsgi.h b/uwsgi.h index b8b7cb75..6fde5b4b 100644 --- a/uwsgi.h +++ b/uwsgi.h @@ -4015,6 +4015,8 @@ void uwsgi_mule_run(void); void uwsgi_spooler_run(void); void uwsgi_takeover(void); +char *uwsgi_binary_path(void); + void uwsgi_check_emperor(void); #ifdef UWSGI_AS_SHARED_LIBRARY int uwsgi_init(int, char **, char **);