# Configuration constants
#------------------------------------------------------------------------------
-CFLAGS= -Wall -O3 -ansi -pedantic $(shell sdl-config --cflags)
+CFLAGS= -Wall -g -O3 -ansi -pedantic $(shell sdl-config --cflags)
#CFLAGS= -Wall -g -O1 -ansi -pedantic $(shell sdl-config --cflags)
#CFLAGS= -Wall -pg -ansi $(shell sdl-config --cflags)
FT2_LIBS= $(shell freetype-config --libs)
MAPC_TARG= mapc
+MAPC_EXEC = ./$(MAPC_TARG)
BALL_TARG= neverball
PUTT_TARG= neverputt
MAPC_OBJS= \
share/vec3.o \
- share/image.o \
+ share/base_image.o \
share/solid.o \
share/binary.o \
- share/config.o \
+ share/base_config.o \
share/mapc.o
BALL_OBJS= \
share/i18n.o \
share/st_lang.o \
share/st_resol.o \
share/vec3.o \
+ share/base_image.o \
share/image.o \
share/solid.o \
+ share/solid_gl.o\
share/part.o \
share/back.o \
share/geom.o \
share/gui.o \
+ share/base_config.o \
share/config.o \
share/binary.o \
share/state.o \
ball/hud.o \
ball/game.o \
ball/level.o \
+ ball/levels.o \
ball/set.o \
ball/demo.o \
ball/util.o \
ball/st_conf.o \
ball/st_demo.o \
ball/st_save.o \
- ball/st_fail.o \
- ball/st_goal.o \
+ ball/st_play_end.o \
ball/st_done.o \
ball/st_level.o \
ball/st_over.o \
ball/st_set.o \
ball/st_start.o \
ball/st_title.o \
+ ball/st_help.o \
ball/st_name.o \
ball/st_shared.o \
ball/main.o
share/st_lang.o \
share/st_resol.o \
share/vec3.o \
+ share/base_image.o \
share/image.o \
share/solid.o \
+ share/solid_gl.o \
share/part.o \
share/geom.o \
share/back.o \
+ share/base_config.o \
share/config.o \
share/binary.o \
share/audio.o \
PUTT_DEPS= $(PUTT_OBJS:.o=.d)
MAPC_DEPS= $(MAPC_OBJS:.o=.d)
-LIBS= $(X11_PATH) $(SDL_LIBS) -lSDL_image -lSDL_ttf -lSDL_mixer $(FT2_LIBS) $(OGL_LIBS)
+BASE_LIBS= $(SDL_LIBS) -lSDL_image
+LIBS= $(X11_PATH) $(BASE_LIBS) -lSDL_ttf -lSDL_mixer $(FT2_LIBS) $(OGL_LIBS)
MESSAGEPART= /LC_MESSAGES/$(LOCALEDOM).mo
MESSAGES= $(LINGUAS:%=$(LOCALEDIR)/%$(MESSAGEPART))
#------------------------------------------------------------------------------
%.d : %.c
- $(CC) $(CFLAGS) -Ishare -MM -MF $@ $<
+ $(CC) $(CFLAGS) -Ishare -MM -MF $@ -MT '$*.o $@' $<
%.o : %.c
$(CC) $(CFLAGS) -Ishare -o $@ -c $<
%.sol : %.map $(MAPC_TARG)
- ./$(MAPC_TARG) $< data
+ $(MAPC_EXEC) $< data
$(LOCALEDIR)/%$(MESSAGEPART) : po/%.po
mkdir -p `dirname $@`
$(CC) $(CFLAGS) -o $(PUTT_TARG) $(PUTT_OBJS) $(LIBS)
$(MAPC_TARG) : $(MAPC_OBJS)
- $(CC) $(CFLAGS) -o $(MAPC_TARG) $(MAPC_OBJS) $(LIBS)
+ $(CC) $(CFLAGS) -o $(MAPC_TARG) $(MAPC_OBJS) $(BASE_LIBS)
sols : $(SOLS)
po-update : po-update-extract po-update-merge
#------------------------------------------------------------------------------
+
+.PHONY : all sols locales clean-src clean test \
+ po-update-extract po-update-merge po-update
+
+-include $(BALL_DEPS) $(PUTT_DEPS) $(MAPC_DEPS)