[1] | 1 | |
---|
| 2 | COMMON_OBJ = ../common/obj_all/core.o ../common/obj_all/socket.o ../common/obj_all/timer.o \ |
---|
| 3 | ../common/obj_all/db.o ../common/obj_all/plugins.o ../common/obj_all/lock.o \ |
---|
| 4 | ../common/obj_all/nullpo.o ../common/obj_all/malloc.o ../common/obj_all/showmsg.o \ |
---|
| 5 | ../common/obj_all/utils.o ../common/obj_all/strlib.o ../common/obj_all/grfio.o \ |
---|
| 6 | ../common/obj_all/mapindex.o ../common/obj_all/ers.o |
---|
| 7 | COMMON_H = ../common/core.h ../common/socket.h ../common/timer.h \ |
---|
| 8 | ../common/db.h ../common/plugins.h ../common/lock.h \ |
---|
| 9 | ../common/nullpo.h ../common/malloc.h ../common/showmsg.h \ |
---|
| 10 | ../common/utils.h ../common/strlib.h ../common/grfio.h \ |
---|
| 11 | ../common/mapindex.h ../common/ers.h |
---|
| 12 | |
---|
| 13 | COMMON_SQL_OBJ = ../common/obj_sql/sql.o |
---|
| 14 | COMMON_SQL_H = ../common/sql.h |
---|
| 15 | |
---|
| 16 | MAP_OBJ = map.o chrif.o clif.o pc.o status.o npc.o \ |
---|
| 17 | npc_chat.o chat.o path.o itemdb.o mob.o script.o \ |
---|
| 18 | storage.o skill.o atcommand.o charcommand.o battle.o \ |
---|
| 19 | intif.o trade.o party.o vending.o guild.o pet.o \ |
---|
| 20 | log.o mail.o date.o irc.o unit.o mercenary.o quest.o |
---|
| 21 | MAP_TXT_OBJ = $(MAP_OBJ:%=obj_txt/%) |
---|
| 22 | MAP_SQL_OBJ = $(MAP_OBJ:%=obj_sql/%) |
---|
| 23 | MAP_H = map.h chrif.h clif.h pc.h status.h npc.h \ |
---|
| 24 | chat.h itemdb.h mob.h script.h path.h \ |
---|
| 25 | storage.h skill.h atcommand.h charcommand.h battle.h \ |
---|
| 26 | intif.h trade.h party.h vending.h guild.h pet.h \ |
---|
| 27 | log.h mail.h date.h irc.h unit.h mercenary.h quest.h |
---|
| 28 | |
---|
| 29 | HAVE_MYSQL=@HAVE_MYSQL@ |
---|
| 30 | ifeq ($(HAVE_MYSQL),yes) |
---|
| 31 | ALL_DEPENDS=txt sql |
---|
| 32 | SQL_DEPENDS=map-server_sql |
---|
| 33 | else |
---|
| 34 | ALL_TARGET=txt |
---|
| 35 | SQL_DEPENDS=needs_mysql |
---|
| 36 | endif |
---|
| 37 | |
---|
| 38 | HAVE_PCRE=@HAVE_PCRE@ |
---|
| 39 | ifeq ($(HAVE_PCRE),yes) |
---|
| 40 | PCRE_CFLAGS=-DPCRE_SUPPORT @PCRE_CFLAGS@ |
---|
| 41 | else |
---|
| 42 | PCRE_CFLAGS= |
---|
| 43 | endif |
---|
| 44 | |
---|
| 45 | @SET_MAKE@ |
---|
| 46 | |
---|
| 47 | ##################################################################### |
---|
| 48 | .PHONY : all txt sql clean help |
---|
| 49 | |
---|
| 50 | all: $(ALL_DEPENDS) |
---|
| 51 | |
---|
| 52 | txt: map-server |
---|
| 53 | |
---|
| 54 | sql: $(SQL_DEPENDS) |
---|
| 55 | |
---|
| 56 | clean: |
---|
| 57 | rm -rf *.o obj_txt obj_sql ../../map-server@EXEEXT@ ../../map-server_sql@EXEEXT@ |
---|
| 58 | |
---|
| 59 | help: |
---|
| 60 | ifeq ($(HAVE_MYSQL),yes) |
---|
| 61 | @echo "possible targets are 'sql' 'txt' 'all' 'clean' 'help'" |
---|
| 62 | @echo "'sql' - map server (SQL version)" |
---|
| 63 | else |
---|
| 64 | @echo "possible targets are 'txt' 'all' 'clean' 'help'" |
---|
| 65 | endif |
---|
| 66 | @echo "'txt' - map server (TXT version)" |
---|
| 67 | @echo "'all' - builds all above targets" |
---|
| 68 | @echo "'clean' - cleans builds and objects" |
---|
| 69 | @echo "'help' - outputs this message" |
---|
| 70 | |
---|
| 71 | ##################################################################### |
---|
| 72 | |
---|
| 73 | needs_mysql: |
---|
| 74 | @echo "MySQL not found or disabled by the configure script" |
---|
| 75 | @exit 1 |
---|
| 76 | |
---|
| 77 | # object directories |
---|
| 78 | obj_txt: |
---|
| 79 | -mkdir obj_txt |
---|
| 80 | |
---|
| 81 | obj_sql: |
---|
| 82 | -mkdir obj_sql |
---|
| 83 | |
---|
| 84 | # executables |
---|
| 85 | map-server: obj_txt $(MAP_TXT_OBJ) $(COMMON_OBJ) |
---|
| 86 | @CC@ @LDFLAGS@ -o ../../map-server@EXEEXT@ $(MAP_TXT_OBJ) $(COMMON_OBJ) @LIBS@ @PCRE_LIBS@ |
---|
| 87 | |
---|
| 88 | map-server_sql: obj_sql $(MAP_SQL_OBJ) $(COMMON_OBJ) $(COMMON_SQL_OBJ) |
---|
| 89 | @CC@ @LDFLAGS@ -o ../../map-server_sql@EXEEXT@ $(MAP_SQL_OBJ) $(COMMON_OBJ) $(COMMON_SQL_OBJ) @LIBS@ @PCRE_LIBS@ @MYSQL_LIBS@ |
---|
| 90 | |
---|
| 91 | # map object files |
---|
| 92 | obj_txt/%.o: %.c $(MAP_H) $(COMMON_H) |
---|
| 93 | @CC@ @CFLAGS@ $(PCRE_CFLAGS) $(CUSTOM_CFLAGS) -DTXT_ONLY @CPPFLAGS@ -c $(OUTPUT_OPTION) $< |
---|
| 94 | |
---|
| 95 | obj_sql/%.o: %.c $(MAP_H) $(COMMON_H) $(COMMON_SQL_H) |
---|
| 96 | @CC@ @CFLAGS@ $(PCRE_CFLAGS) $(CUSTOM_CFLAGS) @MYSQL_CFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $< |
---|
| 97 | |
---|
| 98 | # missing common object files |
---|
| 99 | ../common/obj_all/%.o: |
---|
| 100 | @$(MAKE) -C ../common txt |
---|
| 101 | |
---|
| 102 | ../common/obj_sql/%.o: |
---|
| 103 | @$(MAKE) -C ../common sql |
---|