[YOCTO #4835]
[YOCTO #4732]
Signed-off-by: Hongxu Jia <hongxu....@windriver.com>
---
meta/recipes-devtools/python/python.inc | 4 +-
...-to-avoid-probable-escape-sequence-output.patch | 43
++++++++++++++++++++++
2 files changed, 46 insertions(+), 1 deletion(-)
create mode 100644
meta/recipes-devtools/python/python/readline-set-meta-key-off-to-avoid-probable-escape-sequence-output.patch
diff --git a/meta/recipes-devtools/python/python.inc
b/meta/recipes-devtools/python/python.inc
index 80609a8..9f787c9 100644
--- a/meta/recipes-devtools/python/python.inc
+++ b/meta/recipes-devtools/python/python.inc
@@ -7,7 +7,9 @@ INC_PR = "r0"
LIC_FILES_CHKSUM =
"file://LICENSE;md5=ed3abfd1059e2d3a36a8cff3986f9bb6"
-SRC_URI =
"http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.bz2"
+SRC_URI =
"http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.bz2 \
+
file://readline-set-meta-key-off-to-avoid-probable-escape-sequence-output.patch
\
+"
SRC_URI[md5sum] = "c57477edd6d18bd9eeca2f21add73919"
SRC_URI[sha256sum] =
"726457e11cb153adc3f428aaf1901fc561a374c30e5e7da6742c0742a338663c"
diff --git
a/meta/recipes-devtools/python/python/readline-set-meta-key-off-to-avoid-probable-escape-sequence-output.patch
b/meta/recipes-devtools/python/python/readline-set-meta-key-off-to-avoid-probable-escape-sequence-output.patch
new file mode 100644
index 0000000..104fc36
--- /dev/null
+++
b/meta/recipes-devtools/python/python/readline-set-meta-key-off-to-avoid-probable-escape-sequence-output.patch
@@ -0,0 +1,43 @@
+readline:explicitly set meta key off to avoid probable escape
sequence output
+
+While imports readline in python, if TERM in terminfo is available and
+it contains the variable 'km' and 'smm', the readline initialization
will
+output the value of 'smm' which is the escape sequence '\E[?1034h'.
+
+'km' means the terminal has a meta key which is a special key on MIT
keyboards
+such as the space-cadet keyboard, and on Sun Microsystems keyboards,
marked
+as a solid diamond. It almost doesn't exist in our keyboard, so it
has no side
+effect to disable it.
+'smm' means turn on the meta key if this terminal has one.
+
+Explicitly set meta key off to avoid probable escape sequence output
+while gnu readline library initialization.
+
+Signed-off-by: Hongxu Jia <hongxu....@windriver.com>
+Upstream-Status: inappropriate [oe specific]
+---
+ Modules/readline.c | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/Modules/readline.c b/Modules/readline.c
+--- a/Modules/readline.c
++++ b/Modules/readline.c
+@@ -909,6 +909,15 @@ setup_readline(void)
+ rl_read_init_file(NULL);
+ else
+ #endif /* __APPLE__ */
++
++ /* Explicitly set meta key off to avoid probable escape sequence
output
++ * while gnu readline library initialization. The meta key is a
special
++ * key in MIT keyboards such as the space-cadet keyboard, and on
Sun
++ * Microsystems keyboards, marked as a solid diamond. It almost
doesn't
++ * exist in our keyboards, so it has no side effect to disable
it.
++ */
++ rl_variable_bind("enable-meta-key", "off");
++
+ rl_initialize();
+
+ RESTORE_LOCALE(saved_locale)
+--
+1.8.1.2
+