From 952d5a6024e7b2a6d5a351a8d1329bd985da3c76 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN" Date: Thu, 28 Dec 2017 23:49:48 +0100 Subject: [PATCH] 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 --- applets/install.sh | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) 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