X-Git-Url: https://jasonwoof.com/gitweb/?p=vor.git;a=blobdiff_plain;f=Makefile;h=555fb963380f564abfdf4a090e6763ee3550d53d;hp=650a98b67ec889c46899372bfdef5fcc326b3331;hb=29d7062c011d38b123dd71aabd3b184d4b18348f;hpb=5c8f059629c2127848ce4051296d2f5897bf5c0f diff --git a/Makefile b/Makefile index 650a98b..555fb96 100644 --- a/Makefile +++ b/Makefile @@ -15,22 +15,26 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -DATA_PREFIX := /usr/share/vor -PROGRAM_PREFIX := /usr/games/bin +prefix = /usr/local +exec_prefix = $(prefix) -CFLAGS := -Wall -ggdb +datarootdir = $(prefix)/share +pkgdatadir = $(datarootdir)/vor +bindir = $(exec_prefix)/bin + +CFLAGS := -Wall -O3 LDFLAGS := -paths := -DDATA_PREFIX=\"$(DATA_PREFIX)\" +paths := -DDATA_PREFIX=\"$(pkgdatadir)\" 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 := args.o dust.o file.o mt.o rocks.o score.o sprite.o sound.o autopilot.o my_objects += main.o -libs := SFont.o +libs := font.o objects := $(libs) $(my_objects) rocks := 00 01 02 03 04 05 06 07 08 09 @@ -38,11 +42,11 @@ rocks += 10 11 12 13 14 15 16 17 18 19 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) +rocks := $(rocks:%=data/rock%.png) +graphics := data/ship.png data/icon.png data/life.png data/font.png $(rocks) INSTALL := install -INSTALL_PROGRAM := $(INSTALL) -o games -g games +INSTALL_PROGRAM := $(INSTALL) INSTALL_DATA := $(INSTALL) -m 644 @@ -51,6 +55,8 @@ INSTALL_DATA := $(INSTALL) -m 644 .PHONY: program program-clean install-program uninstall-program .PHONY: data data-clean install-data uninstall-data +.INTERMEDIATE: font_guts font_guts.pov + all: program data data: $(graphics) @@ -58,24 +64,23 @@ data: $(graphics) program: vor %.o: %.c - @echo compiling $@ from $< - @$(CC) $(cflags) -c -o $@ $< + $(CC) $(cflags) -c -o $@ $< $(my_objects): config.h -SFont.o: SFont.h +font.o: font.h args.o: args.h -dust.o: globals.h dust.h mt.h +dust.o: globals.h dust.h float.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 +main.o: args.h common.h dust.h file.h float.h globals.h mt.h rocks.h score.h sprite.h sound.h autopilot.h mt.o: mt.h -rocks.o: rocks.h common.h file.h globals.h mt.h +rocks.o: rocks.h common.h file.h globals.h mt.h sprite.h score.o: score.h common.h file.h @@ -84,8 +89,7 @@ sound.o: sound.h args.h common.h sprite.o: sprite.h common.h vor: $(objects) - @echo linking $@ from $^ - @$(CC) $(ldflags) -o $@ $^ $(LIBRARIES) + $(CC) $^ $(ldflags) -o $@ include gfx.mk @@ -101,53 +105,34 @@ program-clean: rm -f *.o vor data-clean: - rm -f $(graphics) + rm -f $(graphics) font_guts font_guts.pov mkinstalldirs: - if [ ! -d $(DATA_PREFIX) ]; then mkdir $(DATA_PREFIX); fi - if [ ! -d $(DATA_PREFIX)/banners ]; then mkdir $(DATA_PREFIX)/banners; fi - if [ ! -d $(DATA_PREFIX)/fonts ]; then mkdir $(DATA_PREFIX)/fonts; fi - if [ ! -d $(DATA_PREFIX)/icons ]; then mkdir $(DATA_PREFIX)/icons; fi - if [ ! -d $(DATA_PREFIX)/indicators ]; then mkdir $(DATA_PREFIX)/indicators; fi - if [ ! -d $(DATA_PREFIX)/music ]; then mkdir $(DATA_PREFIX)/music; fi - if [ ! -d $(DATA_PREFIX)/sounds ]; then mkdir $(DATA_PREFIX)/sounds; fi - if [ ! -d $(DATA_PREFIX)/sprites ]; then mkdir $(DATA_PREFIX)/sprites; fi - -rminstalldirs: - if [ -d $(DATA_PREFIX)/banners ]; then rmdir $(DATA_PREFIX)/banners; fi - if [ -d $(DATA_PREFIX)/fonts ]; then rmdir $(DATA_PREFIX)/fonts; fi - if [ -d $(DATA_PREFIX)/icons ]; then rmdir $(DATA_PREFIX)/icons; fi - if [ -d $(DATA_PREFIX)/indicators ]; then rmdir $(DATA_PREFIX)/indicators; fi - if [ -d $(DATA_PREFIX)/music ]; then rmdir $(DATA_PREFIX)/music; fi - if [ -d $(DATA_PREFIX)/sounds ]; then rmdir $(DATA_PREFIX)/sounds; fi - if [ -d $(DATA_PREFIX)/sprites ]; then rmdir $(DATA_PREFIX)/sprites; fi - if [ -d $(DATA_PREFIX) ]; then rmdir $(DATA_PREFIX); fi + if [ ! -d $(DESTDIR)$(pkgdatadir) ]; then mkdir -p $(DESTDIR)$(pkgdatadir); fi + if [ ! -d $(DESTDIR)$(bindir) ]; then mkdir -p $(DESTDIR)$(bindir); fi + +rminstalldirs: uninstall-data + if [ -d $(DESTDIR)$(pkgdatadir) ]; then rmdir $(DESTDIR)$(pkgdatadir); fi install: all mkinstalldirs install-program install-data install-program: program - $(INSTALL_PROGRAM) ./vor $(PROGRAM_PREFIX) + $(INSTALL_PROGRAM) ./vor $(DESTDIR)$(bindir)/ -install-data: data - $(INSTALL_DATA) ./data/banners/* $(DATA_PREFIX)/banners/ - $(INSTALL_DATA) ./data/fonts/* $(DATA_PREFIX)/fonts/ - $(INSTALL_DATA) ./data/icons/* $(DATA_PREFIX)/icons/ - $(INSTALL_DATA) ./data/indicators/* $(DATA_PREFIX)/indicators/ - $(INSTALL_DATA) ./data/music/* $(DATA_PREFIX)/music/ - $(INSTALL_DATA) ./data/sounds/* $(DATA_PREFIX)/sounds/ - $(INSTALL_DATA) ./data/sprites/* $(DATA_PREFIX)/sprites/ +install-data: data mkinstalldirs + $(INSTALL_DATA) ./data/*.png $(DESTDIR)$(pkgdatadir)/ + $(INSTALL_DATA) ./data/*.wav $(DESTDIR)$(pkgdatadir)/ + $(INSTALL_DATA) ./data/*.xm $(DESTDIR)$(pkgdatadir)/ + @echo + @echo "$(pkgdatadir)/icon.png (48x48) or ship.png (32x32) make good icons." + @echo uninstall: uninstall-program uninstall-data rminstalldirs uninstall-program: - rm -f $(PROGRAM_PREFIX)/vor + rm -f $(DESTDIR)$(bindir)/vor uninstall-data: - rm -f $(DATA_PREFIX)/banners/* - rm -f $(DATA_PREFIX)/fonts/* - rm -f $(DATA_PREFIX)/icons/* - rm -f $(DATA_PREFIX)/indicators/* - rm -f $(DATA_PREFIX)/music/* - rm -f $(DATA_PREFIX)/sounds/* - rm -f $(DATA_PREFIX)/sprites/* - rm -f $(DATA_PREFIX)/scores + rm -f $(DESTDIR)$(pkgdatadir)/*.png + rm -f $(DESTDIR)$(pkgdatadir)/*.wav + rm -f $(DESTDIR)$(pkgdatadir)/*.xm