applets/install.sh: afer quoting of variables

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2011-04-05 02:37:15 +02:00
parent 9eb7bfd4d4
commit c0644cac0d

View File

@ -3,12 +3,15 @@
export LC_ALL=POSIX export LC_ALL=POSIX
export LC_CTYPE=POSIX export LC_CTYPE=POSIX
prefix=${1} prefix=$1
if [ -z "$prefix" ]; then if [ -z "$prefix" ]; then
echo "usage: applets/install.sh DESTINATION [--symlinks/--hardlinks/--scriptwrapper]" echo "usage: applets/install.sh DESTINATION [--symlinks/--hardlinks/--scriptwrapper]"
exit 1; exit 1
fi fi
h=`sort busybox.links | uniq` h=`sort busybox.links | uniq`
linkopts=""
scriptwrapper="n" scriptwrapper="n"
cleanup="0" cleanup="0"
noclobber="0" noclobber="0"
@ -33,12 +36,12 @@ if [ -n "$DO_INSTALL_LIBS" ] && [ "$DO_INSTALL_LIBS" != "n" ]; then
libdir=/lib libdir=/lib
fi fi
mkdir -p $prefix/$libdir || exit 1 mkdir -p "$prefix/$libdir" || exit 1
for i in $DO_INSTALL_LIBS; do for i in $DO_INSTALL_LIBS; do
rm -f $prefix/$libdir/$i || exit 1 rm -f "$prefix/$libdir/$i" || exit 1
if [ -f $i ]; then if [ -f "$i" ]; then
cp -pPR $i $prefix/$libdir/ || exit 1 cp -pPR "$i" "$prefix/$libdir/" || exit 1
chmod 0644 $prefix/$libdir/$i || exit 1 chmod 0644 "$prefix/$libdir/$i" || exit 1
fi fi
done done
fi fi
@ -46,40 +49,40 @@ fi
if [ "$cleanup" = "1" ] && [ -e "$prefix/bin/busybox" ]; then if [ "$cleanup" = "1" ] && [ -e "$prefix/bin/busybox" ]; then
inode=`ls -i "$prefix/bin/busybox" | awk '{print $1}'` inode=`ls -i "$prefix/bin/busybox" | awk '{print $1}'`
sub_shell_it=` sub_shell_it=`
cd "$prefix" cd "$prefix"
for d in usr/sbin usr/bin sbin bin; do for d in usr/sbin usr/bin sbin bin; do
pd=$PWD pd=$PWD
if [ -d "$d" ]; then if [ -d "$d" ]; then
cd $d cd "$d"
ls -iL . | grep "^ *$inode" | awk '{print $2}' | env -i xargs rm -f ls -iL . | grep "^ *$inode" | awk '{print $2}' | env -i xargs rm -f
fi fi
cd "$pd" cd "$pd"
done done
` `
exit 0 exit 0
fi fi
rm -f $prefix/bin/busybox || exit 1 rm -f "$prefix/bin/busybox" || exit 1
mkdir -p $prefix/bin || exit 1 mkdir -p "$prefix/bin" || exit 1
install -m 755 busybox $prefix/bin/busybox || exit 1 install -m 755 busybox "$prefix/bin/busybox" || exit 1
for i in $h; do for i in $h; do
appdir=`dirname $i` appdir=`dirname "$i"`
mkdir -p $prefix/$appdir || exit 1 mkdir -p "$prefix/$appdir" || exit 1
if [ "$scriptwrapper" = "y" ]; then if [ "$scriptwrapper" = "y" ]; then
if [ "$swrapall" != "y" ] && [ "$i" = "/bin/sh" ]; then if [ "$swrapall" != "y" ] && [ "$i" = "/bin/sh" ]; then
ln $linkopts busybox $prefix$i || exit 1 ln $linkopts busybox "$prefix/$i" || exit 1
else else
rm -f $prefix$i rm -f "$prefix/$i"
echo "#!/bin/busybox" > $prefix$i echo "#!/bin/busybox" >"$prefix/$i"
chmod +x $prefix/$i chmod +x "$prefix/$i"
fi fi
echo " $prefix/$i" echo " $prefix/$i"
else else
if [ "$2" = "--hardlinks" ]; then if [ "$2" = "--hardlinks" ]; then
bb_path="$prefix/bin/busybox" bb_path="$prefix/bin/busybox"
else else
case "/$appdir" in case "$appdir" in
/) /)
bb_path="bin/busybox" bb_path="bin/busybox"
;; ;;
@ -89,22 +92,18 @@ for i in $h; do
/sbin) /sbin)
bb_path="../bin/busybox" bb_path="../bin/busybox"
;; ;;
/usr/bin|/usr/sbin) /usr/bin | /usr/sbin)
bb_path="../../bin/busybox" bb_path="../../bin/busybox"
;; ;;
/root) # root/linuxrc (?!)
bb_path="bin/busybox"
i=$(basename $i)
;;
*) *)
echo "Unknown installation directory: $appdir" echo "Unknown installation directory: $appdir"
exit 1 exit 1
;; ;;
esac esac
fi fi
if [ "$noclobber" = "0" ] || [ ! -e "$prefix/$i" ]; then if [ "$noclobber" = "0" ] || [ ! -e "$prefix/$i" ]; then
echo " $prefix/$i -> $bb_path" echo " $prefix/$i -> $bb_path"
ln $linkopts $bb_path $prefix/$i || exit 1 ln $linkopts "$bb_path" "$prefix/$i" || exit 1
else else
echo " $prefix/$i already exists" echo " $prefix/$i already exists"
fi fi