1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-01-01 05:16:05 +01:00

Merge 21510, 22360, 22365.

This commit is contained in:
Paul Ackersviller 2007-05-16 04:30:24 +00:00
parent 9dc5c53958
commit 37a5fe881f

View file

@ -2,32 +2,42 @@
fndir=$DESTDIR$fndir
$sdir_top/mkinstalldirs $fndir || exit 1;
/bin/sh $sdir_top/mkinstalldirs $fndir || exit 1;
# If the source directory is somewhere else, we need to force
# the shell to expand it in that directory, then strip it off.
install=
for file in $FUNCTIONS_INSTALL; do
if test -f "$sdir/$file"; then
install="$install $file"
else
install="$install `echo '' $sdir/$file | sed -e \"s% $sdir/% %g\"`"
fi
done
allfuncs="`grep ' functions=.' ${dir_top}/config.modules |
sed -e '/^#/d' -e '/ link=no/d' -e 's/^.* functions=//'`"
for file in $install; do
if test -f $sdir/$file; then
if test x$FUNCTIONS_SUBDIRS != x -a x$FUNCTIONS_SUBDIRS != xno; then
subfile="$file"
subdir="`echo $file | sed -e 's%/[^/]*$%%'`"
instdir="$fndir/$subdir"
allfuncs="`cd $sdir_top; echo ${allfuncs}`"
# We now have a list of files, but we need to use `test -f' to check
# (1) the glob got expanded (2) we are not looking at directories.
for file in $allfuncs; do
if test -f $sdir_top/$file; then
case "$file" in
*/CVS/*) continue;;
esac
if test x$FUNCTIONS_SUBDIRS != x && test x$FUNCTIONS_SUBDIRS != xno; then
case "$file" in
Completion/*/*)
subdir="`echo $file | sed -e 's%/[^/]*/[^/]*$%%'`"
instdir="$fndir/$subdir"
;;
Completion/*)
instdir="$fndir/Completion"
;;
*)
subdir="`echo $file | sed -e 's%/[^/]*$%%' -e 's%^Functions/%%'`"
instdir="$fndir/$subdir"
;;
esac
else
subfile="`echo $file | sed -e 's%^.*/%%'`"
instdir="$fndir"
fi
$sdir_top/mkinstalldirs $instdir || exit 1
$INSTALL_DATA $sdir/$file $instdir || exit 1
test -d $instdir || /bin/sh $sdir_top/mkinstalldirs $instdir || exit 1
if test -x $sdir_top/$file; then
$INSTALL_PROGRAM $sdir_top/$file $instdir || exit 1
else
$INSTALL_DATA $sdir_top/$file $instdir || exit 1
fi
fi
done
exit 0