
OBJECTS = rmevent.o rmcache.o rmmsgpckt.o rminternals.o rmmsg.o rmcast.o

LIBDIR= 
LIBS= -lpthread -lm

CC	= gcc
LDFLAGS =
CFLAGS	= -Wall -g
INCDIR  =
DEFINES = -D_REENTRANT -DREFRESH -DLOSE_FIRST_50

all: clean librmcast.a server client

with_loss_sim: all
	$(CC) $(DEFINES) $(CFLAGS) $(INCDIR) -c -o rminternals_with_loss.o rminternals.c -DLOSS_SIM
	ar -rcv librmcast.a rmevent.o rmcache.o rmmsgpckt.o rminternals_with_loss.o rmmsg.o rmcast.o
	ranlib librmcast.a
	$(CC) server.c  $(DEFINES) $(CFLAGS)  -lpthread -lm -lrmcast -L. -Wall -o server_with_loss
        
.SUFFIXES: .o .c

.c.o:
	$(CC) $(DEFINES) $(CFLAGS) $(INCDIR) -c -o $@ $<


librmcast.a: $(OBJECTS)
	ar -rcv $@ $(OBJECTS)
	ranlib $@

server: server.c $(OBJECTS) 
	$(CC) server.c  $(DEFINES) $(CFLAGS)  -lpthread -lm -lrmcast -L. -Wall -o server

client: client.c $(OBJECTS)
	$(CC) client.c $(DEFINES) $(CFLAGS)  -lpthread -lm -lrmcast -L. -Wall -o client


clean:
	\rm -f $(OBJECTS) *core *~ *.bak *% rmcast *.o *.a server client

