1 1.1 cgd #!/bin/sh - 2 1.10 cgd # $NetBSD: mkscripts.sh,v 1.10 1995/04/23 10:07:36 cgd Exp $ 3 1.10 cgd # 4 1.1 cgd # This script generates ed test scripts (.ed) from .t files 5 1.1 cgd 6 1.1 cgd PATH="/bin:/usr/bin:/usr/local/bin/:." 7 1.6 alm ED=$1 8 1.6 alm [ ! -x $ED ] && { echo "$ED: cannot execute"; exit 1; } 9 1.1 cgd 10 1.1 cgd for i in *.t; do 11 1.1 cgd # base=${i%.*} 12 1.4 alm # base=`echo $i | sed 's/\..*//'` 13 1.8 alm # base=`expr $i : '\([^.]*\)'` 14 1.8 alm # ( 15 1.8 alm # echo "#!/bin/sh -" 16 1.8 alm # echo "$ED - <<\EOT" 17 1.8 alm # echo "r $base.d" 18 1.8 alm # cat $i 19 1.8 alm # echo "w $base.o" 20 1.8 alm # echo EOT 21 1.8 alm # ) >$base.ed 22 1.8 alm # chmod +x $base.ed 23 1.8 alm # The following is pretty ugly way of doing the above, and not appropriate 24 1.8 alm # use of ed but the point is that it can be done... 25 1.8 alm base=`$ED - \!"echo $i" <<-EOF 26 1.8 alm s/\..* 27 1.8 alm EOF` 28 1.8 alm $ED - <<-EOF 29 1.8 alm a 30 1.8 alm #!/bin/sh - 31 1.8 alm $ED - <<\EOT 32 1.8 alm H 33 1.8 alm r $base.d 34 1.8 alm w $base.o 35 1.8 alm EOT 36 1.8 alm . 37 1.8 alm -2r $i 38 1.8 alm w $base.ed 39 1.8 alm !chmod +x $base.ed 40 1.8 alm EOF 41 1.2 cgd done 42 1.2 cgd 43 1.2 cgd for i in *.err; do 44 1.2 cgd # base=${i%.*} 45 1.5 alm # base=`echo $i | sed 's/\..*//'` 46 1.8 alm # base=`expr $i : '\([^.]*\)'` 47 1.8 alm # ( 48 1.8 alm # echo "#!/bin/sh -" 49 1.8 alm # echo "$ED - <<\EOT" 50 1.8 alm # echo H 51 1.8 alm # echo "r $base.err" 52 1.8 alm # cat $i 53 1.8 alm # echo "w $base.o" 54 1.8 alm # echo EOT 55 1.8 alm # ) >$base-err.ed 56 1.8 alm # chmod +x $base-err.ed 57 1.8 alm # The following is pretty ugly way of doing the above, and not appropriate 58 1.8 alm # use of ed but the point is that it can be done... 59 1.8 alm base=`$ED - \!"echo $i" <<-EOF 60 1.8 alm s/\..* 61 1.8 alm EOF` 62 1.8 alm $ED - <<-EOF 63 1.8 alm a 64 1.8 alm #!/bin/sh - 65 1.8 alm $ED - <<\EOT 66 1.8 alm H 67 1.8 alm r $base.err 68 1.8 alm w $base.o 69 1.8 alm EOT 70 1.8 alm . 71 1.8 alm -2r $i 72 1.8 alm w ${base}.red 73 1.8 alm !chmod +x ${base}.red 74 1.8 alm EOF 75 1.1 cgd done 76