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