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:
parent
9dc5c53958
commit
37a5fe881f
1 changed files with 32 additions and 22 deletions
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue