system: make /bin/sh symlink use relative path

The symlink created by buildroot for /bin/sh is the full path to
a shell.  This does not match what busybox and other Linux
distributions do with using relative path symlinks. When handling
files on the host system this will point to the host system's shell
if present and not the target shell.

This is fixed by changing the /bin/sh symlink to use a relative path.

Fixes #8161.

[Thomas: minor fixups to the commit log suggested by Yann E. Morin.]

Signed-off-by: Matthew Starr <mstarr@hedonline.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Matthew Starr 2015-06-16 15:42:28 -05:00 committed by Thomas Petazzoni
parent 55dbcaf48f
commit e26ec6e45c

View File

@ -236,10 +236,10 @@ 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
default "busybox" if BR2_SYSTEM_BIN_SH_BUSYBOX
default "bash" if BR2_SYSTEM_BIN_SH_BASH
default "dash" if BR2_SYSTEM_BIN_SH_DASH
default "zsh" if BR2_SYSTEM_BIN_SH_ZSH
config BR2_TARGET_GENERIC_GETTY
bool "Run a getty (login prompt) after boot"