PLATFORM = $(shell uname) ## Compilation flags ## ##debugging CFLAGS = -g ##release #CFLAGS = -O3 -DNDEBUG LDFLAGS= CFLAGS+= -Wall #ifeq ($(PLATFORM),Darwin) ## Mac OS X CFLAGS += -m64 -isystem/usr/local/include -Wno-deprecated LDFLAGS+= -m64 -lc -framework AGL -framework OpenGL -framework GLUT -framework Foundation #else ## Linux #CFLAGS += -m64 #INCLUDEPATH = -I/usr/include/GL/ #LIBPATH = -L/usr/lib64 -L/usr/X11R6/lib #LDFLAGS+= -lGL -lglut -lrt -lGLU -lX11 -lm -lXmu -lXext -lXi #endif PROGS = simple1 simple2 simple3 simple4 simple5 grid1 grid11 grid12 \ grid2 simple6 simple7 default: $(PROGS) ###2D simple1: simple1.o $(CC) -o $@ simple1.o $(CFLAGS) $(LDFLAGS) simple2: simple2.o $(CC) -o $@ simple2.o $(CFLAGS) $(LDFLAGS) simple3:simple3.o $(CC) -o $@ simple3.o $(CFLAGS) $(LDFLAGS) simple4:simple4.o $(CC) -o $@ simple4.o $(CFLAGS) $(LDFLAGS) simple5:simple5.o $(CC) -o $@ simple5.o $(CFLAGS) $(LDFLAGS) grid1: grid1.o $(CC) -o $@ grid1.o $(CFLAGS) $(LDFLAGS) grid11: grid11.o $(CC) -o $@ grid11.o $(CFLAGS) $(LDFLAGS) grid12: grid12.o $(CC) -o $@ grid12.o $(CFLAGS) $(LDFLAGS) ###3D simple6:simple6.o $(CC) -o $@ simple6.c $(CFLAGS) $(LDFLAGS) simple7:simple7.c $(CC) -o $@ simple7.c $(CFLAGS) $(LDFLAGS) grid2: grid2.o $(CC) -o $@ grid2.o $(CFLAGS) $(LDFLAGS) clean:: rm simple?.o grid*.o rm simple? grid1 grid11 grid12 grid2 %.o:: %.c $(CC) -c $< -o $@ $(CFLAGS) $(LDFLAGS)