DEBUG = 1 APPNAME = Lephisto VMAJOR = 0 VMINOR = 0 VREV = 1 VERSION = -DVMAJOR=$(VMAJOR) -DVMINOR=$(VMINOR) -DVREV=$(VREV) OBJS := $(shell find ../src/ -name '*.c' -print) OBJS := $(OBJS:%.c=%.o) CLUA = -I../lib/lua CSDL = $(shell sdl-config --cflags) CXML = $(shell xml2-config --cflags) CTTF = $(shell freetype-config --cflags) CGL = CFLAGS = $(CLUA) $(CSDL) $(CXML) $(CTTF) $(CGL) $(VERSION) ifdef DEBUG CFLAGS += -W -Wall -g3 -DDEBUG -DLUA_USE_APICHECK else CFLAGS += -O2 endif LDLUA = ../lib/lua/liblua.a LDSDL = `sdl-config --libs` -lSDL_image LDXML = `xml2-config --libs` LDTTF = `freetype-config --libs` LDGL = -lGL LDPNG = -lpng LDFLAGS = -lm $(LDLUA) $(LDSDL) $(LDXML) $(LDTTF) $(LDGL) $(LDPNG) ifdef DEBUG LDFLAGS += -pg endif DATA = data DATAFILES = $(shell find ../scripts/ ../gfx/ ../dat/ -name '*.lua' -o -name '*.png' -o -name '*.xml' -o -name '*.ttf') %.o: %.c %.h @gcc -c $(CFLAGS) -o $@ $< @echo -e "\tCC $@" all: utils data lua $(OBJS) @gcc $(LDFLAGS) -o $(APPNAME) $(OBJS) ../lib/lua/liblua.a @echo "\tLD $(APPNAME)" lua: @if [ ! -e ../lib/lua/liblua.a ]; then (cd ../lib/lua; $(MAKE) a); fi pack: ../src/pack.c ../utils/pack/main.c @(cd ../utils/pack; $(MAKE)) mksprite: ../utils/mkspr/main.c @(cd ../utils/mkspr; $(MAKE)) data: pack $(DATAFILES) ../src/pack.c ../utils/pack/main.c @echo -e "\tCreating data..\n" @./pack $(DATA) $(DATAFILES) utils: mksprite clean: @echo -e "\tRemoving data.." rm -rf $(OBJS) $(APPNAME) $(DATA) pack core mksprite *.out a.txt @echo -e "\tCleaning utils." @(cd ../utils/pack; $(MAKE) clean) @(cd ../utils/mkspr; $(MAKE) clean) @echo -e "\tCleaning Lua" @(cd ../lib/lua; $(MAKE) clean)