# Makefile for MegaTest++ repository

OPTS=-g
CHARMC=../../bin/charmc $(OPTS) -I../acc_libraries++ -L../acc_libraries++

OBJECTS++ = acc.o fam.o ftab.o mod1.o tam.o ttab.o fboc.o hello.o null.o tex.o tvid.o do_all.o main.o sfb.o tpk.o fib.o

all: $(OBJECTS++)
	(cd ../acc_libraries++ ; make)
	$(CHARMC) -o pgm -language charm++ $(OBJECTS++) -lacc_libs++

pgm: $(OBJECTS++)
	(cd ../acc_libraries++ ; make)
	$(CHARMC) -o pgm -language charm++ $(OBJECTS++) -lacc_libs++

acc.o : acc.P
	$(CHARMC) -o acc.o acc.P

fam.o : fam.P
	$(CHARMC) -o fam.o fam.P

ftab.o : ftab.P
	$(CHARMC) -o ftab.o ftab.P

mod1.o : mod1.P
	$(CHARMC) -o mod1.o mod1.P

tam.o : tam.P
	$(CHARMC) -o tam.o tam.P

ttab.o : ttab.P
	$(CHARMC) -o ttab.o ttab.P

fboc.o : fboc.P
	$(CHARMC) -o fboc.o fboc.P

hello.o : hello.P
	$(CHARMC) -o hello.o hello.P

null.o : null.P
	$(CHARMC) -o null.o null.P

tex.o : tex.P
	$(CHARMC) -o tex.o tex.P

tvid.o : tvid.P
	$(CHARMC) -o tvid.o tvid.P

do_all.o : do_all.P
	$(CHARMC) -o do_all.o do_all.P

main.o : main.P
	$(CHARMC) -o main.o main.P

sfb.o : sfb.P
	$(CHARMC) -o sfb.o sfb.P

tpk.o : tpk.P
	$(CHARMC) -o tpk.o tpk.P

fib.o : fib.C
	$(CHARMC) -o fib.o fib.C

clean:
	rm -f conv-host *.o
	rm -f pgm *.TMP.*
	rm -f gmon.out #*#
	rm -f core *~
	rm -f TAGS *.headers

projections:
	make all OPTS='$(OPTS) -tracemode projections'

summary:
	make all OPTS='$(OPTS) -tracemode summary'

replay:
	make all OPTS='$(OPTS) -tracemode replay'

