in the build log! Avoid using a valuable password if either the
.config file or the build log may be distributed!
+choice
+ bool "/bin/sh"
+ default BR2_SYSTEM_BIN_SH_DASH if !BR2_PACKAGE_BUSYBOX
+ help
+ Select which shell will provide /bin/sh.
+
+# busybox has shells that work on noMMU
+config BR2_SYSTEM_BIN_SH_BUSYBOX
+ bool "busybox' default shell"
+ depends on BR2_PACKAGE_BUSYBOX
+
+config BR2_SYSTEM_BIN_SH_BASH
+ bool "bash"
+ depends on BR2_USE_MMU # bash
+ depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
+ select BR2_PACKAGE_BASH
+
+config BR2_SYSTEM_BIN_SH_DASH
+ bool "dash"
+ depends on BR2_USE_MMU # dash
+ depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
+ select BR2_PACKAGE_DASH
+
+config BR2_SYSTEM_BIN_SH_ZSH
+ bool "zsh"
+ depends on BR2_USE_MMU # zsh
+ depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
+ select BR2_PACKAGE_ZSH
+
+comment "bash, dash, zsh need BR2_PACKAGE_BUSYBOX_SHOW_OTHERS"
+ depends on !BR2_PACKAGE_BUSYBOX_SHOW_OTHERS && BR2_PACKAGE_BUSYBOX
+
+config BR2_SYSTEM_BIN_SH_NONE
+ bool "none"
+
+endchoice # /bin/sh
+
+config BR2_SYSTEM_BIN_SH
+ string
+ default "/bin/busybox" if BR2_SYSTEM_BIN_SH_BUSYBOX
+ default "/bin/bash" if BR2_SYSTEM_BIN_SH_BASH
+ default "/bin/dash" if BR2_SYSTEM_BIN_SH_DASH
+ default "/bin/zsh" if BR2_SYSTEM_BIN_SH_ZSH
+
config BR2_TARGET_GENERIC_GETTY
bool "Run a getty (login prompt) after boot"
default y
TARGET_GENERIC_ISSUE = $(call qstrip,$(BR2_TARGET_GENERIC_ISSUE))
TARGET_GENERIC_ROOT_PASSWD = $(call qstrip,$(BR2_TARGET_GENERIC_ROOT_PASSWD))
TARGET_GENERIC_PASSWD_METHOD = $(call qstrip,$(BR2_TARGET_GENERIC_PASSWD_METHOD))
+TARGET_GENERIC_BIN_SH = $(call qstrip,$(BR2_SYSTEM_BIN_SH))
TARGET_GENERIC_GETTY_PORT = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_PORT))
TARGET_GENERIC_GETTY_BAUDRATE = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_BAUDRATE))
TARGET_GENERIC_GETTY_TERM = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_TERM))
endef
TARGET_FINALIZE_HOOKS += SYSTEM_ROOT_PASSWD
+ifeq ($(BR2_SYSTEM_BIN_SH_NONE),y)
+define SYSTEM_BIN_SH
+ rm -f $(TARGET_DIR)/bin/sh
+endef
+else
+define SYSTEM_BIN_SH
+ ln -sf $(TARGET_GENERIC_BIN_SH) $(TARGET_DIR)/bin/sh
+endef
+endif
+TARGET_FINALIZE_HOOKS += SYSTEM_BIN_SH
+
ifeq ($(BR2_TARGET_GENERIC_GETTY),y)
ifeq ($(BR2_PACKAGE_SYSVINIT),y)
# In sysvinit inittab, the "id" must not be longer than 4 bytes, so we