]> code.ossystems Code Review - openembedded-core.git/commitdiff
busybox: fix a sh link wrong
authorWenlin Kang <wenlin.kang@windriver.com>
Tue, 8 Apr 2014 07:16:02 +0000 (15:16 +0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 8 Apr 2014 16:59:27 +0000 (17:59 +0100)
When both bash and busybox be installed, without ash support
in busybox,if bash is installed before busybox in the final stage,
even if ALTERNATIVE_PRIORITY of bash > ALTERNATIVE_PRIORITY of busybox,
the symlink from /bin/sh to bash can be yet overwritten by busybox.

Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-core/busybox/busybox.inc

index eedbe4669b41e7c740b90d50109a305fa7c067e3..e59afe67bc219cd072ea41ec7384ea526c656030 100644 (file)
@@ -189,7 +189,9 @@ do_install () {
                        install -m 0755 ${B}/busybox.nosuid ${D}${base_bindir}
                        install -m 0644 ${S}/busybox.links.suid ${D}${sysconfdir}
                        install -m 0644 ${S}/busybox.links.nosuid ${D}${sysconfdir}
-                       ln -sf busybox.nosuid ${D}${base_bindir}/sh
+                       if grep -q "CONFIG_FEATURE_SH_IS_ASH=y" ${B}/.config; then
+                               ln -sf busybox.nosuid ${D}${base_bindir}/sh
+                       fi
                        # Keep a default busybox for people who want to invoke busybox directly.
                        # This is also useful for the on device upgrade. Because we want
                        # to use the busybox command in postinst.
@@ -201,7 +203,9 @@ do_install () {
                                install -m 0755 ${B}/busybox ${D}${base_bindir}
                        fi
                        install -m 0644 ${S}/busybox.links ${D}${sysconfdir}
-                       ln -sf busybox ${D}${base_bindir}/sh
+                       if grep -q "CONFIG_FEATURE_SH_IS_ASH=y" ${B}/.config; then
+                               ln -sf busybox ${D}${base_bindir}/sh
+                       fi
                        # We make this symlink here to eliminate the error when upgrading together
                        # with busybox-syslog. Without this symlink, the opkg may think of the
                        # busybox.nosuid as obsolete and remove it, resulting in dead links like