INCRT = /usr/$(PFX)include
LIB2 = ../../../lib/lib2
HFILES = $(INCRT)/sys/pc32k.h $(INCRT)/sys/dev32k.h

all:	opdiag opsash

opdiag:	low.o ns32000low.o mon.o boot.o
	$(PFX)ld -o opdiag ld.file low.o ns32000low.o mon.o boot.o -l$(PFX)2

opsash:	slow.o ns32000low.o smon.o sboot.o sash.o Ainit.o Aconf.o NS32dk.o \
	open.o close.o read.o write.o fstat.o lseek.o
	$(PFX)ld -o opsash ld.file slow.o ns32000low.o smon.o sboot.o sash.o \
		Ainit.o Aconf.o NS32dk.o open.o close.o read.o write.o fstat.o \
		lseek.o -l$(PFX)2

low.o:	$(HFILES) ns32000asm.h low.s
	/lib/$(PFX)cpp -P -I$(INCRT) < low.s > low.i
	$(PFX)as -o low.o low.i
	rm -f low.i

slow.o:	$(HFILES) ns32000asm.h low.s
	/lib/$(PFX)cpp -P -I$(INCRT) -DOPSASH < low.s > slow.i
	$(PFX)as -o slow.o slow.i
	rm -f slow.i

mon.o:	$(HFILES) mon.c 
	$(PFX)cc -Dns32000 -O -c -DBOOT mon.c
	
smon.o:	$(HFILES) mon.c
	cp mon.c smon.c
	$(PFX)cc -Dns32000 -O -c -DSASH smon.c
	rm -f smon.c

ns32000low.o: $(HFILES) ns32000low.c
	$(PFX)cc -Dns32000 -O -c -DBOOT ns32000low.c

Ainit.o: $(HFILES) $(LIB2)/Ainit.c
	$(PFX)cc -Dns32000 -O -c -DSASH $(LIB2)/Ainit.c

Aconf.o: $(HFILES) $(LIB2)/Aconf.c
	$(PFX)cc -Dns32000 -O -c -DSASH $(LIB2)/Aconf.c

NS32dk.o: $(HFILES) $(LIB2)/NS32dk.c
	$(PFX)cc -Dns32000 -O -c -DSASH $(LIB2)/NS32dk.c

open.o: $(HFILES) $(LIB2)/open.c
	$(PFX)cc -Dns32000 -O -c -DSASH $(LIB2)/open.c

close.o: $(HFILES) $(LIB2)/close.c
	$(PFX)cc -Dns32000 -O -c -DSASH $(LIB2)/close.c

read.o: $(HFILES) $(LIB2)/read.c
	$(PFX)cc -Dns32000 -O -c -DSASH $(LIB2)/read.c

write.o: $(HFILES) $(LIB2)/write.c
	$(PFX)cc -Dns32000 -O -c -DSASH $(LIB2)/write.c

fstat.o: $(HFILES) $(LIB2)/fstat.c
	$(PFX)cc -Dns32000 -O -c -DSASH $(LIB2)/fstat.c

lseek.o: $(HFILES) $(LIB2)/lseek.c
	$(PFX)cc -Dns32000 -O -c -DSASH $(LIB2)/lseek.c

boot.o:	$(HFILES) boot.c
	$(PFX)cc -Dns32000 -O -c boot.c

sboot.o: $(HFILES) boot.c
	cp boot.c sboot.c
	$(PFX)cc -Dns32000 -O -c -DSASH sboot.c
	rm -f sboot.c

sash.o: sash.c
	$(PFX)cc -Dns32000 -O -c -DSASH sash.c

clean:
	rm -f *.o low.i slow.i smon.c sboot.c

clobber: clean
	rm -f opdiag opsash 
