CFLAGS = -O2 -fweb -frename-registers -funswitch-loops -funroll-loops -Winline -fopenmp 
LDLIBS = -lm

OBJ = .o
EXE =

CC = gcc
CP = cp

GPP = g++
LD = $(GPP) $(CFLAGS)
CPP = $(GPP) -c $(CFLAGS) 
DEPEND= makedepend -Y > nul 2>&1

%.o: %.cpp
	$(CPP) $< -o $@

all: ESFclust preproc

PREPROCSRC = preproc.cpp util.cpp FASTA.cpp needle.cpp ProbModel.cpp
ESTREESRC = ESTreeOMP.cpp ESTmain.cpp util.cpp FASTA.cpp TreeClust.cpp needle.cpp kmer.cpp global.cpp PBPTree.cpp distcache.cpp ProbModel.cpp
PREPROCOBJ	= $(subst .cpp,.o,$(PREPROCSRC))
ESTREECLUSTOBJ = $(subst .cpp,.o,$(ESTREESRC))

preproc: $(PREPROCOBJ)
	$(LD) -o preproc $(PREPROCOBJ) $(LDLIBS)

ESFclust: $(ESTREECLUSTOBJ)
	$(LD) -o ESFclust $(ESTREECLUSTOBJ) $(LDLIBS)

clean:
	rm -rf *.o *.bak ESFclust.exe ESFclust preproc.exe preproc

depend: $(ESTREESRC)
	$(DEPEND) $(ESTREESRC)
# DO NOT DELETE
