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 <[email protected]> --- meta/recipes-core/busybox/busybox.inc | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/meta/recipes-core/busybox/busybox.inc b/meta/recipes-core/busybox/busybox.inc index 69b9b0c..bf2ddc1 100644 --- a/meta/recipes-core/busybox/busybox.inc +++ b/meta/recipes-core/busybox/busybox.inc @@ -188,7 +188,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. @@ -200,7 +202,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 -- 1.7.9.5 -- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
