SRCDIR=src
LIBDIR=lib
BINDIR=bin
TESTDIR=tests
INCLUDEDIR=include
DOCDIR=doc
CC = gcc
AR = ar
CFLAGS=-Wall -pedantic -g
LDFLAGS=-lcunit -lm -lc
TESTS = $(TESTDIR)/testsAVL

all :   $(TESTS)

$(TESTS) :  $(LIBDIR)/libsdd.a $(SRCDIR)/$(TESTDIR)/testAVL.o $(SRCDIR)/avl.o
	$(CC)  -o $@  -Llib  $(SRCDIR)/$(TESTDIR)/testAVL.o -lsdd $(LDFLAGS)   

$(LIBDIR)/libsdd.a : $(SRCDIR)/arbreBinaire.o
	$(AR)  -r $@  $^

$(SRCDIR)/%.o : $(SRCDIR)/%.c
	$(CC) -o $@ -c $< $(CFLAGS) -I$(INCLUDEDIR)  

$(SRCDIR)/$(TESTDIR)/%.o : $(SRCDIR)/$(TESTDIR)/%.c
	$(CC) -o $@ -c $< $(CFLAGS) -I$(INCLUDEDIR) 

clean :
	rm -rf ./$(BINDIR)/*
	rm -rf ./$(TESTDIR)/*
	rm -rf ./$(LIBDIR)/*
	rm -rf ./$(SRCDIR)/*.o
	rm -rf ./$(SRCDIR)/*.o ./$(SRCDIR)/$(TESTDIR)/*.o
	rm -rf ./$(DOCDIR)/*
