From 74a560bfe000c60dedd513604cea372dbac6590a Mon Sep 17 00:00:00 2001 From: Michael Lauer Date: Wed, 16 Jul 2008 07:51:03 +0000 Subject: python 2.5.2 add parameter to run python in unoptimized bytecode mode Thanks to the default-is-optimized patch, this python was running in optimized mode all the time, there was no way to run it unoptimized. However this is necessary at times (e.g. if you want to run code that contains 'assert' statements, since optimized bytecode strips these out), so I added a new command line parameter 'N' to python that allows you to run it unoptimized. --- .../python/python-2.5.2/default-is-optimized.patch | 41 ++++++++++++++++++++-- 1 file changed, 38 insertions(+), 3 deletions(-) (limited to 'packages/python/python-2.5.2/default-is-optimized.patch') diff --git a/packages/python/python-2.5.2/default-is-optimized.patch b/packages/python/python-2.5.2/default-is-optimized.patch index 6beeb6e022..072bf0b059 100644 --- a/packages/python/python-2.5.2/default-is-optimized.patch +++ b/packages/python/python-2.5.2/default-is-optimized.patch @@ -1,7 +1,7 @@ -Index: Python-2.5.1/Python/compile.c +Index: Python-2.5.2/Python/compile.c =================================================================== ---- Python-2.5.1.orig/Python/compile.c -+++ Python-2.5.1/Python/compile.c +--- Python-2.5.2.orig/Python/compile.c ++++ Python-2.5.2/Python/compile.c @@ -30,7 +30,7 @@ #include "symtable.h" #include "opcode.h" @@ -11,3 +11,38 @@ Index: Python-2.5.1/Python/compile.c /* ISSUES: +Index: Python-2.5.2/Modules/main.c +=================================================================== +--- Python-2.5.2.orig/Modules/main.c ++++ Python-2.5.2/Modules/main.c +@@ -40,7 +40,7 @@ static char **orig_argv; + static int orig_argc; + + /* command line options */ +-#define BASE_OPTS "c:dEhim:OQ:StuUvVW:xX?" ++#define BASE_OPTS "c:dEhim:ONQ:StuUvVW:xX?" + + #ifndef RISCOS + #define PROGRAM_OPTS BASE_OPTS +@@ -68,8 +68,7 @@ Options and arguments (and corresponding + "; + static char *usage_2 = "\ + -m mod : run library module as a script (terminates option list)\n\ +--O : optimize generated bytecode (a tad; also PYTHONOPTIMIZE=x)\n\ +--OO : remove doc-strings in addition to the -O optimizations\n\ ++-N : do NOT optimize generated bytecode\n\ + -Q arg : division options: -Qold (default), -Qwarn, -Qwarnall, -Qnew\n\ + -S : don't imply 'import site' on initialization\n\ + -t : issue warnings about inconsistent tab usage (-tt: issue errors)\n\ +@@ -302,7 +301,10 @@ Py_Main(int argc, char **argv) + break; + + case 'O': +- Py_OptimizeFlag++; ++ fprintf(stderr, "-O is already default in this version. Ignoring\n"); ++ ++ case 'N': ++ Py_OptimizeFlag=0; + break; + + case 'S': -- cgit v1.2.3