PREFIX := /usr/local

all : libgslcpp.a

CXX := g++
LINKER := g++

CXXFLAGS := -g -O0
#CXXFLAGS := -O3
LFLAGS := -g

MAKE_DEP := gcc -MM

TESTS := vf_test ls_test
TESTFLAGS := -g -L. 
TESTLIBS := -lgslcpp -lgsl -lgslcblas -lm

SRCS := $(filter-out $(addsuffix .cc, $(TESTS)), $(wildcard *.cc))
DEPS := $(patsubst %.cc, %.d, $(wildcard *.cc))
OBJS := $(patsubst %.cc, %.o, $(SRCS))

libgslcpp.a : libgslcpp.a($(OBJS))

sinclude $(DEPS)

%.d : %.cc
	@$(MAKE_DEP) $^ 2>/dev/null | sed 's/\($*\)\.o[ :]*/\1.o $@ :/g' > $@

$(TESTS) : % : %.o
	$(LINKER) $(TESTFLAGS) -o $@ $< $(TESTLIBS)

$(TESTS) : libgslcpp.a

clean:  
	rm -rf *.o *.a *.d $(TESTS) 

.PHONY: all clean 

