# GNU makefile für OpenGL Kompaktkurs Oktober 2oo1 # für folgende Systeme: # SGI IRIX 5.2 bis 6.5, FSPM Vislab # Sun SunOS/Solaris, Techfak # Linux, Mathe-Fakultäk # Die Namen der Programmen tauchen in diesem GNUmakefile nicht auf, # so dass /jedes/ einfache OpenGL-Programm hiermit kompiliert werden kann, # sofern es aus nur einer Quelldatei besteht. # Es werden keine Compile- und Link-Regeln definiert, # sondern es werden die GNUmake-Defaults benutzt. # Es werden keine Dependencies definiert. # Die Liste der Programme $(PROGS) dient nur zum bequemen # Löschen (make clean). # Die Standard-Optionen für Compiler und Linker: CXX = g++ CC = gcc CXXFLAGS = -O CFLAGS = -O LDFLAGS = LDLIBS = # Abfrage der unterschiedlichen UNIX-Versionen: system = $(shell uname) ifeq ($(system), IRIX64) system=IRIX endif # Modifikation der Compiler/Linker-Optionen, # je nach UNIX-Version (system = IRIX, Linux oder SunOS): ifeq ($(system), IRIX) # auf SGIs im o32-Modell kompilieren (default in 5.x, per Option in 6.x) release = $(shell uname -r) ifeq ($(release), 6.2) CXXFLAGS += -o32 CFLAGS += -o32 endif ifeq ($(release), 6.3) CXXFLAGS += -o32 CFLAGS += -o32 endif ifeq ($(release), 6.5) CXXFLAGS += -o32 CFLAGS += -o32 endif CXXFLAGS += -I /vol/local/include CFLAGS += -I /vol/local/include LDFLAGS += -L /vol/local/lib LDLIBS += -llocaltiff \ -lglut -lGLU -lGL -lXext -lXi -lXmu -lX11 -lm endif # Ende IRIX ifeq ($(system), Linux) CXXFLAGS += CFLAGS += LDLIBS += -lz -ljpeg LDFLAGS += -L /vol/X11/lib LDLIBS += -lglut -lGLU -lGL -lXext -lXi -lXmu -lX11 -lm endif # Ende Linux ifeq ($(system), SunOS) # Glut: CXXFLAGS += -I /vol/wbs/include CFLAGS += -I /vol/wbs/include LDFLAGS += -L /vol/wbs/lib LDFLAGS += -R /vol/wbs/lib LDLIBS += -lglut # Tiff: CXXFLAGS += -I /vol/netpbm/include CFLAGS += -I /vol/netpbm/include LDFLAGS += -L /vol/netpbm/lib LDFLAGS += -R /vol/netpbm/lib LDLIBS += -ltiff # X11, OpenGL etc: CXXFLAGS += -I /usr/openwin/include CFLAGS += -I /usr/openwin/include LDFLAGS += -L /usr/openwin/lib LDFLAGS += -R /usr/openwin/lib # GNU LDFLAGS += -L /vol/gnu/lib LDFLAGS += -R /vol/gnu/lib LDLIBS += -lGL -lGLU -lX11 -lm endif # Ende SunOS # Default-Target ist Hilfestellung: defaulttarget: @echo "bitte mit: (g)make aufrufen (GNU-make!)" PROGS = anim2 blend2 blend3 firstglut \ fullglut licht1a licht2a list1 lines1 \ pixels1 points1 points2 \ polygon1 polygon2 raum1a \ texture1 texture2 texture3 texture3x \ transform1 # Targets für manuellen Aufruf: all: $(PROGS) clean: rm -f *.o $(PROGS)