From: Yann E. MORIN Date: Thu, 28 Dec 2017 22:49:48 +0000 (+0100) Subject: applets/install: accept more than one install option X-Git-Tag: 1_29_0~399 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=952d5a6024e7b2a6d5a351a8d1329bd985da3c76;p=oweals%2Fbusybox.git applets/install: accept more than one install option 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 Signed-off-by: Denys Vlasenko --- diff --git a/applets/install.sh b/applets/install.sh index 4b70df96e..ae99381d7 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