# ---------------------------------------------------------- 
#   (C)1993 Institute for New Generation Computer Technology 
#       (Read COPYRIGHT for detailed information.) 
# ----------------------------------------------------------
PROLOG_SOURCE = bb.pl extern.pl gb.pl generate.pl insert.pl kl1cmp.pl \
	loadup.pl macro.pl normalize.pl obj.pl util.pl write.pl version.pl

all: kl1cmp klicdb klic

kl1cmp:	$(PROLOG_SOURCE)
	$(PROLOG) -l loadup </dev/null
klicdb: klicdb.c klic.h
	$(CC) -I../include $(CFLAGS) -o klicdb klicdb.c $(LDFLAGS)
klic:	klic.c klic.h
	$(CC) -I../include $(CFLAGS) -o klic klic.c $(LDFLAGS)

version.pl: version.pl.tmplt
	sed -e "s%##DATE%`date`%" <version.pl.tmplt >version.pl

install: all
	- $(INSTDIR) $(KLICBIN)
	- $(INSTDIR) $(KLICLIB)/klic
	if (test `pwd` != $(KLICBIN)) then ($(INSTALL) klic $(KLICBIN)) fi
	if (test `pwd` != $(KLICLIB)/klic) then \
		($(INSTALL) kl1cmp klicdb $(KLICLIB)/klic) fi

depend: klic.c klicdb.c klic.h
	makedepend -- $(CFLAGS) -- klic.h klicdb.c klic.h

list.dvi: list.tex
	tex list.tex
list.tex: $(PROLOG_SOURCE)
	tgrind -lprolog -f -n $(PROLOG_SOURCE) |\
	sed -e "s%^}}$$%%g" >list.tex

ALL_INDICES = bb.idx extern.idx gb.idx generate.idx \
	insert.idx kl1cmp.idx loadup.idx \
	macro.idx normalize.idx obj.idx util.idx write.idx

%.idx: %.pl
	sed -n -e "/^[a-z]/{;s/(.*//;s/ *:-.*//;p;s/^.*$$/$</p;=;}" <$< |\
	sed -n -e "{;N;N;y/\n/ /;p;}" >$@

index.txt: $(ALL_INDICES)
	sort -u +0 -1 $(ALL_INDICES) >index.txt

index.body: index.txt
	sed -n -e "{;s/^/\\\\entry[/;s/ /\][/g;s/$$/]/;p;}" <index.txt |\
	sed -e "s/\[/{/g" |\
	sed -e "s/\]/}/g" >index.body

index.tex: index-head index.body index-tail
	cat index-head index.body index-tail >index.tex

index.dvi: index.tex
	latex index.tex

clean:
	/bin/rm -f *.o Makefile.bak *.idx *.txt \
		index.* list.* *~ \#*\#
distclean:	clean
	/bin/rm -f kl1cmp klicdb klic

# DO NOT DELETE THIS LINE -- make depend depends on it.

klicdb.o: klic.h
