[OE-core] [PATCH V2 1/1] opkg: update-alternatives fails for "[" and "[[" in busybox

Liu Jian jian.liu at windriver.com
Wed Oct 22 08:43:34 UTC 2014


Building a small filesystem with busybox gives the following error lines:
(see log.do_rootfs under bitbake_build/tmp/work/)
sed: -e expression #1, char 41: unterminated address regex
sed: -e expression #1, char 42: unterminated address regex
This is caused by the script
bitbake_build/tmp/sysroots/x86_64-linux/usr/bin/update-alternatives.
"[" can not be used directly in sed expression.

Signed-off-by: Jian Liu <jian.liu at windriver.com>
---
...andle-leftbracket-for-update-alternatives.patch | 23
++++++++++++++++++++++
meta/recipes-devtools/opkg/opkg_0.2.2.bb | 1 +
2 files changed, 24 insertions(+)
create mode 100644
meta/recipes-devtools/opkg/opkg/handle-leftbracket-for-update-alternatives.patch

diff --git
a/meta/recipes-devtools/opkg/opkg/handle-leftbracket-for-update-alternatives.patch
b/meta/recipes-devtools/opkg/opkg/handle-leftbracket-for-update-alternatives.patch
new file mode 100644
index 0000000..7c9eac7
--- /dev/null
+++
b/meta/recipes-devtools/opkg/opkg/handle-leftbracket-for-update-alternatives.patch
@@ -0,0 +1,23 @@
+diff -Nur trunk.orig/utils/update-alternatives.in
trunk/utils/update-alternatives.in
+--- trunk.orig/utils/update-alternatives.in 2013-08-16
04:22:29.000000000 +0800
++++ trunk/utils/update-alternatives.in 2014-09-19 10:55:22.238159317 +0800
+@@ -68,6 +68,10 @@
+ sed -e 's/\//\\\//g'
+ }
+
++protect_special_character() {
++ sed -e 's/\[/\\\[/g'
++}
++
+ remove_alt() {
+ [ $# -lt 2 ] && return 1
+ local name="$1"
+@@ -75,7 +79,7 @@
+
+ [ ! -f $ad/$name ] && return 0
+
+- path=`echo $path | protect_slashes`
++ path=`echo $path | protect_slashes | protect_special_character`
+ sed -ne "/^$path\>.*/!p" $ad/$name > $ad/$name.new
+ mv $ad/$name.new $ad/$name
+ }
diff --git a/meta/recipes-devtools/opkg/opkg_0.2.2.bb
b/meta/recipes-devtools/opkg/opkg_0.2.2.bb
index 867ff7a..9d09194 100644
--- a/meta/recipes-devtools/opkg/opkg_0.2.2.bb
+++ b/meta/recipes-devtools/opkg/opkg_0.2.2.bb
@@ -5,6 +5,7 @@ SRC_URI =
"http://downloads.yoctoproject.org/releases/${BPN}/${BPN}-${PV}.tar.gz
file://add-exclude.patch \
file://opkg-configure.service \
file://libopkg-opkg_remove.c-avoid-remove-pkg-repeatly-with.patch \
+ file://handle-leftbracket-for-update-alternatives.patch \
"

S = "${WORKDIR}/${BPN}-${PV}"
-- 
1.8.5.2.233.g932f7e4

-- 
Jian Liu
Email: jian.liu at windriver.com
Office Phone: 86-10-84778539




More information about the Openembedded-core mailing list