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