#
# if you do not have flex available, deactivate the definitions of 
# LEX and LEXLIB; The program compiled with flex works also with the
# standard lex library (-ll). 
#
#                          Sun Feb 10 20:45:14 1991 -- Gustaf Neumann
.SUFFIXES: .ll .l
PROGS= lagl diact diacu diacs texuml umltex
LEX=flex
LEXLIB=-lfl

# for speedy binaries for flex, use -F
#LFLAGS=-8 -F
LFLAGS=-8 

# for speedy binaries on a Pentium under Linux
#CFLAGS= -O2 -m486 -malign-loops=2 -malign-jumps=2 -malign-functions=2
CFLAGS= -O2

# CC=gcc

.ll:
	@$(RM) -f $*.l
	./lagl <$*.ll >$*.l
	$(MAKE) $*
	@$(RM) -f $*.l

.l: 
	$(LEX) $(LFLAGS) $<
	$(CC) $(CFLAGS) $(LDFLAGS) lex.yy.c ${LEXLIB}  -o $@
	strip $@
	@$(RM) -f lex.yy.c


all: ${PROGS}

init: texuml lagl
	./texuml < diacs.tu > diacs.ll
	./texuml < diacu.tu > diacu.ll
	./texuml < umltex.tu > umltex.l


diact: diact.l diacaux.h diacaux.c
	${LEX} ${LFLAGS} $@.l
	$(CC) ${CFLAGS} ${DEFINES} -o $@ diacaux.c lex.yy.c ${LEXLIB}
	strip $@
	@$(RM) -f lex.yy.c lex.yy.o diacaux.o

clean:
	$(RM) ${PROGS} *.o *~ #* core diacs.l diacu.l


shar:
	./umltex < diacu.ll >diacu.tu
	./umltex < diacs.ll >diacs.tu
	./umltex < umltex.l >umltex.tu
	shar diac diacs.tu diacu.tu diact.l Makefile diacaux.c diacaux.h \
		texuml.l umltex.tu lagl.l READ.ME testwords	> diac.shar


FILES = \
	Makefile diac diacu.ll diacs.ll diact.l lagl.l \
	texuml.l umltex.l diacaux.c diacaux.h \
	README testwords
VERSION = 1.4

tar:
	mkdir diac-$(VERSION)
	find $(FILES) -print | cpio -pma diac-$(VERSION)
	tar zcvf diac-$(VERSION).tar.gz diac-$(VERSION)
	rm -rf diac-$(VERSION)
