PROJECT = Media\ Index.exe

CC = g++.exe
MOC = $(QTDIR)/bin/moc.exe

COMPILER_DEBUG_FLAG = 
COMPILER_WARNINGS   = -Wall
COMPILER_STANDARD   = -ansi
COMPILER_FLAGS      = $(COMPILER_DEBUG_FLAG) $(COMPILER_WARNINGS) $(COMPILER_STANDARD)

BINDIR = ./bin
OBJDIR = ./obj
SRCDIR = ./src

INCDIR = -I$(SRCDIR) -I$(QTDIR)/include
LIBDIR = -L$(QTDIR)/lib
LIBS   = -lQtCore4 -lQtXml4 -lqtmain -lQtGui4

OBJ = $(OBJDIR)/main.o \
	  $(OBJDIR)/gui.o \
	  $(OBJDIR)/moc_gui.o \
	  $(OBJDIR)/xmlreader.o \
	  $(OBJDIR)/moc_xmlreader.o \
	  $(OBJDIR)/list.o \
	  $(OBJDIR)/moc_list.o

$(BINDIR)/$(PROJECT) : $(OBJ)
	$(CC) -o $(BINDIR)/$(PROJECT) $(OBJ) $(LIBDIR) $(LIBS)

$(OBJDIR)/main.o : $(SRCDIR)/main.cpp
	$(CC) $(COMPILER_FLAGS) $(INCDIR) -c $(SRCDIR)/main.cpp -o $(OBJDIR)/main.o

$(OBJDIR)/gui.o : $(SRCDIR)/gui.cpp $(SRCDIR)/gui.h $(OBJDIR)/xmlreader.o $(OBJDIR)/list.o
	$(CC) $(COMPILER_FLAGS) $(INCDIR) -c $(SRCDIR)/gui.cpp -o $(OBJDIR)/gui.o

$(OBJDIR)/moc_gui.o : $(SRCDIR)/gui.h
	$(MOC) -o $(SRCDIR)/moc_gui.cpp $(SRCDIR)/gui.h
	$(CC) $(COMPILER_FLAGS) $(INCDIR) -c $(SRCDIR)/moc_gui.cpp -o $(OBJDIR)/moc_gui.o

$(OBJDIR)/xmlreader.o : $(SRCDIR)/xmlreader.cpp $(SRCDIR)/xmlreader.h
	$(CC) $(COMPILER_FLAGS) $(INCDIR) -c $(SRCDIR)/xmlreader.cpp -o $(OBJDIR)/xmlreader.o

$(OBJDIR)/moc_xmlreader.o : $(SRCDIR)/xmlreader.h
	$(MOC) -o $(SRCDIR)/moc_xmlreader.cpp $(SRCDIR)/xmlreader.h
	$(CC) $(COMPILER_FLAGS) $(INCDIR) -c $(SRCDIR)/moc_xmlreader.cpp -o $(OBJDIR)/moc_xmlreader.o

$(OBJDIR)/list.o : $(SRCDIR)/list.cpp $(SRCDIR)/list.h
	$(CC) $(COMPILER_FLAGS) $(INCDIR) -c $(SRCDIR)/list.cpp -o $(OBJDIR)/list.o

$(OBJDIR)/moc_list.o : $(SRCDIR)/list.h
	$(MOC) -o $(SRCDIR)/moc_list.cpp $(SRCDIR)/list.h
	$(CC) $(COMPILER_FLAGS) $(INCDIR) -c $(SRCDIR)/moc_list.cpp -o $(OBJDIR)/moc_list.o
