[BACK]Return to vgrind.sh CVS log [TXT][DIR] Up to [local] / src / usr.bin / vgrind

Annotation of src/usr.bin/vgrind/vgrind.sh, Revision 1.3

1.1       deraadt     1: #!/bin/csh -f
                      2: #
1.3     ! tholo       3: #      $OpenBSD: vgrind.sh,v 1.2 1996/06/26 05:42:31 deraadt Exp $
1.1       deraadt     4: #      $NetBSD: vgrind.sh,v 1.3 1994/11/17 08:28:06 jtc Exp $
                      5: #
                      6: # Copyright (c) 1980, 1993
                      7: #      The Regents of the University of California.  All rights reserved.
                      8: #
                      9: # Redistribution and use in source and binary forms, with or without
                     10: # modification, are permitted provided that the following conditions
                     11: # are met:
                     12: # 1. Redistributions of source code must retain the above copyright
                     13: #    notice, this list of conditions and the following disclaimer.
                     14: # 2. Redistributions in binary form must reproduce the above copyright
                     15: #    notice, this list of conditions and the following disclaimer in the
                     16: #    documentation and/or other materials provided with the distribution.
                     17: # 3. All advertising materials mentioning features or use of this software
                     18: #    must display the following acknowledgement:
                     19: #      This product includes software developed by the University of
                     20: #      California, Berkeley and its contributors.
                     21: # 4. Neither the name of the University nor the names of its contributors
                     22: #    may be used to endorse or promote products derived from this software
                     23: #    without specific prior written permission.
                     24: #
                     25: # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
                     26: # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     27: # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     28: # ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
                     29: # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     30: # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     31: # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     32: # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     33: # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     34: # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     35: # SUCH DAMAGE.
                     36: #
                     37: #       @(#)vgrind.sh  8.1 (Berkeley) 6/6/93
                     38: #
                     39:
1.3     ! tholo      40: # Allow troff to be overridden
        !            41: if ( $?TROFF ) then
        !            42:        set troff = "$TROFF"
        !            43: else
        !            44:        set troff = "troff"
        !            45: endif
        !            46:
        !            47: set vf=/usr/libexec/vfontedpr
        !            48: set tm=/usr/share/tmac
        !            49:
1.1       deraadt    50: set voptions=
                     51: set options=
                     52: set files=
                     53: set f=''
                     54: set head=""
1.3     ! tholo      55:
1.1       deraadt    56: top:
                     57: if ($#argv > 0) then
                     58:     switch ($1:q)
                     59:
                     60:     case -f:
                     61:        set f='filter'
                     62:        set options = "$options $1:q"
                     63:        shift
                     64:        goto top
                     65:
                     66:     case -t:
                     67:        set voptions = "$voptions -t"
                     68:        shift
                     69:        goto top
                     70:
                     71:     case -o*:
                     72:        set voptions="$voptions $1:q"
                     73:        shift
                     74:        goto top
                     75:
                     76:     case -W:
                     77:        set voptions = "$voptions -W"
                     78:        shift
                     79:        goto top
                     80:
                     81:     case -d:
                     82:        if ($#argv < 2) then
                     83:            echo "vgrind: $1:q option must have argument"
                     84:            goto done
                     85:        else
                     86:            set options = ($options $1:q $2)
                     87:            shift
                     88:            shift
                     89:            goto top
                     90:        endif
                     91:
                     92:     case -h:
                     93:        if ($#argv < 2) then
                     94:            echo "vgrind: $1:q option must have argument"
                     95:            goto done
                     96:        else
                     97:            set head="$2"
                     98:            shift
                     99:            shift
                    100:            goto top
                    101:        endif
                    102:
                    103:     case -*:
                    104:        set options = "$options $1:q"
                    105:        shift
                    106:        goto top
                    107:
                    108:     default:
                    109:        set files = "$files $1:q"
                    110:        shift
                    111:        goto top
                    112:     endsw
                    113: endif
                    114: if (-r index) then
                    115:     echo > nindex
                    116:     foreach i ($files)
                    117:        #       make up a sed delete command for filenames
                    118:        #       being careful about slashes.
                    119:        echo "? $i ?d" | sed -e "s:/:\\/:g" -e "s:?:/:g" >> nindex
                    120:     end
                    121:     sed -f nindex index >xindex
                    122:     if ($f == 'filter') then
                    123:        if ("$head" != "") then
                    124:            $vf $options -h "$head" $files | cat $tm/tmac.vgrind -
                    125:        else
                    126:            $vf $options $files | cat $tm/tmac.vgrind -
                    127:        endif
                    128:     else
                    129:        if ("$head" != "") then
                    130:            $vf $options -h "$head" $files | \
1.3     ! tholo     131:                sh -c "$troff -rx1 $voptions -i -mvgrind 2>> xindex"
1.1       deraadt   132:        else
                    133:            $vf $options $files | \
1.3     ! tholo     134:                sh -c "$troff -rx1 $voptions -i -mvgrind 2>> xindex"
1.1       deraadt   135:        endif
                    136:     endif
                    137:     sort -df +0 -2 xindex >index
                    138:     rm nindex xindex
                    139: else
                    140:     if ($f == 'filter') then
                    141:        if ("$head" != "") then
                    142:            $vf $options -h "$head" $files | cat $tm/tmac.vgrind -
                    143:        else
                    144:            $vf $options $files | cat $tm/tmac.vgrind -
                    145:        endif
                    146:     else
                    147:        if ("$head" != "") then
1.3     ! tholo     148:            $vf $options -h "$head" $files | $troff -i $voptions -mvgrind
1.1       deraadt   149:        else
1.3     ! tholo     150:            $vf $options $files | $troff -i $voptions -mvgrind
1.1       deraadt   151:        endif
                    152:     endif
                    153: endif
                    154:
                    155: done: