CC=gcc
AR = ar
ARFLAGS = ru
RANLIB = ranlib
CFLAGS= -g
SRCS= patacloud.c pataserver.c gibcloud.c gibserver.c
LIBS = -L./SocketLibrary/

all:: socketlib patacloud pataserver gibcloud gibserver

socketlib:
	cd SocketLibrary && make

patacloud: patacloud.o common.o
	$(CC) -g -o patacloud patacloud.o common.o mapall.o $(LIBS) -lsock -lpthread -lxenctrl -lgcrypt

gibcloud: gibcloud.o common.o
	$(CC) -g -o gibcloud gibcloud.o common.o mapall.o $(LIBS) -lsock -lxenctrl

pataserver: pataserver.o common.o
	$(CC) -g -o pataserver pataserver.o common.o $(LIBS) -lsock 

gibserver: gibserver.o common.o
	$(CC) -g -o gibserver gibserver.o common.o $(LIBS) -lsock 

patacloud.o: patacloud.c common.h
	$(CC) -g -o patacloud.o -c patacloud.c

gibcloud.o: gibcloud.c common.h
	$(CC) -g -o gibcloud.o -c gibcloud.c

pataserver.o: pataserver.c common.h
	$(CC) -g -o pataserver.o -c pataserver.c

gibserver.o: gibserver.c common.h
	$(CC) -g -o gibserver.o -c gibserver.c


common.o: common.c
	$(CC) -g -o common.o -c common.c

clean:
	/bin/rm -f client server example_thread threadpool_test *.o core *~ #*
	cd SocketLibrary && make clean
