include ../../settings.make


CCFLAGS += -I ../../include $(CCFLAGS_HDF5)
LDFLAGS += ../../lib/libquickflash.a

EXEC = layer_distrib

all : $(EXEC)

clean : 
	rm -f $(EXEC) *.o

layer_distrib : layer_distrib.o stat_bins.o mixing_layer.o fft.o grid_fft.o \
	    layer_detection.o
	$(LD) -o layer_distrib layer_distrib.o stat_bins.o mixing_layer.o \
	    fft.o grid_fft.o layer_detection.o $(LDFLAGS) $(LDFLAGS_HDF5) \
	    $(LDFLAGS_GSL)

layer_detect : layer_detect.o stat_bins.o mixing_layer.o
	$(LD) -o layer_detect layer_detect.o stat_bins.o mixing_layer.o \
	    $(LDFLAGS) $(LDFLAGS_HDF5)

layer_distrib.o : layer_distrib.cpp mixing_layer.hpp stat_bins.hpp \
	    layer_detection.hpp
	$(CXX) -c $(CCFLAGS) -o layer_distrib.o layer_distrib.cpp

layer_detect.o : layer_detect.cpp mixing_layer.hpp
	$(CXX) -c $(CCFLAGS) -o layer_detect.o layer_detect.cpp

layer_detection.o : layer_detection.hpp layer_detection.cpp
	$(CXX) -c $(CCFLAGS) -o layer_detection.o layer_detection.cpp

stat_bins.o : stat_bins.hpp stat_bins.cpp
	$(CXX) -o stat_bins.o -c $(CCFLAGS) stat_bins.cpp

mixing_layer.o : mixing_layer.hpp mixing_layer.cpp stat_bins.hpp grid_fft.hpp
	$(CXX) -o mixing_layer.o -c $(CCFLAGS) mixing_layer.cpp

fft.o : fft.hpp fft.cpp
	$(CXX) -o fft.o -c $(CCFLAGS) $(CCFLAGS_GSL) fft.cpp

grid_fft.o : grid_fft.hpp grid_fft.cpp fft.hpp
	$(CXX) -o grid_fft.o -c $(CCFLAGS) grid_fft.cpp


