CC      =       cc
CFLAGS 	+= -I/usr/ucbinclude
LIBS 	+= -lnsl -lsocket -L/usr/ucblib -lucb
CFLAGS	=	-g
INCDIR	=	$(PVM_ROOT)/include
OBJDIR	=	./$(PVM_ARCH)
SDIR	=	.
XDIR	=	$(HOME)/pvm3/bin/$(PVM_ARCH)
LIBDIR	=	$(PVM_ROOT)/lib/$(PVM_ARCH)
PVMLIBS =	-L$(LIBDIR) -lpvm3 -lgpvm3

all: $(XDIR)/pvm_test $(XDIR)/pvm_test_slave $(XDIR)/version_slave

$(XDIR)/pvm_test: $(OBJDIR) $(OBJDIR)/pvm_test.o $(OBJDIR)/test_util.o $(OBJDIR)/test_list.o $(OBJDIR)/message_passing.o $(XDIR) 
	$(CC) $(OBJDIR)/pvm_test.o $(OBJDIR)/test_util.o $(OBJDIR)/test_list.o $(OBJDIR)/message_passing.o $(PVMLIBS) $(LIBS) -o $@

$(XDIR)/pvm_test_slave: $(OBJDIR) $(OBJDIR)/pvm_test_slave.o $(OBJDIR)/test_util.o $(OBJDIR)/test_list.o $(OBJDIR)/message_passing.o $(XDIR)
	$(CC) $(OBJDIR)/pvm_test_slave.o $(OBJDIR)/test_util.o $(OBJDIR)/test_list.o $(OBJDIR)/message_passing.o $(PVMLIBS) $(LIBS) -o $@
	
$(XDIR)/version_slave: $(OBJDIR)/version_slave.o $(XDIR)
	$(CC) $(OBJDIR)/version_slave.o $(PVMLIBS) $(LIBS) -o $@

clean:
	rm -f $(OBJDIR)/*.o $(XDIR)/pvm_test $(XDIR)/pvm_test_slave $(XDIR)/version_slave

clobber: clean
	rm -rf pvm_test pvm_test_slave 

$(OBJDIR) $(BINDIR):
	mkdir $@

$(OBJDIR)/pvm_test.o: $(SDIR)/pvm_test.c $(SDIR)/pvm_test.h $(SDIR) test_list.h $(SDIR)/module_list.h
	$(CC) -I$(INCDIR) $(CFLAGS) -c $(SDIR)/pvm_test.c -o $@

$(OBJDIR)/pvm_test_slave.o: $(SDIR)/pvm_test_slave.c $(SDIR)/pvm_test.h $(SDIR) test_list.h $(SDIR)/module_list.h
	$(CC) -I$(INCDIR) $(CFLAGS) -c $(SDIR)/pvm_test_slave.c -o $@

$(OBJDIR)/version_slave.o: $(SDIR)/version_slave.c $(SDIR)/pvm_test.h $(SDIR) test_list.h $(SDIR)/module_list.h
	$(CC) -I$(INCDIR) $(CFLAGS) -c $(SDIR)/version_slave.c -o $@

$(OBJDIR)/test_util.o: $(SDIR)/test_util.c $(SDIR)/pvm_test.h $(SDIR) test_list.h $(SDIR)/module_list.h
	$(CC) -I$(INCDIR) $(CFLAGS) -c $(SDIR)/test_util.c -o $@

$(OBJDIR)/test_list.o: $(SDIR)/test_list.c $(SDIR)/pvm_test.h $(SDIR) test_list.h $(SDIR)/module_list.h
	$(CC) -I$(INCDIR) $(CFLAGS) -c $(SDIR)/test_list.c -o $@

$(OBJDIR)/message_passing.o: $(SDIR)/message_passing.c $(SDIR)/pvm_test.h
	$(CC) -I$(INCDIR) $(CFLAGS) -c $(SDIR)/message_passing.c -o $@
