client:client.o net_client.o common.o server dispatcher service.h
	gcc -o client -g client.o net_client.o common.o -lnsl -lxnet -lsocket -lm
common.o:common.c service.h
	gcc -c common.c
client.o:client.c service.h
	gcc -c -g client.c
server.o:server.c service.h
	gcc -c -g server.c
net_client.o:net_client.c common.o
	gcc -c -g net_client.c
net_server.o:net_server.c common.o
	gcc -c -g net_server.c
server:server.o common.o net_server.o service.h
	gcc -o server -g server.o common.o net_server.o -lnsl -lxnet -lsocket -lm
dispatcher:dispatcher.c common.o service.h
	gcc -o dispatcher -g dispatcher.c common.o -lnsl -lxnet -lsocket -lm
clean:
	rm -fr server client *.o *~ core a.out dispatcher