MACHINE = SUN3
#	Select 'VAX', 'SUN', 'SUN2R3', 'SUN3', 'ISI', 'SEQ', 'IBMRT',
#	or 'NEWS'.


HDIR	= ../h
ODIR	= ../o
LSPDIR	= ../lsp
PORTDIR	= ../unixport-small


DEFS	= -D$(MACHINE) -DMAXPAGE=16384 -DVSSIZE=8152
CFLAGS	= -c $(DEFS) -I$(HDIR)

LIBS	= -lm


OBJS	= $(ODIR)/main.o $(ODIR)/alloc.o $(ODIR)/gbc.o \
	$(ODIR)/bitop.o $(ODIR)/typespec.o $(ODIR)/eval.o \
	$(ODIR)/macros.o $(ODIR)/lex.o $(ODIR)/bds.o \
	$(ODIR)/frame.o $(ODIR)/predicate.o $(ODIR)/reference.o \
	$(ODIR)/assignment.o $(ODIR)/bind.o $(ODIR)/let.o \
	$(ODIR)/conditional.o $(ODIR)/block.o $(ODIR)/iteration.o \
	$(ODIR)/mapfun.o $(ODIR)/prog.o $(ODIR)/multival.o \
	$(ODIR)/catch.o $(ODIR)/symbol.o $(ODIR)/cfun.o \
	$(ODIR)/cmpaux.o $(ODIR)/package.o $(ODIR)/big.o \
	$(ODIR)/number.o $(ODIR)/num_pred.o $(ODIR)/num_comp.o \
	$(ODIR)/num_arith.o $(ODIR)/num_sfun.o $(ODIR)/num_co.o \
	$(ODIR)/num_log.o $(ODIR)/num_rand.o $(ODIR)/earith.o \
	$(ODIR)/character.o $(ODIR)/char_table.o $(ODIR)/sequence.o \
	$(ODIR)/list.o $(ODIR)/hash.o $(ODIR)/array.o \
	$(ODIR)/string.o $(ODIR)/structure.o $(ODIR)/toplevel.o \
	$(ODIR)/file.o $(ODIR)/read.o $(ODIR)/backq.o \
	$(ODIR)/print.o $(ODIR)/format.o $(ODIR)/pathname.o \
	$(ODIR)/unixfsys.o $(ODIR)/unixfasl.o $(ODIR)/error.o \
	$(ODIR)/unixtime.o $(ODIR)/unixsys.o $(ODIR)/unixsave.o \
	$(ODIR)/unixint.o

LSPOBJS	= $(LSPDIR)/defmacro.o $(LSPDIR)/evalmacros.o $(LSPDIR)/top.o \
	$(LSPDIR)/module.o $(LSPDIR)/predlib.o $(LSPDIR)/setf.o \
	$(LSPDIR)/arraylib.o $(LSPDIR)/assert.o $(LSPDIR)/defstruct.o \
	$(LSPDIR)/describe.o $(LSPDIR)/iolib.o $(LSPDIR)/listlib.o \
	$(LSPDIR)/mislib.o $(LSPDIR)/numlib.o $(LSPDIR)/packlib.o \
	$(LSPDIR)/seq.o $(LSPDIR)/seqlib.o $(LSPDIR)/trace.o



saved_kcl:	raw_kcl init_kcl.lsp \
		$(LSPDIR)/setdoc.lsp
	raw_kcl $(PORTDIR)/ < init_kcl.lsp

raw_kcl:	$(OBJS) sys_kcl.o $(LSPOBJS)
	cc -o raw_kcl $(OBJS) sys_kcl.o $(LSPOBJS) $(LIBS)

sys_kcl.o:	sys_kcl.c
	cc $(CFLAGS) sys_kcl.c


clean:
	rm -f saved_kcl raw_kcl *.o core a.out
