#
# MAC   Version 2.0           Author :  Vincent Hayward
#                                       School of Electrical Engineering
#                                       Purdue University
#
#       Dir     : mac
#       File    : Makefile
#       Remarks : Make and maintain the controller code.
#
# make         : make the superviser moper
# make maint   : make the maintenance program
# make install : install the superviser program
# make test    : make the test program

LIBDIR = /c/rccl/s
CFLAGS = -O

SYSFILES = ../sys/vec.s   \
	   ../sys/trap.c

# Order is important

SYSOBJECTS = ../o/vec.o    \
	     ../o/trap.o

OPERO = ../o/dr11.o \
	../o/moper.o \
	../o/mcal.o

MAINTO = ../o/maint.o \
	 ../o/mcal.o

TESTO = ../o/dr11.o \
	../o/lsitst.o

ARMTYPE = ../o/maint.o  \
	  ../o/mcal.o   \
	  ../o/moper.o

RTC     = ../o/moper.o

ADDEFS  = ../o/maint.o \
	  ../o/moper.o \
	  ../o/mcal.o

JCOM    = ../o/maint.o \
	  ../o/moper.o \
	  ../o/mcal.o

CMDK    = ../o/moper.o

DATA    = ../o/maint.o

EXIOD   = ../o/moper.o  \
	  ../o/msdal.o

ADC     = ../o/moper.o

FIFOIO  = ../o/dr11.o \
	  ../o/lsitst.o\
	  ../o/moper.o


moper : $(SYSOBJECTS) $(OPERO)
	ld11 $(SYSOBJECTS) $(OPERO) -s -lc -o _.out
	rm -f moper
	mkabo < _.out > moper
	rm -f _.out

install: $(SYSOBJECTS) $(OPERO)
	ld11 $(SYSOBJECTS) $(OPERO) -s -lc -o _.out
	rm -f $(LIBDIR)/moper
	mkabo < _.out > $(LIBDIR)/moper
	rm -f _.out moper

maint : $(SYSOBJECTS) $(MAINTO)
	ld11 $(SYSOBJECTS) $(MAINTO) -s -lc -o _.out
	rm -f maint
	mkabo < _.out > maint
	rm -f _.out

test: $(SYSOBJECTS) $(TESTO)
	ld11 $(SYSOBJECTS) $(TESTO) -s -lc -o _.out
	rm -f lsitst
	mkabo < _.out > lsitst
	rm -f _.out


$(ARMTYPE) : ../h/which.h

$(DATA)    : ../h/pumadata.h ../h/standata.h

$(CMDK)    : ../h/cmdk.h

$(RTC)     : ../h/rtc.h

$(JCOM)    : ../h/jcom.h

$(ADDEFS)  : ../h/addefs.h

$(FIFOIO)   : ../h/fifoio.h

$(EXIOD)   : ../h/addefs.h

$(ADC)     : ../h/adc.h

../o/vec.o :   ../sys/vec.s
	cc11 ../sys/vec.s $(CFLAGS) -c
	mv vec.o ../o/vec.o

../o/trap.o :   ../sys/trap.c
	cc11 ../sys/trap.c $(CFLAGS) -c
	mv trap.o ../o/trap.o

../o/dr11.o :   ../sys/dr11.c
	cc11 ../sys/dr11.c $(CFLAGS) -c
	mv dr11.o ../o/dr11.o

../o/lsitst.o :   ../sys/lsitst.c
	cc11 ../sys/lsitst.c $(CFLAGS) -c
	mv lsitst.o ../o/lsitst.o

../o/msdal.o :  msdal.c
	cc11 msdal.c $(CFLAGS) -c
	mv msdal.o ../o/msdal.o

../o/moper.o :  moper.c
	cc11 moper.c $(CFLAGS) -c
	mv moper.o ../o/moper.o

../o/maint.o : maint.c
	cc11 maint.c $(CFLAGS) -c
	mv maint.o ../o/maint.o

../o/mcal.o : mcal.c
	cc11 mcal.c $(CFLAGS) -c
	mv mcal.o ../o/mcal.o
