diff options
author | Ron Yorston | 2018-11-27 14:34:25 +0000 |
---|---|---|
committer | Denys Vlasenko | 2018-11-27 16:13:07 +0100 |
commit | 71df2d3589e3e682cd6770f41f0b184841b78702 (patch) | |
tree | 0c71963e9d622bc48256a3917c1ce55ccc019a4f /scripts | |
parent | f4709d78cb0c4f54283046e8f86edb9ecd7e41ca (diff) | |
download | busybox-71df2d3589e3e682cd6770f41f0b184841b78702.zip busybox-71df2d3589e3e682cd6770f41f0b184841b78702.tar.gz |
hush: allow hush to run embedded scripts
Embedded scripts require a shell to be present in the BusyBox
binary. Allow either ash or hush to be used for this purpose.
If both are enabled ash takes precedence.
The size of the binary is unchanged in the default configuration:
both ash and hush are present but support for embedded scripts
isn't compiled into hush.
Signed-off-by: Ron Yorston <rmy@pobox.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/embedded_scripts | 8 | ||||
-rwxr-xr-x | scripts/gen_build_files.sh | 2 |
2 files changed, 9 insertions, 1 deletions
diff --git a/scripts/embedded_scripts b/scripts/embedded_scripts index 86ad44d..aa7bf3e 100755 --- a/scripts/embedded_scripts +++ b/scripts/embedded_scripts @@ -1,5 +1,7 @@ #!/bin/sh +. ./.config || exit 1 + target="$1" custom_loc="$2" applet_loc="$3" @@ -8,6 +10,12 @@ test "$target" || exit 1 test "$SED" || SED=sed test "$DD" || DD=dd +if [ x"$CONFIG_FEATURE_SH_EMBEDDED_SCRIPTS" != x"y" ] +then + printf '#define NUM_SCRIPTS 0\n' >"$target" + exit 0 +fi + # Some people were bitten by their system lacking a (proper) od od -v -b </dev/null >/dev/null if test $? != 0; then diff --git a/scripts/gen_build_files.sh b/scripts/gen_build_files.sh index 362632d..92de681 100755 --- a/scripts/gen_build_files.sh +++ b/scripts/gen_build_files.sh @@ -25,7 +25,7 @@ custom_scripts() then for i in $(cd "$custom_loc"; ls * 2>/dev/null) do - printf "APPLET_SCRIPTED(%s, scripted, BB_DIR_USR_BIN, BB_SUID_DROP, scripted)\n" $i; + printf "IF_FEATURE_SH_EMBEDDED_SCRIPTS(APPLET_SCRIPTED(%s, scripted, BB_DIR_USR_BIN, BB_SUID_DROP, scripted))\n" $i; done fi } |