ASSIGNOBJS = allpurpose.o util.o
XHASSOBJS = ui.o util.o
CHASSOBJS = cursesui.o util.o
BAMBAMOBJS = bambam.o util.o
PHAEDOOBJS = y.tab.o parser.o builder.o formup2.o memory.o evaluator.o converters.o

XLIBS = -lXm -lXt -lX11
CLIBS = -L/usr/athena/lib -lcom_err -lcurses -ltermcap -lc
CFLAGS = -g -I/usr/athena/include -I/usr/include
CC = cc
LDFLAGS = -L/usr/athena/lib -lkrb -ldes -lhesiod

all:	phedu xphedu

bambam: $(BAMBAMOBJS) $(PHAEDOOBJS)
	 $(CC) $(CFLAGS) -o bambam $(BAMBAMOBJS) $(PHAEDOOBJS) $(CLIBS) $(LDFLAGS)

phedu: $(CHASSOBJS) $(PHAEDOOBJS)
	 $(CC) $(CFLAGS) -o phedu $(CHASSOBJS) $(PHAEDOOBJS) $(CLIBS) $(LDFLAGS)

xphedu: $(XHASSOBJS) $(PHAEDOOBJS)
	 $(CC) $(CFLAGS) -o xphedu $(XHASSOBJS) $(PHAEDOOBJS) $(XLIBS) $(LDFLAGS)
allpurpose: $(ASSIGNOBJS) $(PHAEDOOBJS)
	 $(CC) $(CFLAGS) -o phpurpose $(ASSIGNOBJS) $(PHAEDOOBJS) $(CLIBS) $(LDFLAGS)

parser.o:	parser.l layout.h
		$(LEX) -t parser.l > parser.c
		$(CC) $(CFLAGS) -c parser.c

y.tab.o:	parser.y layout.h
		$(YACC) -d parser.y
		$(CC) $(CFLAGS) -c y.tab.c
