#Solaris TB
#OPTS = -g -I/usr/local/encap/mysql-3.22.32/include/mysql -D_REENTRANT -D_SOLARIS
#Linux TB
OPTS = -I/usr/local/encap/mysql-3.22.32/include/mysql    
#Thrift	
#OPTS = -g -I/home/net/skumar2/mysql/include  -D_REENTRANT  

CHARMC =../../bin/charmc $(OPTS) 

#LIB = -L/usr/local/encap/mysql-3.22.32/lib/mysql -lmysqlclient -lpthread -lnsl
LIB = -L/Home/p1/sameer/mysql/lib -lmysqlclient -lpthread
#LIB = -L/home/net/skumar2/mysql/lib -L../../lib -lmysqlclient -lconv-util -lpthread

all: pgm scheduler client

dbinterface.o: dbinterface.h dbinterface.C
	$(CHARMC) -c dbinterface.C

dummydbinterface.o: dbinterface.h dummydbinterface.C
	$(CHARMC) -c dummydbinterface.C

BasicStrategy.o: BasicStrategy.h BasicStrategy.C
	$(CHARMC) -c BasicStrategy.C

manager.o: manager.ci manager.h manager.C
	$(CHARMC) -language charm++ -c manager.ci manager.C

client: client.c
	$(CHARMC) -o client client.c $(LIB)
	chmod +s client

dummy:  ccs-client.o scheduler.o job.o BasicStrategy.o dummydbinterface.o
	g++ -o scheduler scheduler.o job.o dummydbinterface.o BasicStrategy.o ../../tmp/ccs-client.o $(LIB)

scheduler: ccs-client.o scheduler.o job.o BasicStrategy.o dbinterface.o
	g++ -o scheduler scheduler.o job.o dbinterface.o BasicStrategy.o ../../tmp/ccs-client.o $(LIB)

purify: ccs-client.o scheduler.o job.o BasicStrategy.o dbinterface.o
	 purify CC -g -L/usr/local/encap/mysql-3.22.32/lib/mysql -o scheduler -L../../bin/../lib -I../../bin/../include scheduler.o job.o ../../tmp/ccs-client.o dbinterface.o BasicStrategy.o -lmysqlclient -lpthread -lconv-util -lm -lnsl -lsocket

scheduler.o: scheduler.C scheduler.h
	$(CHARMC) -c -seq scheduler.C 

job.o: job.C common.h 
	$(CHARMC) -c -seq job.C 

ccs-client.o : ../../tmp/ccs-client.c ../../tmp/ccs-client.h
	$(CHARMC) -c -seq  ../../tmp/ccs-client.c

pgm : manager.o Topo.o main.o
	$(CHARMC) -o pgm main.o manager.o Topo.o  -balance test

main.o: main.ci main.C
	$(CHARMC) -c  main.ci main.C
Topo.o: Topo.C Topo.h
	$(CHARMC) -c Topo.ci Topo.C
clean:
	rm -f client scheduler pgm *.o conv-host *.decl.h *.def.h charmrun

