opkg_svn: update-alternatives fails for "[" and "[[" in busybox
PATCH 1/1 opkg_svn: update-alternatives fails for "[" and "[[" in busybox
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.
---
...andle-leftbracket-for-update-alternatives.patch | 23
++++++++++++++++++++++
meta/recipes-devtools/opkg/opkg_svn.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
+ }
(quoted diff) +0 -0
b/meta/recipes-devtools/opkg/opkg_svn.bb
index cd0485f..a6de6a5 100644
meta/recipes-devtools/opkg/opkg_svn.bb +0 -0
@@ -4,6 +4,7 @@ SRC_URI =
"svn://opkg.googlecode.com/svn;module=trunk;protocol=http \
file://no-install-recommends.patch \
file://add-exclude.patch \
file://opkg-configure.service \
+ file://handle-leftbracket-for-update-alternatives.patch \
"
S = "${WORKDIR}/trunk"
Signature · 6 lines
1.8.5.2.233.g932f7e4 -- Jian Liu Email: [email protected] Office Phone: 86-10-84778539
Quoted 10 lines · Liu Jian
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 <[email protected]>
This patch looks to be corrupted, opkg_svn.bb no longer exists in oe-core (it's now opkg_0.2.2.bb) and your commit message is very confusing as it references a log file and a path which only exists on your system.
What version of poky or oe-core are you sending a patch against? And have you read the contribution guidelines in
http://openembedded.org/wiki/Commit_Patch_Message_Guidelines and
http://openembedded.org/wiki/Styleguide?
Thanks,
Signature · 4 lines
Paul Barker Email: [email protected] http://www.paulbarker.me.uk
Quoted 9 lines · Paul Barker
This patch looks to be corrupted, opkg_svn.bb no longer exists in oe-core (it's now opkg_0.2.2.bb) and your commit message is very confusing as it references a log file and a path which only exists on your system.
What version of poky or oe-core are you sending a patch against? And have you read the contribution guidelines in
http://openembedded.org/wiki/Commit_Patch_Message_Guidelines and
http://openembedded.org/wiki/Styleguide?
Specifically the patch is missing an Upstream-Status tag, and as opkg is part of the Yocto Project this should be Backport as obviously we'd fix our own software instead of patching it.
Ross
Hi Ross and Barker,
You are right and I make a mistake.
Sorry.
Liu Jian
Quoted 16 lines · Ross
Quoted 9 lines · Paul Barker
This patch looks to be corrupted, opkg_svn.bb no longer exists in oe-core (it's now opkg_0.2.2.bb) and your commit message is very confusing as it references a log file and a path which only exists on your system.
What version of poky or oe-core are you sending a patch against? And have you read the contribution guidelines in
http://openembedded.org/wiki/Commit_Patch_Message_Guidelines and
http://openembedded.org/wiki/Styleguide?Specifically the patch is missing an Upstream-Status tag, and as opkg is part of the Yocto Project this should be Backport as obviously we'd fix our own software instead of patching it.
Ross
Signature · 3 lines
Jian Liu Email: [email protected] Office Phone: 86-10-84778539