1
0
mirror of git://git.code.sf.net/p/zsh/code synced 2024-11-19 21:44:11 +01:00
zsh/Src/mkmodindex.sh
1999-04-15 18:05:38 +00:00

44 lines
983 B
Bash

#!/bin/sh
#
# mkmodindex.sh: search for *.mdd files, and index the modules
#
# $@ = directories to search from
#
echo "# module index generated by mkmodindex.sh"
echo
module_list=' '
while test $# -ne 0; do
dir=$1
shift
( set $dir/*.mdd; test -f $1 ) || continue
dosubs=false
for mod in `echo '' $dir/*.mdd '' | sed 's, [^ ]*/, ,g;s,\.mdd , ,g'`; do
case `echo "$mod@ $module_list " | sed 's,^.*[^_0-9A-Za-z].*@,@@,'` in
@@*)
echo >&2 "WARNING: illegally named module \`$mod' in $dir"
echo >&2 " (ignoring it)"
;;
*@*" $mod "*)
eval "loc=\$loc_$mod"
echo >&2 "WARNING: module \`$mod' (in $loc) duplicated in $dir"
echo >&2 " (ignoring duplicate)"
dosubs=true
;;
*)
module_list="$module_list$mod "
echo "loc_$mod=$dir"
eval "loc_$mod=\$dir"
dosubs=true
;;
esac
done
$dosubs && set `echo $dir/*/. '' | sed 's,/\. , ,g'` "$@"
done
echo
echo $module_list | sed 's/^/module_list="/;s/$/"/'
exit 0