RNMDIR=../RNM-v3
LIBSMESH=-L../lib -lMesh
INCMESH= -I../include 
# on MacOS X
# for glut and opengl 
#GLLIBS=  -framework OpenGl -framework GLUT -framework CoCoa 
#GLINS=
# on linux
GLLIBS= -L/usr/lib/X11R6  -lglut -lGLU -lGL
GLINS= -I/usr/lib/X11R6
# --------------------------------
INC= -I$(RNMDIR) $(INCMESH)
CXXDEBUGSFLAGS= -g -DASSERTION
CXXOPTFLAGS= -O3 
CXXFLAGS= -Wall  $(GLINS) $(INC)  $(CXXDEBUGSFLAGS) #-fast -Wefc++
CXX=g++ 

PROGS= EF23n 

all: $(PROGS)

EF23n:EF23n.o    Mesh2dn.o   Mesh3dn.o 
	$(CXX) $^ -o $@ $(CXXFLAGS) $(LIBSMESH)

.cpp.o:
	$(CXX) $(CXXFLAGS)  -c  $<

clean:
	-rm $(PROGS) *.o EF23 a.out *~  EF2d  x.sol

HEADERSRNM= $(RNMDIR)/GC.hpp	$(RNMDIR)/RNM_op.hpp	$(RNMDIR)/RNM_tpl.hpp $(RNMDIR)/RNM.hpp	$(RNMDIR)/RNM_opc.hpp	$(RNMDIR)/gmres.hpp
HEADERS=cputime.h GenericMesh.hpp HashTable.hpp HeapSort.hpp Label.hpp  SparseMatMap.hpp assertion.hpp ufunction.hpp
HEADERS2=  Mesh2dn.hpp R2.hpp
HEADERS3=  Mesh3dn.hpp  R3.hpp R2.hpp
EF23n.o:$(HEADERS) $(HEADERS2) $(HEADERS3)
Mesh2dn.o:$(HEADERS) $(HEADERS2) 
Mesh3dn.o:$(HEADERS) $(HEADERS3)
