1LIBS = -lSDL -lSDL_image -lSDL_ttf -L/usr/X11R6/lib/ -lSDL_mixer 2CFLAGS = -I/usr/include/SDL/ -DDATA_INSTALL_DIR=\"${DATA_INSTALL_DIR}\" -DSCORE_DIR=\"${SCORE_DIR}\" -O2 3CC = g++ 4OUT = hhh 5OBJS = Level.o Animation.o AnimationFactory.o Sprite.o Player.o Ghost.o Ghost1.o Ghost2.o Ghost3.o Food.o Bonus.o 6#Change this if you want the game installed elsewhere 7 8#For local install, comment the next line and uncomment the one after 9DATA_INSTALL_DIR=/usr/local/games/hhh 10#DATA_INSTALL_DIR=. 11 12#Where the binary goes (you might want /usr/bin instead) 13BIN_DIR=/usr/local/bin 14#Where the hiscore table is saved: user's home dir/.hannah 15 16#Change the comments on these next two too, if you're not planning to install 17SCORE_DIR=${HOME}/.hannah 18#SCORE_DIR=. 19 20all: $(OBJS) main 21 22main: pacman.cc 23 $(CC) $(CFLAGS) -o $(OUT) $(LIBS) $(OBJS) pacman.cc 24 25Animation.o: Animation.cc 26 $(CC) $(CFLAGS) -c -o Animation.o Animation.cc 27 28AnimationFactory.o: AnimationFactory.cc 29 $(CC) $(CFLAGS) -c -o AnimationFactory.o AnimationFactory.cc 30 31Sprite.o: Sprite.cc 32 $(CC) $(CFLAGS) -c -o Sprite.o Sprite.cc 33 34Player.o: Player.cc 35 $(CC) $(CFLAGS) -c -o Player.o Player.cc 36 37Ghost.o: Ghost.cc 38 $(CC) $(CFLAGS) -c -o Ghost.o Ghost.cc 39 40Ghost1.o: Ghost1.cc Ghost.o 41 $(CC) $(CFLAGS) -c -o Ghost1.o Ghost1.cc 42 43Ghost2.o: Ghost2.cc Ghost.o 44 $(CC) $(CFLAGS) -c -o Ghost2.o Ghost2.cc 45 46Ghost3.o: Ghost2.cc Ghost.o 47 $(CC) $(CFLAGS) -c -o Ghost3.o Ghost3.cc 48 49Food.o: Ghost1.cc Ghost.o 50 $(CC) $(CFLAGS) -c -o Food.o Food.cc 51 52Bonus.o: Bonus.cc Ghost.o 53 $(CC) $(CFLAGS) -c -o Bonus.o Bonus.cc 54 55Level.o: Level.cc 56 $(CC) $(CFLAGS) -c -o Level.o Level.cc 57 58install: 59 install -m 0755 hhh $(BIN_DIR) 60 install -d -D -m 0755 $(DATA_INSTALL_DIR)/hannah/default $(DATA_INSTALL_DIR)/hannah/die $(DATA_INSTALL_DIR)/red/flash $(DATA_INSTALL_DIR)/red/default $(DATA_INSTALL_DIR)/pink/flash $(DATA_INSTALL_DIR)/pink/default $(DATA_INSTALL_DIR)/blue/default $(DATA_INSTALL_DIR)/blue/flash $(DATA_INSTALL_DIR)/images $(DATA_INSTALL_DIR)/maps $(DATA_INSTALL_DIR)/sounds $(DATA_INSTALL_DIR)/carrot/default $(DATA_INSTALL_DIR)/stop/default $(SCORE_DIR) 61 install -m 0755 hannah/default/* $(DATA_INSTALL_DIR)/hannah/default 62 install -m 0755 hannah/die/* $(DATA_INSTALL_DIR)/hannah/die 63 install -m 0755 red/default/* $(DATA_INSTALL_DIR)/red/default 64 install -m 0755 red/flash/* $(DATA_INSTALL_DIR)/red/flash 65 install -m 0755 pink/default/* $(DATA_INSTALL_DIR)/pink/default 66 install -m 0755 pink/flash/* $(DATA_INSTALL_DIR)/pink/flash 67 install -m 0755 blue/default/* $(DATA_INSTALL_DIR)/blue/default 68 install -m 0755 blue/flash/* $(DATA_INSTALL_DIR)/blue/flash 69 install -m 0755 carrot/default/* $(DATA_INSTALL_DIR)/carrot/default 70 install -m 0755 stop/default/* $(DATA_INSTALL_DIR)/stop/default 71 install -m 0755 sounds/* $(DATA_INSTALL_DIR)/sounds 72 install -m 0755 images/* $(DATA_INSTALL_DIR)/images 73 install -m 0755 maps/* $(DATA_INSTALL_DIR)/maps 74 install -m 0755 *.ttf *.ogg $(DATA_INSTALL_DIR)/ 75 cp -p hiscore.dat $(SCORE_DIR)/ 76 77clean: 78 rm *.o hhh 79 80megaclean: 81 rm *.o *.cc *.h hhh 82 83love: 84 @echo "Sorry, I'm not equipped for that" 85 86war: 87 @echo "Make love, not war!" 88 89.PHONY: install clean megaclean love war 90