PROGRAM = $(SRC)SMLabyrinth
CC = gcc
SRC =src/
#DEBUGOUTPUT = -D DEBUG
OBJ = $(SRC)SMLabyrinth.o $(SRC)object.o $(SRC)schemaGameUtility.o $(SRC)bestroute.o $(SRC)guihandler.o $(SRC)gameIOManager.o $(SRC)schemaGameGenerator.o
CFLAGS =-O3 -Wall -lm `pkg-config --cflags libglade-2.0` $(DEBUGOUTPUT)
LDFLAGS =-export-dynamic -O3 -Wall -lm `pkg-config --libs libglade-2.0` $(DEBUGOUTPUT)

MKDIR =-mkdir exe
COPY =cp -r $(OBJ) $(PROGRAM) $(SRC)gui.glade $(SRC)games exe
REMOVE =rm $(OBJ) $(PROGRAM)
CLEANOUT =-rm -r exe

main: $(OBJ)
	$(CLEANOUT)
	$(CC) -o $(PROGRAM) $(OBJ) $(LDFLAGS) 
	$(MKDIR)
	$(COPY)
	$(REMOVE)

-include $(SRC)dependencies

.PHONY:	clean cleanall depend doc

depend:
	$(CC) -MM $(SRC)*.c > $(SRC)dependencies

doc:
	doxygen $(SRC)Doxyfile

clean:
	-rm $(SRC)*.o $(SRC)*~

cleanall:
	-rm -r exe doc $(SRC)dependencies $(PROGRAM) $(SRC)*.o $(SRC)*~

