Implement the -l option using ln(1) to facilitate boostrapping.
Ignore the new options -D, -h, -T, and -U. Adjust -M support to ignore an argument. Sponsored by: DARPA, AFRL Reviewed by: ian, ray, rpaulo
This commit is contained in:
parent
5ab6899eb1
commit
af380cc2bf
@ -30,12 +30,22 @@
|
||||
|
||||
# parse install's options and ignore them completely.
|
||||
dirmode=""
|
||||
linkmode=""
|
||||
while [ $# -gt 0 ]; do
|
||||
case $1 in
|
||||
-d) dirmode="YES"; shift;;
|
||||
-[bCcMpSsv]) shift;;
|
||||
-[Bfgmo]) shift; shift;;
|
||||
-[Bfgmo]*) shift;;
|
||||
-[bCcpSsv]) shift;;
|
||||
-[BDfghMmNoTU]) shift; shift;;
|
||||
-[BDfghMmNoTU]*) shift;;
|
||||
-l)
|
||||
shift
|
||||
case $1 in
|
||||
*[sm]*) linkmode="symbolic";; # XXX: 'm' should prefer hard
|
||||
*h*) linkmode="hard";;
|
||||
*) echo "invalid link mode"; exit 1;;
|
||||
esac
|
||||
shift
|
||||
;;
|
||||
*) break;
|
||||
esac
|
||||
done
|
||||
@ -51,7 +61,13 @@ if [ -z "$dirmode" ] && [ "$#" -lt 2 ]; then
|
||||
fi
|
||||
|
||||
# the remaining arguments are assumed to be files/dirs only.
|
||||
if [ -z "$dirmode" ]; then
|
||||
if [ -n "${linkmode}" ]; then
|
||||
if [ "${linkmode}" == "symbolic" ]; then
|
||||
ln -fsh "$@"
|
||||
else
|
||||
ln -f "$@"
|
||||
fi
|
||||
elif [ -z "$dirmode" ]; then
|
||||
exec install -p "$@"
|
||||
else
|
||||
exec install -d "$@"
|
||||
|
Loading…
Reference in New Issue
Block a user