summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDengke Du <dengke.du@windriver.com>2016-04-19 03:11:24 -0400
committerDengke Du <dengke.du@windriver.com>2016-04-19 03:55:45 -0400
commitefa4eef06732bb5a4143f55e0aa4093c4f81c9ee (patch)
tree0b6d1a3e9e4cddfd6171b86a90813b5d3eabbe56
parentee25d0e3987d7732a2e46e1640693b4cf419a9fc (diff)
downloadopenembedded-core-contrib-dengke/fixed-bash-ptest-run-builtins-failed.tar.gz
openembedded-core-contrib-dengke/fixed-bash-ptest-run-builtins-failed.tar.bz2
openembedded-core-contrib-dengke/fixed-bash-ptest-run-builtins-failed.zip
bash: fixed ptest run-builtins faileddengke/fixed-bash-ptest-run-builtins-failed
1. redirect the stderr output of the command exec with -l option to /dev/null. Because when we run command exec with -l option in builtins.tests, it is a login shell, so it would read the file /etc/profile, that file executes the /usr/bin/resize which added by commit: cc6360f4c4d97e0000f9d3545f381224ee99ce7d The /usr/bin/resize is produced by busybox that source code resize.c contains: fprintf(stderr, ESC"7" ESC"[r" ESC"[999;999H" ESC"[6n"); In the end, it outputs an escape sequence to the stderr, so when we compare the test output file /tmp/xx with builtins.right, it failed. we need to redirect the stderr output to the /dev/null to solve the problem. 2. ensure the target system contains the locales "en_US.UTF-8". Because when run the run-builtins, it executes the source5.sub file that contain: LC_ALL=en_US.UTF-8 such as add the following to the local.conf: IMAGE_LINGUAS_append = " en-us" Signed-off-by: Dengke Du <dengke.du@windriver.com>
-rw-r--r--meta/recipes-extended/bash/bash/fix-run-builtins.patch33
-rw-r--r--meta/recipes-extended/bash/bash_4.3.30.bb1
2 files changed, 34 insertions, 0 deletions
diff --git a/meta/recipes-extended/bash/bash/fix-run-builtins.patch b/meta/recipes-extended/bash/bash/fix-run-builtins.patch
new file mode 100644
index 0000000000..2fa388302e
--- /dev/null
+++ b/meta/recipes-extended/bash/bash/fix-run-builtins.patch
@@ -0,0 +1,33 @@
+From 0c4cab9594c96c2dc435a8d9724605824bcbf917 Mon Sep 17 00:00:00 2001
+From: Dengke Du <dengke.du@windriver.com>
+Date: Tue, 19 Apr 2016 02:57:45 -0400
+Subject: [PATCH] fix run-builtins failed
+
+FAIL: run-builtins
+1. redirect the stderr output of command exec with -l option in
+ builtins.tests to /dev/null
+2. ensure the system contain the locales "en_US.UTF-8"
+
+Upstream-Status: Pending
+
+Signed-off-by: Dengke Du <dengke.du@windriver.com>
+---
+ tests/builtins.tests | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/builtins.tests b/tests/builtins.tests
+index 9d77520..63f3af8 100644
+--- a/tests/builtins.tests
++++ b/tests/builtins.tests
+@@ -109,7 +109,7 @@ esac
+
+ # test options to exec
+ (exec -a specialname ${THIS_SH} -c 'echo $0' )
+-(exec -l -a specialname ${THIS_SH} -c 'echo $0' )
++(exec -l -a specialname ${THIS_SH} -c 'echo $0' ) 2> /dev/null
+ # test `clean' environment. if /bin/sh is bash, and the script version of
+ # printenv is run, there will be variables in the environment that bash
+ # sets on startup. Also test code that prefixes argv[0] with a dash.
+--
+2.8.1
+
diff --git a/meta/recipes-extended/bash/bash_4.3.30.bb b/meta/recipes-extended/bash/bash_4.3.30.bb
index 4426cf00a0..95ed3925c7 100644
--- a/meta/recipes-extended/bash/bash_4.3.30.bb
+++ b/meta/recipes-extended/bash/bash_4.3.30.bb
@@ -20,6 +20,7 @@ SRC_URI = "${GNU_MIRROR}/bash/${BP}.tar.gz;name=tarball \
file://test-output.patch \
file://fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch \
file://run-ptest \
+ file://fix-run-builtins.patch \
"
SRC_URI[tarball.md5sum] = "a27b3ee9be83bd3ba448c0ff52b28447"