Browse Source

Several modifications and additions

ceriel 32 years ago
parent
commit
75e3e3af11
5 changed files with 80 additions and 45 deletions
  1. 2 0
      .distr
  2. 16 2
      Action
  3. 3 2
      Copyright
  4. 14 9
      NEW
  5. 45 32
      TakeAction

+ 2 - 0
.distr

@@ -7,6 +7,8 @@ bin
 doc
 emtest
 etc
+fast
+fcc
 first
 h
 include

+ 16 - 2
Action

@@ -1,9 +1,12 @@
 name	"System definition"
 dir first
 action ack_sys
-failure "You have to run the shell script first in the directory first"
+failure "You have to run the shell script first/first"
 fatal
 end
+name "Manual pages"
+dir man
+end
 ! name	"EM definition"
 ! dir etc
 ! end
@@ -15,6 +18,7 @@ dir util/cmisc
 end
 name "Flex lexical analyzer generator"
 dir util/flex
+action "make firstinstall && make clean"
 end
 name "Yacc parser generator"
 dir util/byacc
@@ -25,7 +29,7 @@ indir
 end
 name "LL(1) Parser generator"
 dir util/LLgen
-action "make firstinstall"
+action "make firstinstall && make clean"
 end
 name "C preprocessor"
 dir util/cpp
@@ -249,3 +253,13 @@ name "Motorola 68000 interpreters"
 system "m68*|sun*"
 dir mach/mantra/int
 end
+name "Fast compilers"
+system "m68020|sun3|i386|vax*"
+dir fast
+indir
+end
+name "Fast cc-compatible C compiler"
+system "sun3|vax*"
+dir fcc
+indir
+end

+ 3 - 2
Copyright

@@ -1,7 +1,8 @@
 /*
  *     A M S T E R D A M   C O M P I L E R   K I T
  *
- * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * Copyright (c) 1987, 1991 by the Vrije Universiteit, Amsterdam,
+ * The Netherlands.
  *
  * Permission to use, sell, duplicate or disclose this software must be
  * obtained in writing. Requests for such permissions may be sent to
@@ -9,7 +10,7 @@
  *      Dr. Andrew S. Tanenbaum
  *      Wiskundig Seminarium
  *      Vrije Universiteit
- *      De Boelelaan 1081
+ *      De Boelelaan 1081a
  *      1081 HV  Amsterdam
  *      The Netherlands
  *

+ 14 - 9
NEW

@@ -7,16 +7,21 @@ The major additions are:
 	- a LINT C program checker, both non-ansi and ansi
 	- an Intel 80386 back-end
 	- a SPARC code expander
-	- a source level debugger for Pascal, Modula-2, and ANSI C
+	- a source level debugger for Pascal, Modula-2, C, and ANSI C
 	- an Acorn Archimedes back-end
 	- code-expanders for VAX, Intel 80386 and Motorola M68020 processors,
-	  allowing the creation of very fast compilers.
+	  and very fast Pascal, Modula-2, ANSI C, and C compilers constructed
+	  using these code expanders
+	- a cc-compatible very fast C compiler for SUN-3 and VAX.
 
-				Ceriel J.H. Jacobs
-				Dept. of Math. and Computer Science
-				Vrije Universiteit
-				De Boelelaan 1081a
-				1081 HV  Amsterdam
-				The Netherlands
+Also added, but not part of the Kit proper are
+	- flex: a lexical analyzer generator
+	- byacc: yacc-clone by UCB
+	- f2c: a Fortran to C compiler by AT&T.
 
-				(Email: ceriel@cs.vu.nl)
+See the ACK installation manual for their copyright notices.
+
+--
+Ceriel Jacobs, Dept. of Mathematics and Computer Science, Vrije Universiteit,
+De Boelelaan 1081a, 1081 HV Amsterdam, The Netherlands
+Email:	ceriel@cs.vu.nl		Fax: +31 20 6427705

+ 45 - 32
TakeAction

@@ -15,7 +15,12 @@ fi
 case $0 in
 /*)	THISFILE=$0
 	;;
-*)	THISFILE=`pwd`/$0
+*)	if [ -f $0 ]
+	then
+		THISFILE=`pwd`/$0
+	else
+		THISFILE=$0
+	fi
 	;;
 esac
 SYS=
@@ -68,37 +73,45 @@ do
 			x)	echo Missing name line; RETC=65 ;;
 			*)	if test -d $DIR
 				then (
-				     cd $DIR
-				     X=
-				     case $ATYPE in
-				     indir)	
-					     if sh $THISFILE "$PAR" $ACTION
-					     then eval echo $SUCC
-						  touch NoAction
-					     else RETC=2 ; eval echo $FAIL
-					     fi ;;
-				     *)
-					     case "$ACTION" in
-					     '$PAR')	ACTION="$PAR"
-							;;
-					     *)		;;
-					     esac
-					     if [ -f NoAction ]
-					     then
-						ACTION='echo "No actions performed, NoAction file present"'
-					     fi
-					     if eval "{ $ACTION ; } >Out 2>&1 </dev/null"
-					     then eval echo $SUCC
-						  touch NoAction
-					     else RETC=1 ; X=: ; eval echo $FAIL
-					     fi
-					     ;;
-				     esac
-				     (echo ------- `pwd`
-				      cat Out
-				      $X rm -f Out
-				     ) 2>/dev/null 1>&- 1>&3
-				     exit $RETC
+				    cd $DIR
+				    X=
+				    case $ATYPE in
+				    indir)	
+					if $THISFILE "$PAR" $ACTION
+					then eval echo $SUCC
+					else RETC=2 ; eval echo $FAIL
+					fi ;;
+				    *)
+					case "$ACTION" in
+					'$PAR')
+					    	ACTION="$PAR"
+					    ;;
+					*)  ;;
+					esac
+					if [ -f No$CMD ]
+					then
+					    x=`cat No$CMD`
+					    if [ "$ACTION" = "$x" ]
+					    then
+						ACTION='echo "No actions performed, No$CMD file present"'
+						SUCC='$SYS -- skipped'
+					    fi
+					fi
+					if eval "{ $ACTION ; } >Out 2>&1 </dev/null"
+					then	eval echo $SUCC
+						if [ "$SUCC" = '$SYS -- skipped' ]
+						then :
+						else echo "$ACTION" > No$CMD 2>/dev/null
+						fi
+					else RETC=1 ; X=: ; eval echo $FAIL
+					fi
+					;;
+				    esac
+				    (echo ------- `pwd`
+				     cat Out
+				     $X rm -f Out
+				    ) 2>/dev/null 1>&- 1>&3
+				    exit $RETC
 				)
 				case $? in
 				0) ;;