|
|
1.1 root 1: # macros crunch procedure
2: #
3: # SCCS: @(#)macrunch 1.17
4:
5: move=n
6: roff=
7: pname=
8: name=
9: path=/usr
10:
11:
12: if [ $# -lt 1 ]
13: then echo usage: macrunch [-m] [-d path] [{-n _o_r -t} "package name"] ".src name"
14: exit 1
15: fi
16:
17: while [ $# -gt 0 ]
18: do
19: case $1 in
20:
21: -m) move=y;;
22: -n) roff=n; pname=$2; shift;;
23: -t) roff=t; pname=$2; shift;;
24: -d) path=$2; shift;;
25: *) name=$1;;
26:
27: esac
28: shift
29: done
30:
31: rm -f NOCOMPACT${name}
32:
33: sed -e "3,\${
34: /^''*\\\\\"/d
35: s/ *\\\\\".*//
36: s/@//g
37: s/^\(['.]\)[ ]*/\1/
38: s/^\\([.'][a-z][a-z]\\) */\\1/
39: s/\\\\{[ ]*/\\\\{/g
40: s/<<name>>/${name}/g
41: } " \
42: ${name}.src | ./ntar -h "'''>S>" -t "'''>E>" -g > ${name}
43:
44: if [ -r NOCOMPACT${name} ]
45: then
46: if [ -n "${roff}" ]
47: then
48: mv NOCOMPACT${name} ucmp.${roff}.${pname}
49: ${path}/bin/${roff}roff -kTMP ${name} - <<!
50: .co
51: !
52: mv d.TMP cmp.${roff}.d.${pname}
53: mv t.TMP cmp.${roff}.t.${pname}
54: cat ucmp.${roff}.${pname} >> ${name}
55: if [ $move = "y" ]
56: then
57: cp cmp.${roff}.[dt].${pname} ucmp.${roff}.${pname} ${path}/lib/macros
58: ( cd ${path}/lib/macros
59: chmod 644 cmp.${roff}.[dt].${pname} ucmp.${roff}.${pname} )
60: if [ "${path}" = "/usr" ]
61: then ( cd ${path}/lib/macros
62: chown bin cmp.${roff}.[dt].${pname} ucmp.${roff}.${pname}
63: chgrp bin cmp.${roff}.[dt].${pname} ucmp.${roff}.${pname} )
64: else true
65: fi
66: rm -f cmp.${roff}.[dt].${pname} ucmp.${roff}.${pname}
67: fi
68: else
69: cat NOCOMPACT${name} >> ${name}
70: rm NOCOMPACT${name}
71: fi
72: fi
73:
74: if [ $move = "y" ]
75: then
76: cp ${name} ${path}/lib/macros
77: chmod 644 ${path}/lib/macros/${name}
78: if [ "${path}" = "/usr" ]
79: then chown bin ${path}/lib/macros/${name}
80: chgrp bin ${path}/lib/macros/${name}
81: else true
82: fi
83: rm -f ${name}
84: fi
85: exit 0
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.