install-catman.sh revision 90926
1#!/bin/sh
2#
3# $Id: install-catman.sh,v 1.3 2001/09/29 16:05:38 assar Exp $
4#
5# install preformatted manual pages
6
7INSTALL_DATA="$1"; shift
8mkinstalldirs="$1"; shift
9srcdir="$1"; shift
10manbase="$1"; shift
11suffix="$1"; shift
12
13for f in "$@"; do
14	base=`echo "$f" | sed 's/\(.*\)\.\([^.]*\)$/\1/'`
15	section=`echo "$f" | sed 's/\(.*\)\.\([^.]*\)$/\2/'`
16	mandir="$manbase/man$section"
17	catdir="$manbase/cat$section"
18	c="$base.cat$section"
19
20	if test -f "$srcdir/$c"; then
21		if test \! -d "$catdir"; then
22			eval "$mkinstalldirs $catdir"
23		fi
24		eval "echo $INSTALL_DATA $srcdir/$c $catdir/$base.$suffix"
25		eval "$INSTALL_DATA $srcdir/$c $catdir/$base.$suffix"
26	fi
27	for link in `sed -n -e '/SYNOPSIS/q;/DESCRIPTION/q;s/^\.Nm \([^ ]*\).*/\1/p' $srcdir/$f`; do
28		if [ "$link" != "$base" ]; then
29			target="$mandir/$link.$section"
30			for cmd in "ln -f $mandir/$base.$section $target" \
31				   "ln -s $base.$section $target" \
32				   "cp -f $mandir/$base.$section $target"
33			do
34				if eval "$cmd"; then
35					eval echo "$cmd"
36					break
37				fi
38			done
39			if test -f "$srcdir/$c"; then
40				target="$catdir/$link.$suffix"
41				for cmd in "ln -f $catdir/$base.$suffix $target" \
42					   "ln -fs $base.$suffix $target" \
43					   "cp -f $catdir/$base.$suffix $target"
44				do
45					if eval "$cmd"; then
46						eval echo "$cmd"
47						break
48					fi
49				done
50			fi
51		fi
52	done
53done
54