Annotation of researchv10no/cmd/troff/ancient.nroff/macros.d/macrunch, revision 1.1.1.1

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

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.