CC       = g++
SDIR     = ../src
IDIR     = ../../libscl/gpp
LDIR     = ../../libscl/gpp
CFLAGS   = -O2 -Wall -c -I$(SDIR) -I$(IDIR)

HEADERS  = libsnp.h squash.h $(IDIR)/libscl.h

OBJECTS  = snpden.o afunc.o ufunc.o rfunc.o

libsnp.a : $(HEADERS) $(OBJECTS)
	rm -f libsnp.a
	ar -rsv libsnp.a $(OBJECTS)

libsnp.h : $(SDIR)/libsnp.h
	cp $(SDIR)/libsnp.h libsnp.h

squash.h : $(SDIR)/squash.h
	cp $(SDIR)/squash.h squash.h

snpden.o : $(SDIR)/snpden.cpp $(HEADERS)
	$(CC) $(CFLAGS) $(SDIR)/snpden.cpp

afunc.o	: $(SDIR)/afunc.cpp $(HEADERS)
	$(CC) $(CFLAGS) $(SDIR)/afunc.cpp

ufunc.o	: $(SDIR)/ufunc.cpp $(HEADERS)
	$(CC) $(CFLAGS) $(SDIR)/ufunc.cpp

rfunc.o	: $(SDIR)/rfunc.cpp $(HEADERS)
	$(CC) $(CFLAGS) $(SDIR)/rfunc.cpp

clean :
	rm -f *.o core core.*

veryclean :
	rm -f *.o core libsnp.a
	rm -f libsnp.a
	rm -f *.h

