PROG	= stereo
TOP     = /usr/include/GL
CFLAGS  =  -w -s -O2 -ansi -DSHM
LIBS    = -lglut -lGLU -lGL 
INCLS   = -I/usr/X11R/include -I$(TOP) -I../../12 -I../
LIBDIR  = -L/usr/X11/lib -L/usr/X11R6/lib

#source codes
SRCS = $(PROG).cpp

#substitute .cpp by .o to obtain object filenames
OBJS = $(SRCS:.cpp=.o) Camera.o
OBJS1 = ../../12/Point3.o  ../../12/XYZ.o ../../12/Vector3.o
OBJS2 = ../Matrix44.o ../Matrix41.o ../Matrix14.o ../Matrix4.o
OBJS3 = ../seashell.o ../pawns.o ../vase.o
#$< evaluates to the target's dependencies, 
#$@ evaluates to the target

$(PROG): $(OBJS) $(OBJS1) $(OBJS2) $(OBJS3)
	g++ -o $@ $(OBJS) $(OBJS1) $(OBJS2) $(OBJS3) $(LIBDIR) $(LIBS) $(XLIBS) 
	g++ -o stereo-background stereo-background.cpp Camera.o $(OBJS1) $(OBJS2) $(OBJS3) $(LIBDIR) $(LIBS) $(XLIBS) $(INCLS)
	g++ -o stencil-demo stencil-demo.cpp  $(LIBDIR) $(LIBS) $(XLIBS) $(INCLS)

$(OBJS): 
	g++ -c  $*.cpp $(INCLS) 

$(OBJS1): 
	cd ../../12;  make;  cd ../14/stereo

$(OBJS2):
	cd ..;	make; cd stereo

$(OBJS3):
	cd ..; make; cd stereo
clean:
	rm *.o $(PROG); rm stereo-background stencil-demo

