CC=g++ -g -Wall -I. -I./include
LIBLINK= -lGLU -lGL -lglut -L/usr/lib

INC=-I/usr/include/GL -I../zpr/include -I../graphmisc/include \
-I../preparser/include -I../point/include -I../rand/include -I../tri/include \
-I../cmdln/include -I../vrmlshape/include

OBJ=zpr.o \
graphmisc.o \
preparser.o \
vrmlshape.o \
vrmlshaperaw.o \
vrmlshapeparse.o \
vrmlconvert.o \
cmdln.o \
d3grid.o \
d4grid.o \
functionstest.o \
gridmeasure.o \
d3tess.o \
d3tessdraw.o \
d3marcharea.o \
d3marchdisp.o \
d4tess.o \
d4tessdraw.o \
d4tri.o \
d4marchdisp.o \
displayheart.o \
displaycircleu.o \
displaycircle.o \
displaydevelope.o \
displaydevtet.o \



main: main.cpp makefile $(OBJ)
       $(CC) $(INC) main.cpp -o main $(LIBLINK) $(OBJ)


preparser.o: ../preparser/include/preparser.h ../preparser/preparser.cpp
       $(CC) $(INC) -c ../preparser/preparser.cpp

vrmlshape.o: ../vrmlshape/include/vrmlshape.h ../vrmlshape/vrmlshape.cpp ../point/include/point.h graphmisc.o
       $(CC) $(INC) -c ../vrmlshape/vrmlshape.cpp

vrmlshaperaw.o: ../vrmlshape/include/vrmlshaperaw.h ../vrmlshape/vrmlshaperaw.cpp
       $(CC) $(INC) -c ../vrmlshape/vrmlshaperaw.cpp

vrmlconvert.o: ../vrmlshape/include/vrmlconvert.h ../vrmlshape/vrmlconvert.cpp graphmisc.o
       $(CC) $(INC) -c ../vrmlshape/vrmlconvert.cpp

vrmlshapeparse.o: ../vrmlshape/include/vrmlshapeparse.h ../vrmlshape/vrmlshapeparse.cpp
       $(CC) $(INC) -c ../vrmlshape/vrmlshapeparse.cpp

graphmisc.o: ../graphmisc/include/graphmisc.h ../graphmisc/graphmisc.cpp
       $(CC) $(INC) -c ../graphmisc/graphmisc.cpp

zpr.o: ../zpr/include/zpr.h ../zpr/zpr.cpp
       $(CC) $(INC) -c ../zpr/zpr.cpp

cmdln.o: ../cmdln/include/cmdln.h
       $(CC) -I../cmdln/include -c ../cmdln/cmdln.cpp







d3grid.o: include/d3grid.h d3grid.cpp
       $(CC) $(INC) -c d3grid.cpp

d4grid.o: include/d4grid.h d4grid.cpp d4tessdraw.o
       $(CC) $(INC) -c d4grid.cpp

functionstest.o: include/functionstest.h functionstest.cpp
       $(CC) $(INC) -c functionstest.cpp

gridmeasure.o: include/gridmeasure.h gridmeasure.cpp
       $(CC) $(INC) -c gridmeasure.cpp


d3tess.o: include/d3tess.h d3tess.cpp d3tri.o
       $(CC) $(INC) -c d3tess.cpp

d3tessdraw.o: include/d3tessdraw.h d3tessdraw.cpp d3tess.o
       $(CC) $(INC) -c d3tessdraw.cpp

d3tri.o: include/d3tri.h d3tri.cpp
       $(CC) $(INC) -c d3tri.cpp

d3marchdisp.o: include/d3marchdisp.h d3marchdisp.cpp
       $(CC) $(INC) -c d3marchdisp.cpp

d3marcharea.o: include/d3marcharea.h d3marcharea.cpp
       $(CC) $(INC) -c d3marcharea.cpp


d4marchdisp.o: include/d4marchdisp.h d4marchdisp.cpp ../tri/include/tri.h
       $(CC) $(INC) -c d4marchdisp.cpp

d4tess.o: include/d4tess.h d4tess.cpp d4tri.o
       $(CC) $(INC) -c d4tess.cpp

d4tessdraw.o: include/d4tessdraw.h d4tessdraw.cpp d4tess.o
       $(CC) $(INC) -c d4tessdraw.cpp

d4tri.o: include/d4tri.h d4tri.cpp
       $(CC) $(INC) -c d4tri.cpp


displayheart.o: include/displayheart.h displayheart.cpp
       $(CC) $(INC) -c displayheart.cpp

displaycircleu.o: include/displaycircleu.h displaycircleu.cpp
       $(CC) $(INC) -c displaycircleu.cpp

displaycircle.o: include/displaycircle.h displaycircle.cpp
       $(CC) $(INC) -c displaycircle.cpp

displaydevelope.o: include/displaydevelope.h displaydevelope.cpp
       $(CC) $(INC) -c displaydevelope.cpp

displaydevtet.o: include/displaydevtet.h displaydevtet.cpp
       $(CC) $(INC) -c displaydevtet.cpp

clean:
       rm *.o main