#CHARMDIR=/turing/software/charm/net-linux-ppc/bin
#CHARMDIR=$(HOME)/Projects/charm.git/net-linux/bin
CHARMDIR=$(HOME)/projects/charmgit/net-linux-x86_64/bin
CHARMC=$(CHARMDIR)/charmc
AMPICXX=$(CHARMDIR)/mpiCC
ORCHC=$(HOME)/projects/orchestration/orchc
#MPICC=/opt/mpich-mx-gcc-32/bin/mpicc
MPICC=`which mpicc`
NETID=mille121

all: $(NETID)_mp3_charm $(NETID)_mp3_ampi $(NETID)_mp3_charisma
#$(NETID)_mp3_mpi
$(NETID)_mp3_charm: jacobi_charm.ci charm.C compute.o compute.h
	$(CHARMC) -c jacobi_charm.ci
	$(CHARMC) -c charm.C -g
	$(CHARMC) -o $@ charm.o compute.o -language charm++ -g -tracemode projections

$(NETID)_mp3_ampi: mpi.C compute.o compute.h
	$(AMPICXX) -o $@ mpi.C compute.o -g

$(NETID)_mp3_charisma: jacobi.or JacobiWorker.C JacobiWorker.h JacobiMain.C JacobiMain.h compute.o compute.h
	$(ORCHC) jacobi.or
	$(CHARMC) jacobi.ci
	$(CHARMC) -c jacobi.C
	$(CHARMC) -o $@ jacobi.o

# The same file that works with AMPI should also work with MPI
#$(NETID)_mp2_mpi: mp2_ampi.c
#	$(MPICC) -std=c99 -o $@ $<

clean: 
	rm -f $(NETID)_mp3_charm $(NETID)_mp3_ampi $(NETID)_mp3_mpi $(NETID)_mp3_charisma *.o *.decl.h *.def.h charmrun jacobi.C jacobi.h jacobi.ci
