KLIC	= klic

RM	= /bin/rm -f

INTERPRETER = interpreter
CHECK_TOPOLOGY = check_topology
SIM_3TREE = sim_3tree

KL1_SRC = interpreter.kl1 list.kl1 tranprobmat.kl1 otermio.kl1 pml.kl1 \
	string.kl1 sim.kl1 tree.kl1 nj.kl1 dismat.kl1 \
	traverse.kl1 ancestor.kl1 ancestorn.kl1 format.kl1 \
	ml.kl1 traversen.kl1

CHECK_TOPOLOGY_KL1_SRC = check_topology.kl1 list.kl1 otermio.kl1 tree.kl1
SIM_3TREE_KL1_SRC = sim_3tree.kl1 list.kl1 otermio.kl1 \
	pml.kl1 \
	string.kl1 \
	threetree.kl1 sim.kl1 format.kl1 dismat.kl1 ancestor.kl1 \
	traverse.kl1 tree.kl1 tranprobmat.kl1

C_SRC = getseq.c seqproc.c mltree.c altree.c qltree.c sltree.c \
	njtree.c njmtree.c prtree.c pstree.c matrixut.c mygetopt.c \
	protml.c protproc.c dyhfjtt.c mtrev24.c tranprb.c distan.c mlklhd.c \
	free_tree.c


all: $(INTERPRETER_SRC)
	$(KLIC) -v -o $(INTERPRETER) $(KL1_SRC) $(C_SRC)
	$(KLIC) -v -o $(CHECK_TOPOLOGY) $(CHECK_TOPOLOGY_KL1_SRC)
	$(KLIC) -v -o $(SIM_3TREE) $(SIM_3TREE_KL1_SRC) $(C_SRC)

sim_3tree: 
	$(KLIC) -g -v -o $(SIM_3TREE) $(SIM_3TREE_KL1_SRC) $(C_SRC)

clean : 
	-$(RM) *~ *.o core\
               $(KL1_SRC:.kl1=.ext) \
               $(KL1_SRC:.kl1=.c) \
               $(CHECK_TOPOLOGY_KL1_SRC:.kl1=.ext) \
               $(CHECK_TOPOLOGY_KL1_SRC:.kl1=.c) \
               $(SIM_3TREE_KL1_SRC:.kl1=.ext) \
               $(SIM_3TREE_KL1_SRC:.kl1=.c) \
               atom.h atom.c funct.h funct.c \
               predicates.c klic.db \
               $(INTERPRETER) # for test \
               $(CHECK_TOPOLOGY) # for test
 



