[git commit] applets/install: accept more than one install option
Denys Vlasenko
vda.linux at googlemail.com
Thu Jan 4 13:43:46 UTC 2018
commit: https://git.busybox.net/busybox/commit/?id=952d5a6024e7b2a6d5a351a8d1329bd985da3c76
branch: https://git.busybox.net/busybox/commit/?id=refs/heads/master
Currently, it is impossible to pass more than one option to the isntall
script, so it totally prevents using --noclobber.
Signed-off-by: Yann E. MORIN <yann.morin.1998 at free.fr>
Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
applets/install.sh | 28 ++++++++++++++++------------
1 file changed, 16 insertions(+), 12 deletions(-)
diff --git a/applets/install.sh b/applets/install.sh
index 4b70df9..ae99381 100755
--- a/applets/install.sh
+++ b/applets/install.sh
@@ -8,6 +8,7 @@ if [ -z "$prefix" ]; then
echo "usage: applets/install.sh DESTINATION [--symlinks/--hardlinks/--binaries/--scriptwrapper]"
exit 1
fi
+shift # Keep only remaining options
# Source the configuration
. ./.config
@@ -21,18 +22,21 @@ scriptwrapper="n"
binaries="n"
cleanup="0"
noclobber="0"
-case "$2" in
- --hardlinks) linkopts="-f";;
- --symlinks) linkopts="-fs";;
- --binaries) binaries="y";;
- --scriptwrapper) scriptwrapper="y";swrapall="y";;
- --sw-sh-hard) scriptwrapper="y";linkopts="-f";;
- --sw-sh-sym) scriptwrapper="y";linkopts="-fs";;
- --cleanup) cleanup="1";;
- --noclobber) noclobber="1";;
- "") h="";;
- *) echo "Unknown install option: $2"; exit 1;;
-esac
+while [ ${#} -gt 0 ]; do
+ case "$1" in
+ --hardlinks) linkopts="-f";;
+ --symlinks) linkopts="-fs";;
+ --binaries) binaries="y";;
+ --scriptwrapper) scriptwrapper="y"; swrapall="y";;
+ --sw-sh-hard) scriptwrapper="y"; linkopts="-f";;
+ --sw-sh-sym) scriptwrapper="y"; linkopts="-fs";;
+ --cleanup) cleanup="1";;
+ --noclobber) noclobber="1";;
+ "") h="";;
+ *) echo "Unknown install option: $1"; exit 1;;
+ esac
+ shift
+done
if [ -n "$DO_INSTALL_LIBS" ] && [ "$DO_INSTALL_LIBS" != "n" ]; then
# get the target dir for the libs
More information about the busybox-cvs
mailing list