From 98ad6bc7987e2f96b9b5dda07ccae552ccfb4c86 Mon Sep 17 00:00:00 2001 From: Haru Date: Wed, 20 Nov 2013 03:52:08 +0100 Subject: Added support for 'make plugin.pluginname' to compile only 'pluginname' - Various Makefile optimizations Signed-off-by: Haru --- src/map/Makefile.in | 71 ++++++++++++++++++++++++++++------------------------- 1 file changed, 38 insertions(+), 33 deletions(-) (limited to 'src/map') diff --git a/src/map/Makefile.in b/src/map/Makefile.in index b516c61ca..e3a47abeb 100644 --- a/src/map/Makefile.in +++ b/src/map/Makefile.in @@ -1,35 +1,39 @@ -COMMON_H = $(shell ls ../common/*.h) -CONFIG_H = $(shell ls ../config/*.h ../config/*/*.h) +CONFIG_D = ../config +CONFIG_H = $(wildcard $(CONFIG_D)/*.h) $(wildcard $(CONFIG_D)/*/*.h) -MT19937AR_D = ../../3rdparty/mt19937ar -MT19937AR_OBJ = $(MT19937AR_D)/mt19937ar.o -MT19937AR_H = $(MT19937AR_D)/mt19937ar.h -MT19937AR_INCLUDE = -I$(MT19937AR_D) +COMMON_D = ../common +COMMON_H = $(wildcard $(COMMON_D)/*.h) LIBCONFIG_D = ../../3rdparty/libconfig LIBCONFIG_OBJ = $(addprefix $(LIBCONFIG_D)/, libconfig.o grammar.o scanctx.o \ - scanner.o strbuf.o) + scanner.o strbuf.o) LIBCONFIG_H = $(addprefix $(LIBCONFIG_D)/, libconfig.h grammar.h parsectx.h \ - scanctx.h scanner.h strbuf.h wincompat.h) + scanctx.h scanner.h strbuf.h wincompat.h) LIBCONFIG_INCLUDE = -I$(LIBCONFIG_D) -MAP_OBJ = $(addprefix obj_sql/, atcommand.o battle.o battleground.o \ - buyingstore.o chat.o chrif.o clif.o date.o duel.o elemental.o \ - guild.o homunculus.o HPMmap.o instance.o intif.o irc-bot.o itemdb.o \ - log.o mail.o map.o mapreg_sql.o mercenary.o mob.o npc.o npc_chat.o \ - party.o path.o pc.o pc_groups.o pet.o quest.o script.o \ - searchstore.o skill.o status.o storage.o trade.o unit.o vending.o) +MT19937AR_D = ../../3rdparty/mt19937ar +MT19937AR_OBJ = $(MT19937AR_D)/mt19937ar.o +MT19937AR_H = $(MT19937AR_D)/mt19937ar.h +MT19937AR_INCLUDE = -I$(MT19937AR_D) + +MAP_C = atcommand.c battle.c battleground.c buyingstore.c chat.c chrif.c \ + clif.c date.c duel.c elemental.c guild.c homunculus.c HPMmap.c \ + instance.c intif.c irc-bot.c itemdb.c log.c mail.c map.c mapreg_sql.c \ + mercenary.c mob.c npc.c npc_chat.c party.c path.c pc.c pc_groups.c \ + pet.c quest.c script.c searchstore.c skill.c status.c storage.c \ + trade.c unit.c vending.c +MAP_OBJ = $(addprefix obj_sql/, $(patsubst %c,%o,$(MAP_C))) MAP_H = atcommand.h battle.h battleground.h buyingstore.h chat.h chrif.h \ - clif.h date.h duel.h elemental.h guild.h homunculus.h HPMmap.h \ - instance.h intif.h irc-bot.h itemdb.h log.h mail.h map.h mapreg.h \ - mercenary.h mob.h npc.h packets.h packets_struct.h party.h path.h \ - pc.h pc_groups.h pet.h quest.h script.h searchstore.h skill.h \ - status.h storage.h trade.h unit.h vending.h + clif.h date.h duel.h elemental.h guild.h homunculus.h HPMmap.h \ + instance.h intif.h irc-bot.h itemdb.h log.h mail.h map.h mapreg.h \ + mercenary.h mob.h npc.h packets.h packets_struct.h party.h path.h \ + pc.h pc_groups.h pet.h quest.h script.h searchstore.h skill.h \ + status.h storage.h trade.h unit.h vending.h HAVE_MYSQL=@HAVE_MYSQL@ ifeq ($(HAVE_MYSQL),yes) - MAP_SERVER_SQL_DEPENDS=$(MAP_OBJ) ../common/obj_sql/common_sql.a ../common/obj_all/common.a $(MT19937AR_OBJ) $(LIBCONFIG_OBJ) + MAP_SERVER_SQL_DEPENDS=$(MAP_OBJ) $(COMMON_D)/obj_sql/common_sql.a $(COMMON_D)/obj_all/common.a $(MT19937AR_OBJ) $(LIBCONFIG_OBJ) else MAP_SERVER_SQL_DEPENDS=needs_mysql endif @@ -63,12 +67,12 @@ clean: buildclean help: @echo "possible targets are 'map-server' 'all' 'clean' 'help'" - @echo "'map-server' - map server" - @echo "'all' - builds all above targets" - @echo "'clean' - cleans builds and objects" - @echo "'buildclean' - cleans build temporary (object) files, without deleting the" - @echo " executables" - @echo "'help' - outputs this message" + @echo "'map-server' - map server" + @echo "'all' - builds all above targets" + @echo "'clean' - cleans builds and objects" + @echo "'buildclean' - cleans build temporary (object) files, without deleting the" + @echo " executables" + @echo "'help' - outputs this message" ##################################################################### @@ -91,7 +95,8 @@ map-server: ../../map-server@EXEEXT@ ../../map-server@EXEEXT@: $(MAP_SERVER_SQL_DEPENDS) Makefile @echo " LD $(notdir $@)" - @$(CC) @LDFLAGS@ -o ../../map-server@EXEEXT@ $(MAP_OBJ) ../common/obj_sql/common_sql.a ../common/obj_all/common.a $(MT19937AR_OBJ) $(LIBCONFIG_OBJ) @LIBS@ @PCRE_LIBS@ @MYSQL_LIBS@ + @$(CC) @LDFLAGS@ -o ../../map-server@EXEEXT@ $(MAP_OBJ) $(COMMON_D)/obj_sql/common_sql.a \ + $(COMMON_D)/obj_all/common.a $(MT19937AR_OBJ) $(LIBCONFIG_OBJ) @LIBS@ @PCRE_LIBS@ @MYSQL_LIBS@ # map object files @@ -100,14 +105,14 @@ obj_sql/%.o: %.c $(MAP_H) $(COMMON_H) $(CONFIG_H) $(MT19937AR_H) $(LIBCONFIG_H) @$(CC) @CFLAGS@ $(MT19937AR_INCLUDE) $(LIBCONFIG_INCLUDE) $(PCRE_CFLAGS) @MYSQL_CFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $< # missing object files -../common/obj_all/common.a: +$(COMMON_D)/obj_all/common.a: @echo " MAKE $@" - @$(MAKE) -C ../common sql - -../common/obj_sql/common_sql.a: + @$(MAKE) -C $(COMMON_D) sql + +$(COMMON_D)/obj_sql/common_sql.a: @echo " MAKE $@" - @$(MAKE) -C ../common sql - + @$(MAKE) -C $(COMMON_D) sql + $(MT19937AR_OBJ): @echo " MAKE $@" @$(MAKE) -C $(MT19937AR_D) -- cgit v1.2.3-70-g09d2