summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/python/python
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2013-05-08 16:29:48 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-05-10 11:43:12 +0100
commit2f7c588c5a8148eec37405186c34bdd1425ea30b (patch)
treeef4e7ba977d961740172ea04d977ae43c6d5f42f /meta/recipes-devtools/python/python
parenta86b00651f825c51e381b2e009269d014486cd55 (diff)
downloadpoky-2f7c588c5a8148eec37405186c34bdd1425ea30b.tar.gz
python: remove the default optimization
We had hard coded python-native and python's default optimization to 1, which made the "assert" statement didn't work, and removed the "-O/-OO" (optimization options), the target python had a "-N" option to disable the default optimization, but the native python didn't. I think that we can set the environment variable PYTHONOPTIMIZE or use "python -O" if we need to optimize, but I'm not sure whether we need to set it by default, it would confuse the user or cause/hide unexpected problems if the "assert" doesn't work. [YOCTO #4427] (From OE-Core rev: 165ed464bbb9bf985dde9d8c15d000809901fff6) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/python/python')
-rw-r--r--meta/recipes-devtools/python/python/04-default-is-optimized.patch60
-rw-r--r--meta/recipes-devtools/python/python/99-ignore-optimization-flag.patch21
2 files changed, 0 insertions, 81 deletions
diff --git a/meta/recipes-devtools/python/python/04-default-is-optimized.patch b/meta/recipes-devtools/python/python/04-default-is-optimized.patch
deleted file mode 100644
index 7ce819a3c9..0000000000
--- a/meta/recipes-devtools/python/python/04-default-is-optimized.patch
+++ /dev/null
@@ -1,60 +0,0 @@
1Upstream-Status: Inappropriate [embedded specific]
2
3Updated original patch for python 2.7.3
4
5Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
62012/05/01
7
8
9# when compiling for an embedded system, we need every bit of
10# performance we can get. default to optimized with the option
11# of opt-out.
12# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
13
14Index: Python-2.7.3/Python/compile.c
15===================================================================
16--- Python-2.7.3.orig/Python/compile.c
17+++ Python-2.7.3/Python/compile.c
18@@ -32,7 +32,7 @@
19 #include "symtable.h"
20 #include "opcode.h"
21
22-int Py_OptimizeFlag = 0;
23+int Py_OptimizeFlag = 1;
24
25 #define DEFAULT_BLOCK_SIZE 16
26 #define DEFAULT_BLOCKS 8
27Index: Python-2.7.3/Modules/main.c
28===================================================================
29--- Python-2.7.3.orig/Modules/main.c
30+++ Python-2.7.3/Modules/main.c
31@@ -40,7 +40,7 @@ static char **orig_argv;
32 static int orig_argc;
33
34 /* command line options */
35-#define BASE_OPTS "3bBc:dEhiJm:OQ:RsStuUvVW:xX?"
36+#define BASE_OPTS "3bBc:dEhiJm:NOQ:RsStuUvVW:xX?"
37
38 #ifndef RISCOS
39 #define PROGRAM_OPTS BASE_OPTS
40@@ -69,8 +69,7 @@ Options and arguments (and corresponding
41 static char *usage_2 = "\
42 if stdin does not appear to be a terminal; also PYTHONINSPECT=x\n\
43 -m mod : run library module as a script (terminates option list)\n\
44--O : optimize generated bytecode slightly; also PYTHONOPTIMIZE=x\n\
45--OO : remove doc-strings in addition to the -O optimizations\n\
46+-N : do NOT optimize generated bytecode\n\
47 -R : use a pseudo-random salt to make hash() values of various types be\n\
48 unpredictable between separate invocations of the interpreter, as\n\
49 a defense against denial-of-service attacks\n\
50@@ -365,8 +364,8 @@ Py_Main(int argc, char **argv)
51
52 /* case 'J': reserved for Jython */
53
54- case 'O':
55- Py_OptimizeFlag++;
56+ case 'N':
57+ Py_OptimizeFlag=0;
58 break;
59
60 case 'B':
diff --git a/meta/recipes-devtools/python/python/99-ignore-optimization-flag.patch b/meta/recipes-devtools/python/python/99-ignore-optimization-flag.patch
deleted file mode 100644
index a5d9812caf..0000000000
--- a/meta/recipes-devtools/python/python/99-ignore-optimization-flag.patch
+++ /dev/null
@@ -1,21 +0,0 @@
1Upstream-Status: Inappropriate [embedded specific]
2
3# Reinstate the empty -O option to fix weird mixing of native and target
4# binaries and libraries with LD_LIBRARY_PATH when host==target
5#
6# Signed-off-by: Denys Dmytriyenko <denis@denix.org>
7
8Index: Python-2.6.6/Modules/main.c
9===================================================================
10--- Python-2.6.6.orig/Modules/main.c
11+++ Python-2.6.6/Modules/main.c
12@@ -327,6 +327,9 @@ Py_Main(int argc, char **argv)
13
14 /* case 'J': reserved for Jython */
15
16+ case 'O': /* ignore it */
17+ break;
18+
19 case 'N':
20 Py_OptimizeFlag=0;
21 break;