################################################################ # # Makefile for Galaxy Wars # # Author: Roy Thompson # email: rst@andrew.cmu.edu # Date: November 9, 2002 # ################################################################ ################ # # Define the target OS # # has been tested on Linux and Win32 (with cygwin) OS = Linux #OS = WIN32 #OS = $(shell /bin/uname) ################ # # Define the target OS LIBRARIES = $(LIBRARYPATH) -lGL -lGLU -lglut -lm -lpicio -ltiff -ljpeg -lvec ################ # # Define the C++ compiler and flags ifeq ($(OS),Linux) CC = g++ # OPTIM = -O2 OPTIM = -g CDEFS = -DHAVE_PIC_LIB=1 -DHAVE_TIFF_LIB=1 COPT = $(OPTIM) -Wall $(CDEFS) GAMEPATH = /afs/andrew.cmu.edu/course/15/493 # GAMEPATH = /home/rst INCDIR = -I. -I$(GAMEPATH)/include GLLIBS = -L/usr/X11R6/lib -lGL -lGLU -lglut BASICLIBS = -lpicio -ltiff -ljpeg LIBDIR = -L$(GAMEPATH)/lib OBJEXT = .o DEPENDOPT = $(COPT) $(INCDIR) -o$(OBJEXT) -DIGNORE_DEPEND EXENAME = galaxy endif ifeq ($(OS),WIN32) CC = cl # OPTIM = -O2 OPTIM = -g CDEFS = -D_WIN32 -DHAVE_PIC_LIB=0 -DHAVE_TIFF_LIB=0 COPT = $(OPTIM) $(CDEFS) MSDEV_TOP = "C:/Progra~1/Micros~3/VC98" GAMEPATH = /afs/andrew.cmu.edu/course/15/493 INCDIR = -I. -I$(MSDEV_TOP)/include -I$(GAMEPATH)/include # GLLIBS = -nologo /LIBPATH:$(MSDEV_TOP)/lib glut.lib GLU.lib GL.lib GLLIBS = -nologo opengl32.lib glu32.lib glut32.lib BASICLIBS = # -lpicio -ltiff -ljpeg LIBDIR = -L$(GAMEPATH)/lib OBJEXT = .obj DEPENDOPT = $(COPT) $(INCDIR) -o$(OBJEXT) -DIGNORE_DEPEND EXENAME = galaxy.exe endif ################ # # The name of the built executable and source files RESULT = $(EXENAME) SRC = camera.cpp game.cpp main.cpp \ skybox.cpp texturemap.cpp world.cpp \ input.cpp playership.cpp mquat.cpp \ m2d.cpp m3d.cpp m4x4.cpp \ spaceship.cpp mrot.cpp enemyship.cpp \ missle.cpp explosion.cpp sound.cpp \ MeshModel.cpp model.cpp spacejunk.cpp HDR = $(SRC:.cpp=.h) OBJ = $(SRC:.cpp=$(OBJEXT)) ################ # # set all link options LLDLIBS = $(LIBDIR) $(GLLIBS) $(BASICLIBS) ./libfmod-3.6.so ################################################################ # # all of the compile flags CFLAGS = $(COPT) $(XPATH) $(INCDIR) all: $(RESULT) .SUFFIXES: .cpp COMPILE.C = $(CC) $(CFLAGS) -c # compiles all .C files into a .o file .cpp$(OBJEXT): $(COMPILE.C) $< $(RESULT): $(OBJ) $(CC) $(COPT) -o $@ $(OBJ) $(LLDLIBS) clean: rm -f $(OBJ) *~ $(RESULT) depend: $(SRC) $(HDR) touch ./Makefile.depend makedepend $(DEPENDOPT) -fMakefile.depend $(SRC) rm Makefile.depend.bak include Makefile.depend