# Makefile for n-body problem


# basic definitions
P4 = /Net/encore/efs3/kotz/p4
IFLAGS = -I$(P4)
LDFLAGS = -L$(P4)
LIBS = -lp4dfk -lp4 -lpp -lm
REQD = -I. $(IFLAGS) -DMULTIMAX -DP4BSD

# You might add to this line. Remove -g for timing.
CFLAGS = $(REQD) -g -DDPRINTF -DDPRINTFL

OBJS=main.o nbody.o read.o physics.o
POBJS=master.o time.o slave.o read.o physics.o

all: nbody mpnbody makebodies

nbody: $(OBJS)
	cc $(LDFLAGS) -o $@ $(OBJS) $(LIBS)

$(OBJS) $(POBJS): nbody.h 

nbody.o: $(P4)/timing.h

master.o slave.o time.o: $(P4)/timing.h $(P4)/broadcast.h

mpnbody: $(POBJS)
	cc $(LDFLAGS) -o $@ $(POBJS) $(LIBS)

$(POBJS): nbody.h 

makebodies: makebodies.o
	cc makebodies.o -o makebodies

clean:
	rm -f *.o *~ core a.out

spotless: clean
	rm -f nbody mpnbody makebodies
