############################################################ # Simple Makefile for OpenGL Programs # # Visualization Course, Fall 2001, Yap. # # Please use this as pattern to organize your projects ############################################################ ############################################################ # Variables ############################################################ # platform (either "unix" or "cyg") pf = unix # compiler CC = g++ # Runtime libraries ifeq ($(pf),cyg) LIBS= -L\bin -lglut32 -LC:\WINNT\system32 -lopengl32 -lglu32 else LIBS = -L/usr/X11R6/lib -L/usr/unsupported/installers/chenli/lib \ -lglut -lGL -lGLU -lXmu -lXi -lXext -lX11 -lm -lsocket -lnsl endif # Include headers files ifeq ($(pf),cyg) INC= -I\usr\include else INC = -I/usr/unsupported/installers/chenli/include endif # version is "v" (can be the empty string) v= # program base is "p" p=simple # program is "pv" pv=$(p)$(v) ############################################################ # Compilation Targets # # You can compile any program "foo" by calling # # % make p=foo # ############################################################ exe: $(pv).o $(CC) $(pv).o $(LIBS) -o $(pv) $(pv).o o: $(pv).cc $(CC) -c $(INC) $(pv).cc run: $(pv).exe $(pv) ############################################################ # House keeping functions ############################################################ tar: tar -cvf T.tar * save: ifeq ($(pf),unix) ci -l *.cc Make* *html else cp *.cc Make* *html RCS endif clean: -@rm -f *.o veryclean: clean -@rm -f *.exe ############################################################ # THE END ############################################################