COMMON_OBJ = ../common/obj/core.o ../common/obj/socket.o ../common/obj/timer.o \ ../common/obj/db.o ../common/obj/plugins.o ../common/obj/lock.o \ ../common/obj/nullpo.o ../common/obj/malloc.o ../common/obj/showmsg.o \ ../common/obj/utils.o ../common/obj/strlib.o ../common/obj/grfio.o \ ../common/obj/mapindex.o ../common/obj/ers.o COMMON_H = ../common/core.h ../common/socket.h ../common/timer.h \ ../common/db.h ../common/plugins.h ../common/lock.h \ ../common/nullpo.h ../common/malloc.h ../common/showmsg.h \ ../common/utils.h ../common/strlib.h ../common/grfio.h \ ../common/mapindex.h ../common/ers.h COMMON_SQL_OBJ = ../common/obj_sql/sql.o COMMON_SQL_H = ../common/sql.h MAP_OBJ = obj/map.o obj/chrif.o obj/clif.o obj/pc.o obj/status.o obj/npc.o \ obj/npc_chat.o obj/chat.o obj/path.o obj/itemdb.o obj/mob.o obj/script.o \ obj/storage.o obj/skill.o obj/atcommand.o obj/charcommand.o obj/battle.o \ obj/intif.o obj/trade.o obj/party.o obj/vending.o obj/guild.o obj/pet.o \ obj/log.o obj/mail.o obj/date.o obj/irc.o obj/unit.o obj/mercenary.o MAP_H = map.h chrif.h clif.h pc.h status.h npc.h \ chat.h itemdb.h mob.h script.h \ storage.h skill.h atcommand.h charcommand.h battle.h \ intif.h trade.h party.h vending.h guild.h pet.h \ log.h mail.h date.h irc.h unit.h mercenary.h HAVE_MYSQL=@HAVE_MYSQL@ ifeq ($(HAVE_MYSQL),yes) ALL_DEPENDS=txt sql SQL_DEPENDS=map-server_sql else ALL_TARGET=txt SQL_DEPENDS=needs_mysql endif HAVE_PCRE=@HAVE_PCRE@ ifeq ($(HAVE_PCRE),yes) PCRE_CFLAGS=-DPCRE_SUPPORT @PCRE_CFLAGS@ else PCRE_CFLAGS= endif @SET_MAKE@ ##################################################################### .PHONY : all txt sql clean help all: $(ALL_DEPENDS) txt: map-server sql: $(SQL_DEPENDS) clean: rm -rf *.o obj_txt obj_sql ../../map-server@EXEEXT@ ../../map-server_sql@EXEEXT@ help: ifeq ($(HAVE_MYSQL),yes) @echo "possible targets are 'sql' 'txt' 'all' 'clean' 'help'" @echo "'sql' - map server (SQL version)" else @echo "possible targets are 'txt' 'all' 'clean' 'help'" endif @echo "'txt' - map server (TXT version)" @echo "'all' - builds all above targets" @echo "'clean' - cleans builds and objects" @echo "'help' - outputs this message" ##################################################################### needs_mysql: @echo "MySQL not found or disabled by the configure script" @exit 1 # object directories obj_txt: -mkdir obj_txt obj_sql: -mkdir obj_sql # executables map-server: obj_txt $(MAP_OBJ:obj/%=obj_txt/%) $(COMMON_OBJ) @CC@ @LDFLAGS@ -o ../../map-server@EXEEXT@ $(MAP_OBJ:obj/%=obj_txt/%) $(COMMON_OBJ) @LIBS@ @PCRE_LIBS@ map-server_sql: obj_sql $(MAP_OBJ:obj/%=obj_sql/%) $(COMMON_OBJ) $(COMMON_SQL_OBJ) @CC@ @LDFLAGS@ -o ../../map-server_sql@EXEEXT@ $(MAP_OBJ:obj/%=obj_sql/%) $(COMMON_OBJ) $(COMMON_SQL_OBJ) @LIBS@ @PCRE_LIBS@ @MYSQL_LIBS@ # map object files obj_txt/%.o: %.c $(MAP_H) $(COMMON_H) @CC@ @CFLAGS@ $(PCRE_CFLAGS) -DTXT_ONLY @CPPFLAGS@ -c $(OUTPUT_OPTION) $< obj_sql/%.o: %.c $(MAP_H) $(COMMON_H) $(COMMON_SQL_H) @CC@ @CFLAGS@ $(PCRE_CFLAGS) @MYSQL_CFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $< # missing common object files ../common/obj/%.o: @$(MAKE) -C ../common txt ../common/obj_sql/%.o: @$(MAKE) -C ../common sql