CC=g++
CFLAGS=#-W -Wall
GSL=#-lgsl -lgslcblas
OPT=-O3 -funroll-loops #-ftree-vectorize -ffast-math 
BIOPHYL=#-lbpp-phyl
BIONUC=#-lbpp-numcalc
BIOUT=#-lbpp-utils
BIOSEQ=#-lbpp-seq
RM=rm -f
STATIC=-search_paths_first -lstdc++-static

all:	fd fdbc.o create.o merge stats.o file_manip.o 

fd: fd_tree.cpp fdbc.o create.o stats.o
	$(CC) $(ARCH)  $(CFLAGS) $(OPT)  $(STATIC) fd_tree.cpp -o cfc $(BIOPHYL) $(BIOUT) $(BIONUC) $(BIOSEQ) $(GSL) /usr/local/lib/libbpp-utils.a /usr/local/lib/libbpp-numcalc.a /usr/local/lib/libbpp-seq.a /usr/local/lib/libbpp-phyl.a /usr/local/lib/libgsl.a /usr/local/lib/libgslcblas.a create.o fdbc.o stats.o 
fdbc.o: fdbc.cpp
	$(CC)  $(ARCH) $(CFLAGS) $(OPT) -c fdbc.cpp 
create.o: create.cpp
	$(CC) $(ARCH) $(CFLAGS) $(OPT) -c create.cpp
merge:	merge.cpp stats.o file_manip.o
	$(CC) $(CFLAGS) $(OPT) merge.cpp -o merge $(GSL) stats.o file_manip.o
stats.o: stats.cpp
	$(CC) $(CFLAGS) $(OPT) -c stats.cpp $(STATIC) 
file_manip.o: file_manip.cpp
	$(CC) $(ARCH) $(CFLAGS) $(OPT) -c file_manip.cpp $(STATIC)  
clean:
	$(RM) *.o cfc merge
