summaryrefslogtreecommitdiffstats
path: root/share/man/tools/ckfrefs
blob: 5542986a80374ec8027af86e8c80138cd1812238 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#! /bin/sh
set x $*
. ./.param

for dir in $DIRLST
do
	> $TMPDIR/fref$dir
	cd $MANDIR/man$dir
	for file in $FILLST
	do
		so=`line < $file | sed "s/ .*//"`
		if test "$so" = ".so"
		then
			continue
		fi
		ed - $file >> $TMPDIR/fref$dir <<!
			/FILES/
			+,/\.SH/-p
			q
!
	done

	cd $TMPDIR
	date > badfref$dir
	echo >> badfref$dir
	grep "/" fref$dir > /dev/null
	if test $? -eq 1
	then
		rm -f fref$dir
		continue
	fi
	echo "\\t ," >> fref$dir
	ed - fref$dir <<!
		1,\$s/ /\\
/g
		1,\$s/	/\\
/g
		1,\$s/,/\\
/g
		v/\//d
		g/:$/s///
		g/\\\\(\*/s///g
		g/\\\\s+1/s///g
		g/\\\\s-1/s///g
		g/\\\\s0/s///g
		g/\\\\f./s///g
		g/\\\\\*S/s///g
		g/\\\\\&/s///g
		g/\$\$/s//*/
		g/^?/d
		g/^\./d
		g/tmp/d
		g/spool/d
		g/mail/d
		g/^[^\/]/d
		g/(/d
		g/)/d
		g/\'/d
		g/\`/d
		g/\"/d
		g/\&/d
		g/\|/d
		1,\$s/^/ls /
		w
		q
!
	sort fref$dir | uniq > tmp.$$
	sh tmp.$$ > fref$dir 2>&1
	grep "not found" fref$dir | sed "s/ not found//" >> badfref$dir
	rm -f tmp.$$ fref$dir
done
OpenPOWER on IntegriCloud