diff options
author | Robert Yang <liezhi.yang@windriver.com> | 2013-05-08 16:29:48 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-05-10 11:41:10 +0100 |
commit | 165ed464bbb9bf985dde9d8c15d000809901fff6 (patch) | |
tree | 702a13c9d11a1e6df6f703a950ec64b922a302d5 /meta/recipes-devtools | |
parent | 902d3fa57d4659ee12aac80246dcaca5c45f9d8c (diff) | |
download | openembedded-core-165ed464bbb9bf985dde9d8c15d000809901fff6.tar.gz openembedded-core-165ed464bbb9bf985dde9d8c15d000809901fff6.tar.bz2 openembedded-core-165ed464bbb9bf985dde9d8c15d000809901fff6.zip |
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]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools')
5 files changed, 1 insertions, 104 deletions
diff --git a/meta/recipes-devtools/python/python-native/04-default-is-optimized.patch b/meta/recipes-devtools/python/python-native/04-default-is-optimized.patch deleted file mode 100644 index 8fe147e0ef..0000000000 --- a/meta/recipes-devtools/python/python-native/04-default-is-optimized.patch +++ /dev/null @@ -1,20 +0,0 @@ -Upstream-Status: Inappropriate [embedded specific] - -# When compiling for an embedded system, we need every bit of -# performance we can get. default to optimized with the option -# of opt-out. -# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de> - -Index: Python-2.6.1/Python/compile.c -=================================================================== ---- Python-2.6.1.orig/Python/compile.c -+++ Python-2.6.1/Python/compile.c -@@ -32,7 +32,7 @@ - #include "symtable.h" - #include "opcode.h" - --int Py_OptimizeFlag = 0; -+int Py_OptimizeFlag = 1; - - #define DEFAULT_BLOCK_SIZE 16 - #define DEFAULT_BLOCKS 8 diff --git a/meta/recipes-devtools/python/python-native_2.7.3.bb b/meta/recipes-devtools/python/python-native_2.7.3.bb index 162ecedb73..722d92c096 100644 --- a/meta/recipes-devtools/python/python-native_2.7.3.bb +++ b/meta/recipes-devtools/python/python-native_2.7.3.bb @@ -4,7 +4,7 @@ EXTRANATIVEPATH += "bzip2-native" DEPENDS = "openssl-native bzip2-replacement-native zlib-native readline-native sqlite3-native" PR = "${INC_PR}.1" -SRC_URI += "file://04-default-is-optimized.patch \ +SRC_URI += "\ file://05-enable-ctypes-cross-build.patch \ file://06-ctypes-libffi-fix-configure.patch \ file://10-distutils-fix-swig-parameter.patch \ 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 @@ -Upstream-Status: Inappropriate [embedded specific] - -Updated original patch for python 2.7.3 - -Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> -2012/05/01 - - -# when compiling for an embedded system, we need every bit of -# performance we can get. default to optimized with the option -# of opt-out. -# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de> - -Index: Python-2.7.3/Python/compile.c -=================================================================== ---- Python-2.7.3.orig/Python/compile.c -+++ Python-2.7.3/Python/compile.c -@@ -32,7 +32,7 @@ - #include "symtable.h" - #include "opcode.h" - --int Py_OptimizeFlag = 0; -+int Py_OptimizeFlag = 1; - - #define DEFAULT_BLOCK_SIZE 16 - #define DEFAULT_BLOCKS 8 -Index: Python-2.7.3/Modules/main.c -=================================================================== ---- Python-2.7.3.orig/Modules/main.c -+++ Python-2.7.3/Modules/main.c -@@ -40,7 +40,7 @@ static char **orig_argv; - static int orig_argc; - - /* command line options */ --#define BASE_OPTS "3bBc:dEhiJm:OQ:RsStuUvVW:xX?" -+#define BASE_OPTS "3bBc:dEhiJm:NOQ:RsStuUvVW:xX?" - - #ifndef RISCOS - #define PROGRAM_OPTS BASE_OPTS -@@ -69,8 +69,7 @@ Options and arguments (and corresponding - static char *usage_2 = "\ - if stdin does not appear to be a terminal; also PYTHONINSPECT=x\n\ - -m mod : run library module as a script (terminates option list)\n\ ---O : optimize generated bytecode slightly; also PYTHONOPTIMIZE=x\n\ ---OO : remove doc-strings in addition to the -O optimizations\n\ -+-N : do NOT optimize generated bytecode\n\ - -R : use a pseudo-random salt to make hash() values of various types be\n\ - unpredictable between separate invocations of the interpreter, as\n\ - a defense against denial-of-service attacks\n\ -@@ -365,8 +364,8 @@ Py_Main(int argc, char **argv) - - /* case 'J': reserved for Jython */ - -- case 'O': -- Py_OptimizeFlag++; -+ case 'N': -+ Py_OptimizeFlag=0; - break; - - 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 @@ -Upstream-Status: Inappropriate [embedded specific] - -# Reinstate the empty -O option to fix weird mixing of native and target -# binaries and libraries with LD_LIBRARY_PATH when host==target -# -# Signed-off-by: Denys Dmytriyenko <denis@denix.org> - -Index: Python-2.6.6/Modules/main.c -=================================================================== ---- Python-2.6.6.orig/Modules/main.c -+++ Python-2.6.6/Modules/main.c -@@ -327,6 +327,9 @@ Py_Main(int argc, char **argv) - - /* case 'J': reserved for Jython */ - -+ case 'O': /* ignore it */ -+ break; -+ - case 'N': - Py_OptimizeFlag=0; - break; diff --git a/meta/recipes-devtools/python/python_2.7.3.bb b/meta/recipes-devtools/python/python_2.7.3.bb index aace95e729..f76f2185fe 100644 --- a/meta/recipes-devtools/python/python_2.7.3.bb +++ b/meta/recipes-devtools/python/python_2.7.3.bb @@ -7,11 +7,9 @@ DISTRO_SRC_URI_linuxstdbase = "" SRC_URI += "\ file://01-use-proper-tools-for-cross-build.patch \ file://03-fix-tkinter-detection.patch \ - file://04-default-is-optimized.patch \ file://05-enable-ctypes-cross-build.patch \ file://06-ctypes-libffi-fix-configure.patch \ file://06-avoid_usr_lib_termcap_path_in_linking.patch \ - file://99-ignore-optimization-flag.patch \ ${DISTRO_SRC_URI} \ file://multilib.patch \ file://cgi_py.patch \ |