diff options
Diffstat (limited to 'Python/pythonmain.c')
-rw-r--r-- | Python/pythonmain.c | 36 |
1 files changed, 31 insertions, 5 deletions
diff --git a/Python/pythonmain.c b/Python/pythonmain.c index 760e5da..ac1d86a 100644 --- a/Python/pythonmain.c +++ b/Python/pythonmain.c @@ -26,8 +26,9 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. #include "allobjects.h" -extern int debugging; /* Needed by parser.c */ -extern int verbose; /* Needed by import.c */ +extern int debugging; /* Defined in parser.c */ +extern int verbose; /* Defined in import.c */ +extern int killprint; /* Defined in ceval.c */ /* Interface to getopt(): */ extern int optind; @@ -52,10 +53,14 @@ main(argc, argv) debugging = 1; if ((p = getenv("PYTHONVERBOSE")) && *p != '\0') verbose = 1; + if ((p = getenv("PYTHONINSPECT")) && *p != '\0') + inspect = 1; + if ((p = getenv("PYTHONKILLPRINT")) && *p != '\0') + killprint = 1; - initargs(&argc, &argv); /* Defined in config*.c */ + initargs(&argc, &argv); - while ((c = getopt(argc, argv, "c:div")) != EOF) { + while ((c = getopt(argc, argv, "c:dikv")) != EOF) { if (c == 'c') { /* -c is the last option; following arguments that look like options are left for the @@ -77,6 +82,10 @@ main(argc, argv) inspect++; break; + case 'k': + killprint++; + break; + case 'v': verbose++; break; @@ -85,8 +94,25 @@ main(argc, argv) default: fprintf(stderr, - "usage: %s [-c cmd | file | -] [arg] ...\n", +"usage: %s [-d] [-i] [-k] [-v] [-c cmd | file | -] [arg] ...\n", argv[0]); + fprintf(stderr, "\ +\n\ +Options and arguments (and corresponding environment variables):\n\ +-d : debug output from parser (also PYTHONDEBUG=x)\n\ +-i : inspect interactively after running script (also PYTHONINSPECT=x)\n\ +-k : kill printing expression statement (also PYTHONKILLPRINT=x)\n\ +-v : verbose (trace import statements) (also PYTHONVERBOSE=x)\n\ +-c cmd : program passed in as string (terminates option list)\n\ +file : program read from script file\n\ +- : program read from stdin (default; interactive mode if a tty)\n\ +arg ...: arguments passed to program in sys.argv[1:]\n\ +\n\ +Other environment variables:\n\ +PYTHONSTARTUP: file executed on interactive startup (no default)\n\ +PYTHONPATH : colon-separated list of directories prefixed to the\n\ + default module search path. The result is sys.path.\n\ +"); exit(2); /*NOTREACHED*/ |