File: fixman

package info (click to toggle)
net-snmp 5.1.2-6.2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 19,340 kB
  • ctags: 12,062
  • sloc: ansic: 134,798; perl: 10,855; sh: 10,237; makefile: 5,003
file content (59 lines) | stat: -rw-r--r-- 1,419 bytes parent folder | download | duplicates (4)
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
#!/bin/bash

# This script fixes up various problems with the man pages.

# Create the symlinks for multiple and alternative names when they are
# described in a single man page.

sections="1 3 5 8"
#echo "sections = $sections"

for s in $sections; do
    files=$(grep -rl '^\.SH NAME' debian/tmp/usr/share/man/man$s | \
      grep -v '/netsnmp_')
    #echo "files = $files"

    for f in $files; do
	if [[ ! -f $f ]]; then
	    continue
	fi

	f2=$(basename $f .$s)
	commands=$(sed -e '/^\.SH NAME/,/^\./p' -e d $f | 
	    sed -e '/^\./d' -e 's/,/ /g' -e 's/\\\?-.*$//')
	#echo "$f2 commands = $commands"

	for c in $commands; do
	    c2=$(basename $c)
	    if [[ $c2 != $f2 ]]; then
		#echo ln -sf $f2.$s debian/tmp/usr/share/man/man$s/$c2.$s
		ln -sf $f2.$s debian/tmp/usr/share/man/man$s/$c2.$s
	    fi
	done
    done
done

# Rename the pages to avoid possible conflicts with other packages.

mv debian/tmp/usr/share/man/man3/SNMP.3 debian/tmp/usr/share/man/man3/SNMP.3pm

sections="3 5"
#echo "sections = $sections"

for s in $sections; do
    files=debian/tmp/usr/share/man/man$s/*.$s
    #echo "files = $files"

    for f in $files; do
	if [[ -L $f ]]; then
	    l=$(readlink $f)
	    #echo ln -sf ${l}snmp ${f}snmp
	    ln -sf ${l}snmp ${f}snmp
	    rm -f $f
	else
	    #echo mv $f ${f}snmp
	    sed -e "s/^\(\.TH \"[^\"]*\"\|\.TH [^\"][^ ]*\) *${s}/\1 ${s}snmp/" < $f > ${f}snmp
	    rm -f $f
	fi
    done
done