
libtth : libtth.a

libtth.a : tthfunc.o
	ar -cr libtth.a tthfunc.o

tthfunc.o : tthfunc.c
	gcc -Wall -c tthfunc.c

tthfunc.c : tthfunc.lex
	flex -otthfunc.c tthfunc.lex

tthfunc.lex : ../tth.lex thefunction.c
	./maintofunction

calltthfunc : calltthfunc.o libtth
	gcc -Wall -o calltthfunc calltthfunc.c -L. -ltth

tthfunc.tgz : tthfunc/ calltthfunc.c ../tth.gif ../manual/tth_manual.html tthfunc.c
	tar czvhf tars/tthfunc.tgz tthfunc/*

tthdynamic/ :
	make -C tthdynamic clean

tthdynamic.c : tthdynamic.lex
	flex -otthdynamic.c -Ptth tthdynamic.lex

tthdynamic.lex : ../tth.lex thedynamic.c topdynamic.c tthreinitialize.c
	make -C tthdynamic clean
	./maintodynamic

tthdynamic.tgz : tthdynamic/ ../tth.gif ../manual/tth_manual.html tthdynamic.c
	tar czvhf tars/tthdynamic.tgz tthdynamic/*

libttm : libttm.a

libttm.a : ttmfunc.o
	ar -cr libttm.a ttmfunc.o

ttmfunc.o : ttmfunc.c
	gcc -Wall -c ttmfunc.c

ttmfunc.c : ttmfunc.lex
	flex -ottmfunc.c ttmfunc.lex

ttmfunc.lex : ../ttm.lex thefunction.c
	./maintomfunction

callttmfunc : callttmfunc.o libttm 
	gcc -Wall -o callttmfunc callttmfunc.c -L. -lttm

ttmfunc.tgz : ttmfunc/ callttmfunc.c ../ttm.gif ../manual/ttm_manual.html ttmfunc.c
	tar czvhf tars/ttmfunc.tgz ttmfunc/*

#ttmdynamic :  ttmdynamic/ttmdynamic
#	make -C ttmdynamic

ttmdynamic/ :
	make -C ttmdynamic clean

ttmdynamic.c : ttmdynamic.lex
	flex -ottmdynamic.c -Pttm ttmdynamic.lex

ttmdynamic.lex : ../ttm.lex thedynamic.c topdynamic.c
	make -C ttmdynamic clean
	./maintomdynamic

ttmdynamic.tgz : ttmdynamic/ ../ttm.gif ../manual/ttm_manual.html ttmdynamic.c
	tar czvhf tars/ttmdynamic.tgz ttmdynamic/*

../tth.lex : ../tthg.lex ../mathstringsh.lex ../equationh.lex
	make -C .. tth.lex

tars : tthdynamic.tgz ttmdynamic.tgz tthfunc.tgz ttmfunc.tgz

test : tthdynamic.c ttmdynamic.c
	make -C tthdynamic
	make -C ttmdynamic 
	make -C ttmdynamic clean
	make -C tthdynamic clean

all : tthdynamic.tgz ttmdynamic.tgz tthdynamic/ ttmdynamic/\
  calltthfunc callttmfunc 

clean :
	rm -f *.o *.a
	rm -f tars/*.tgz
	rm -f tt?func.c
	rm -f tt?dynamic.c
	rm -f tt*.lex