#
# Buildfile for V kernel
# vax configuration-independent portion
# Jay Schuster, 1 Feb 85
#

#include ../../buildprefix
VPATH= . ../vax ../mi

#ifdef X
KNAME="xV Kernel"
VERBOSE=-DVERBOSE
#else X
KNAME="V Kernel"
VERBOSE=
#endif X

# First, define the world of VAXen
.SUFFIXES:
.SUFFIXES: .o .c .s .c

# how to compile a vax file
.c.o:
	ccVAX $(VERBOSE) $(CFLAGS) -c $*.c 

# how to make an assembly file (Not deleting it or assembling it)
.c.s:
	ccVAX $(VERBOSE) $(CFLAGS) -S $*.c

#END of the world of Vax's

# Files to be compiled without the optimizer
startup.o: startup.c
	ccVAX $(VERBOSE) $(NOOPCFLAGS) -c startup.c
exception.o: exception.c
	ccVAX $(VERBOSE) $(NOOPCFLAGS) -c $(HOST)/exception.c
deqna.o: deqna.c
	ccVAX $(VERBOSE) $(NOOPCFLAGS) -c $(HOST)/deqna.c
mscp.o: mscp.c
	ccVAX $(VERBOSE) $(NOOPCFLAGS) -c $(HOST)/mscp.c
rqdx.o: rqdx.c
	ccVAX $(VERBOSE) $(NOOPCFLAGS) -c $(HOST)/rqdx.c

$(HOST)/asmprocess.h: $(HOST)/makedefines $(MI)/process.h
	$(HOST)/makedefines > $(HOST)/asmprocess.h
$(HOST)/makedefines: $(HOST)/makedefines.c
	cc $(CFLAGS) -I$(VAXINCL) -I$(VINCL) -o $(HOST)/makedefines \
		$(HOST)/makedefines.c

# Standard buildfile entries
install:
	-mv $(CONFIG).sav $(CONFIG).old
	cp $(CONFIG) $(CONFIG).sav

clean:
	rm -f *.o *.b *.s *.ls *.BAK *.CKP .emacs* .netupd*
	rm -f Vkernel.* symbols $(CONFIG) tags
