CFLAGS 		= -Wall
DEP_SOURCES	= Classifier.cpp Db_Query/Db_Query.cpp Connection.cpp Attributes/*.cpp Titan.cpp
CPP_SOURCES	= Titan.cpp
DEP_HEADERS	= Db_Query/Db_Query.h
LIBRARIES	= -lmysqlclient -lpthread
LIB_INCLUDE	= -L/usr/lib/mysql
INCLUDE		= -I.
CPP		= g++


START_SOURCES	= startTitan.cpp

all: Sorter flushrules Titan startTitan Startup

Titan: ${DEP_SOURCES} ${DEP_HEADERS}
	${CPP} ${CFLAGS} ${LIB_INCLUDE} ${LIBRARIES} ${INCLUDE} -o $@ ${CPP_SOURCES}

startTitan: ${START_SOURCE}
	${CPP} ${CFLAGS} -o $@ ${START_SOURCES}

Sorter: 
	cd ConnectionOrganization; make Sorter

flushrules:
	cd FlushRules; make

Startup:
	cd Startup; make

test: Titan
	./startTitan

clean: 
	rm -f Titan startTitan
	cd ConnectionOrganization; make clean
	cd FlushRules; make clean
	cd Startup; make clean
