# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-ldflags := $(shell sdl-config --libs) -lSDL_image -lSDL_mixer
-cflags := $(shell sdl-config --cflags) -Wall -DDEBUG=$(if $(DEBUG),1,0)
-cflags := $(strip $(cflags))
-cflags += $(CFLAGS)
+DATA_PREFIX := /usr/share/vor
+PROGRAM_PREFIX := /usr/games/bin
-my_objects := args.o file.o rocks.o score.o shape.o sound.o
-my_objects += $(if $(DEBUG),debug.o) main.o
+CFLAGS := -Wall -ggdb
+LDFLAGS :=
+
+paths := -DDATA_PREFIX=\"$(DATA_PREFIX)\"
+sdl-cflags := $(shell sdl-config --cflags)
+sdl-ldflags := $(shell sdl-config --libs)
+
+ldflags := $(sdl-ldflags) -lSDL_image -lSDL_mixer $(LDFLAGS)
+cflags := $(sdl-cflags) $(paths) $(CFLAGS)
+
+my_objects := args.o dust.o file.o mt.o rocks.o score.o sprite.o sound.o
+my_objects += main.o
libs := SFont.o
objects := $(libs) $(my_objects)
rocks += 20 21 22 23 24 25 26 27 28 29
rocks += 30 31 32 33 34 35 36 37 38 39
rocks += 40 41 42 43 44 45 46 47 48 49
+rocks := $(rocks:%=data/sprites/rock%.png)
+graphics := data/sprites/ship.png data/indicators/life.png $(rocks)
-graphics := data/sprites/ship.png data/indicators/life.png $(rocks:%=data/sprites/rock%.png)
-
-INSTALL = install
-INSTALL_PROGRAM = $(INSTALL) -o games -g games
-INSTALL_DATA = $(INSTALL) -m 644
-
-DATA_PREFIX = /usr/share/vor
-PROGRAM_PREFIX = /usr/games/bin
+INSTALL := install
+INSTALL_PROGRAM := $(INSTALL) -o games -g games
+INSTALL_DATA := $(INSTALL) -m 644
.PHONY: all clean maintainer-clean install uninstall
program: vor
%.o: %.c
- $(CC) $(cflags) -c -o $@ $<
+ @echo compiling $@ from $<
+ @$(CC) $(cflags) -c -o $@ $<
$(my_objects): config.h
-main.o file.o: file.h
+SFont.o: SFont.h
+
+args.o: args.h
+
+dust.o: globals.h dust.h mt.h
+
+file.o: file.h common.h
+
+main.o: args.h common.h dust.h file.h globals.h mt.h rocks.h score.h sprite.h sound.h
+
+mt.o: mt.h
+
+rocks.o: rocks.h common.h file.h globals.h mt.h sprite.h
+
+score.o: score.h common.h file.h
+
+sound.o: sound.h args.h common.h
+
+sprite.o: sprite.h common.h
vor: $(objects)
- $(CC) $(ldflags) -o $@ $^ $(LIBRARIES)
+ @echo linking $@ from $^
+ @$(CC) $(ldflags) -o $@ $^ $(LIBRARIES)
include gfx.mk
+tags: *.c *.h
+ exuberant-ctags *.c *.h /usr/include/SDL/*
+
clean: program-clean
+ rm -f tags
maintainer-clean: program-clean data-clean
$(INSTALL_DATA) ./data/music/* $(DATA_PREFIX)/music/
$(INSTALL_DATA) ./data/sounds/* $(DATA_PREFIX)/sounds/
$(INSTALL_DATA) ./data/sprites/* $(DATA_PREFIX)/sprites/
- touch $(DATA_PREFIX)/scores
- chmod a+rw $(DATA_PREFIX)/scores
uninstall: uninstall-program uninstall-data rminstalldirs
rm -f $(DATA_PREFIX)/music/*
rm -f $(DATA_PREFIX)/sounds/*
rm -f $(DATA_PREFIX)/sprites/*
- rm -f $(DATA_PREFIX)/scores $(DATA_PREFIX)/.highscore
+ rm -f $(DATA_PREFIX)/scores