#  (C) Copyright 1990,1991 by Wade L. Hennessey. All rights reserved. 

sparc:  common sparc-only
	(cd bignum; make sparc CC="$(CC)")

sparc-only: sparc-integer-arith.o sparc-loader.o sparc-interrupts.o \
            sparc-apply.o

mips:	common generic-apply.o mips-only
	(cd bignum; make mips CC="$(CC)")

mips-only: mips-integer-arith.o mips-loader.o mips-interrupts.o 

sun-68k: common sparc-integer-arith.o sparc-loader.o sparc-interrupts.o

common:	 chars.o arith.o  array.o bignum generic-loader.o socket.o \
	 memory.o io.o closure.o init.o time.o error.o funcall.o \
	 dynamic.o misc.o eval-code.o


dynamic.o: lisp.h
	$(CC) -c    dynamic.c

time.o:	lisp.h
	$(CC) -c    time.c

init.o:	lisp.h
	$(CC) -c    init.c

error.o: lisp.h
	$(CC) -c    error.c

funcall.o: lisp.h
	$(CC) -c    funcall.c

misc.o:	lisp.h
	$(CC) -c    misc.c

# Eval always needs debugging info if we want to debug
# interpreted code. GCC with -O and -g seems to screw up the debugging
# info, so we just use cc.
eval-code.o:	lisp.h
	$(CC) -c  -g eval-code.c

memory.o:	lisp.h
	$(CC) -c    memory.c

chars.o:	lisp.h
	$(CC) -c    chars.c

arith.o:	lisp.h
	$(CC) -c    arith.c

array.o:	lisp.h
	$(CC) -c    array.c	

io.o:		lisp.h
	$(CC) -c    io.c

closure.o:	lisp.h
	$(CC) -c    closure.c

socket.o:	lisp.h
	$(CC) -c    -DUNIXCONN socket.c

mips-interrupts.o:	lisp.h
	$(CC) -c    -o interrupts.o mips-interrupts.c

sparc-interrupts.o:	lisp.h
	$(CC) -c    -o interrupts.o sparc-interrupts.c


generic-loader.o:	lisp.h
	$(CC) -c    generic-loader.c

mips-loader.o:	lisp.h
	$(CC) -c    mips-loader.c

sparc-loader.o:	lisp.h
	$(CC) -c    sparc-loader.c

mips-integer-arith.o:	mips-integer-arith.s
	as -k -o integer-arith.o mips-integer-arith.s

sparc-integer-arith.o: sparc-integer-arith.s
	as -k -o integer-arith.o sparc-integer-arith.s

generic-apply.o: generic-apply.c
	$(CC) -c  -o apply.o generic-apply.c

sparc-apply.o: sparc-apply.s
	as -k -o apply.o sparc-apply.s

clean: 
	rm -f *.o bignum/*.o
