 
SRCS1 =	wml.c		wmlouth.c	wmloutmm.c \
	wmloutp1.c	wmlresolve.c	wmlsynbld.c	wmlutils.c
 
OBJS1 =	wml.o		wmloutkey.o	wmlouth.o	wmloutmm.o \
	wmloutp1.o	wmlresolve.o	wmlsynbld.o	wmlutils.o
 
SRCS2 = wmluiltok.l
 
OBJS2 = wmlparse.o
 
SRCS = $(SRCS1) $(SRCS2)
 
TARGETS = UilConst.h	UilKeyTab.h	UilLexPars.c	UilLexPars.h \
	UilSymArTa.h	UilSymArTy.h	UilSymCSet.h	UilSymCtl.h \
	UilSymEnum.h	UilSymGen.h	UilSymNam.h	UilSymRArg.h \
	UilSymReas.h	UilTokName.h	UilUrmClas.h
 
TABLE = motif.wml
 
NormalLibraryObjectRule()
 
all:: copy
 
libwml.a:: $(OBJS2) $(OBJS1)
	$(RM) libwml.a
	$(AR) libwml.a $(OBJS2) $(OBJS1)
	$(RANLIB) libwml.a
 
wml::	libwml.a
	$(CC) $(CFLAGS) libwml.a -ll -o wml
	
wmlparse.c::	wmlparse.y wmllex.l
	lex wmllex.l
	$(MV) lex.yy.c wmllex.c
	yacc -d $(YACCFLAGS) wmlparse.y
	$(MV) y.tab.c wmlparse.c
	$(MV) y.tab.h wmlparse.h
 
wmlparse.h::	wmlparse.y wmllex.l
	lex wmllex.l
	$(MV) lex.yy.c wmllex.c
	yacc -d $(YACCFLAGS) wmlparse.y
	$(MV) y.tab.c wmlparse.c
	$(MV) y.tab.h wmlparse.h
 
wmluiltok::	wmluiltok.l
	lex wmluiltok.l
	$(CC) $(CFLAGS) lex.yy.c -ll -o wmluiltok

wmltools::	wml wmluiltok

runwml::	wmltools $(TABLE)
	$(RM) $(TARGETS)
	$(RM) wml.report
	yacc -d $(YACCFLAGS) Uil.y
	$(MV) y.tab.c UilLexPars.c
	$(MV) y.tab.h UilLexPars.h
	./wmluiltok < Uil.y > tokens.dat
	$(RM) wml-uil.mm
	./wml $(TABLE)
	$(RM) tokens.dat

copy:: runwml
	( cd $(UILSRC); $(RM) $(TARGETS) )
	cp $(TARGETS) $(UILSRC)
	$(RM) $(UILSRC)/UilDBDef.h
	cp UilDBDef.h $(UILSRC)
 
clean::
	$(RM) $(TARGETS) lex.yy.c libwml.a wml *.mm *.o \
	wml.report wmlparse.c wmlparse.h wmluiltok wmllex.c
 
depend:: wmlparse.h 

DependTarget()

