summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorblacksirius <blacksirius@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-06-01 10:46:02 +0000
committerblacksirius <blacksirius@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-06-01 10:46:02 +0000
commit81e4918a779ef631106fd2ecaae6bd6433fb2b07 (patch)
treeedea88dcaae69f8d8d859609201883aa3207f0f3 /src
parent3433dea871bcd256e2635e0b416467330633af95 (diff)
downloadhercules-81e4918a779ef631106fd2ecaae6bd6433fb2b07.tar.gz
hercules-81e4918a779ef631106fd2ecaae6bd6433fb2b07.tar.bz2
hercules-81e4918a779ef631106fd2ecaae6bd6433fb2b07.tar.xz
hercules-81e4918a779ef631106fd2ecaae6bd6433fb2b07.zip
feature merge bs-coreoptimize->trunk: Build Output Cleanup, Makefile Common Dependency Handling
- "Optimized" the build Output using Makefiles - to Kernel style build output. - Changed dependency handling to common (core), by generating one lib file (ar) and link against that instead of assigning all deps individually in every subproject - Changed header dependency handling in Subproject makefiles - requiring all common/ headers. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16198 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src')
-rw-r--r--src/char/Makefile.in29
-rw-r--r--src/common/Makefile.in37
-rw-r--r--src/login/Makefile.in34
-rw-r--r--src/map/Makefile.in43
-rw-r--r--src/plugins/Makefile.in9
-rw-r--r--src/tool/Makefile.in9
6 files changed, 78 insertions, 83 deletions
diff --git a/src/char/Makefile.in b/src/char/Makefile.in
index 1c93cfa6d..bfe9d1585 100644
--- a/src/char/Makefile.in
+++ b/src/char/Makefile.in
@@ -1,14 +1,5 @@
-COMMON_OBJ = ../common/obj_all/core.o ../common/obj_all/socket.o ../common/obj_all/timer.o \
- ../common/obj_all/db.o ../common/obj_all/plugins.o ../common/obj_all/lock.o \
- ../common/obj_all/malloc.o ../common/obj_all/showmsg.o ../common/obj_all/utils.o \
- ../common/obj_all/strlib.o \
- ../common/obj_all/mapindex.o ../common/obj_all/ers.o ../common/obj_all/random.o ../common/obj_all/conf.o
-COMMON_H = ../common/core.h ../common/socket.h ../common/timer.h ../common/mmo.h \
- ../common/db.h ../common/plugins.h ../common/lock.h \
- ../common/malloc.h ../common/showmsg.h ../common/utils.h \
- ../common/strlib.h \
- ../common/mapindex.h ../common/ers.h ../common/random.h ../common/obj_all/conf.h
+COMMON_H = $(shell ls ../common/*.h)
MT19937AR_OBJ = ../../3rdparty/mt19937ar/mt19937ar.o
MT19937AR_H = ../../3rdparty/mt19937ar/mt19937ar.h
@@ -30,7 +21,7 @@ CHAR_H = char.h inter.h int_party.h int_guild.h int_storage.h int_pet.h int_homu
HAVE_MYSQL=@HAVE_MYSQL@
ifeq ($(HAVE_MYSQL),yes)
- CHAR_SERVER_SQL_DEPENDS=obj_sql $(CHAR_OBJ) $(COMMON_OBJ) $(COMMON_SQL_OBJ) $(MT19937AR_OBJ)
+ CHAR_SERVER_SQL_DEPENDS=obj_sql $(CHAR_OBJ) ../common/obj_sql/common_sql.a ../common/obj_all/common.a $(MT19937AR_OBJ)
else
CHAR_SERVER_SQL_DEPENDS=needs_mysql
endif
@@ -43,10 +34,12 @@ endif
all: char-server_sql
char-server_sql: $(CHAR_SERVER_SQL_DEPENDS)
- @CC@ @LDFLAGS@ -o ../../char-server_sql@EXEEXT@ $(CHAR_OBJ) $(COMMON_OBJ) $(COMMON_SQL_OBJ) $(MT19937AR_OBJ) $(LIBCONFIG_OBJ) @LIBS@ @MYSQL_LIBS@
+ @echo " LD $@"
+ @@CC@ @LDFLAGS@ -o ../../char-server_sql@EXEEXT@ $(CHAR_OBJ) ../common/obj_sql/common_sql.a ../common/obj_all/common.a $(MT19937AR_OBJ) $(LIBCONFIG_OBJ) @LIBS@ @MYSQL_LIBS@
clean:
- rm -rf *.o obj_sql ../../char-server_sql@EXEEXT@
+ @echo " CLEAN char"
+ @rm -rf *.o obj_sql ../../char-server_sql@EXEEXT@
help:
@echo "possible targets are 'char-server_sql' 'all' 'clean' 'help'"
@@ -62,16 +55,18 @@ needs_mysql:
@exit 1
obj_sql:
- -mkdir obj_sql
+ @echo " MKDIR obj_sql"
+ @-mkdir obj_sql
obj_sql/%.o: %.c $(CHAR_H) $(COMMON_H) $(COMMON_SQL_H) $(MT19937AR_H) $(LIBCONFIG_H)
- @CC@ @CFLAGS@ $(MT19937AR_INCLUDE) $(LIBCONFIG_INCLUDE) @MYSQL_CFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<
+ @echo " CC $<"
+ @@CC@ @CFLAGS@ $(MT19937AR_INCLUDE) $(LIBCONFIG_INCLUDE) @MYSQL_CFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<
# missing object files
-../common/obj_all/%.o:
+../common/obj_all/common.a:
@$(MAKE) -C ../common sql
-../common/obj_sql/%.o:
+../common/obj_sql/common_sql.a:
@$(MAKE) -C ../common sql
MT19937AR_OBJ:
diff --git a/src/common/Makefile.in b/src/common/Makefile.in
index de591a59f..5e3b00a88 100644
--- a/src/common/Makefile.in
+++ b/src/common/Makefile.in
@@ -4,11 +4,8 @@ COMMON_OBJ = obj_all/core.o obj_all/socket.o obj_all/timer.o obj_all/db.o obj_al
obj_all/grfio.o obj_all/mapindex.o obj_all/ers.o obj_all/md5calc.o \
obj_all/minicore.o obj_all/minisocket.o obj_all/minimalloc.o obj_all/random.o obj_all/des.o \
obj_all/conf.o
-COMMON_H = mmo.h plugin.h \
- core.h socket.h timer.h db.h plugins.h lock.h \
- nullpo.h malloc.h showmsg.h strlib.h utils.h \
- grfio.h mapindex.h ers.h md5calc.h random.h des.h \
- conf.h
+
+COMMON_H = $(shell ls ../common/*.h)
COMMON_SQL_OBJ = obj_sql/sql.o
COMMON_SQL_H = sql.h
@@ -46,7 +43,8 @@ txt: $(TXT_DEPENDS)
sql: $(SQL_DEPENDS)
clean:
- rm -rf *.o obj_all obj_sql
+ @echo " CLEAN common"
+ @rm -rf *.o obj_all obj_sql
help:
@echo "possible targets are 'txt' 'sql' 'all' 'clean' 'help'"
@@ -63,24 +61,37 @@ needs_mysql:
@exit 1
obj_all:
- -mkdir obj_all
+ @echo " MKDIR obj_all"
+ @-mkdir obj_all
obj_sql:
- -mkdir obj_sql
+ @echo " MKDIR obj_sql"
+ @-mkdir obj_sql
+
+obj_all/common.a: $(COMMON_OBJ)
+ @echo " AR $@"
+ @@AR@ rcs obj_all/common.a $(COMMON_OBJ)
-common: obj_all $(COMMON_OBJ) $(MT19937AR_OBJ) $(LIBCONFIG_OBJ)
+obj_sql/common_sql.a: $(COMMON_SQL_OBJ)
+ @echo " AR $@"
+ @@AR@ rcs obj_sql/common_sql.a $(COMMON_SQL_OBJ)
+
-common_sql: obj_sql $(COMMON_SQL_OBJ)
+common: obj_all $(COMMON_OBJ) $(MT19937AR_OBJ) $(LIBCONFIG_OBJ) obj_all/common.a
+common_sql: obj_sql $(COMMON_SQL_OBJ) obj_sql/common_sql.a
obj_all/%.o: %.c $(COMMON_H) $(MT19937AR_H) $(LIBCONFIG_H)
- @CC@ @CFLAGS@ $(MT19937AR_INCLUDE) $(LIBCONFIG_INCLUDE) @LDFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<
+ @echo " CC $<"
+ @@CC@ @CFLAGS@ $(MT19937AR_INCLUDE) $(LIBCONFIG_INCLUDE) @LDFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<
obj_all/mini%.o: %.c $(COMMON_H) $(MT19937AR_H) $(LIBCONFIG_H)
- @CC@ @CFLAGS@ $(MT19937AR_INCLUDE) $(LIBCONFIG_INCLUDE) -DMINICORE @LDFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<
+ @echo " CC $<"
+ @@CC@ @CFLAGS@ $(MT19937AR_INCLUDE) $(LIBCONFIG_INCLUDE) -DMINICORE @LDFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<
obj_sql/%.o: %.c $(COMMON_H) $(COMMON_SQL_H) $(LIBCONFIG_H)
- @CC@ @CFLAGS@ $(LIBCONFIG_INCLUDE) @MYSQL_CFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<
+ @echo " CC $<"
+ @@CC@ @CFLAGS@ $(LIBCONFIG_INCLUDE) @MYSQL_CFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<
# missing object files
diff --git a/src/login/Makefile.in b/src/login/Makefile.in
index 348943403..d0fc34756 100644
--- a/src/login/Makefile.in
+++ b/src/login/Makefile.in
@@ -1,18 +1,5 @@
-COMMON_OBJ = ../common/obj_all/core.o ../common/obj_all/socket.o ../common/obj_all/timer.o \
- ../common/obj_all/db.o ../common/obj_all/plugins.o ../common/obj_all/lock.o \
- ../common/obj_all/malloc.o ../common/obj_all/showmsg.o ../common/obj_all/utils.o \
- ../common/obj_all/strlib.o ../common/obj_all/mapindex.o \
- ../common/obj_all/ers.o ../common/obj_all/md5calc.o ../common/obj_all/random.o \
- ../common/obj_all/conf.o
-COMMON_H = ../common/core.h ../common/socket.h ../common/timer.h ../common/mmo.h \
- ../common/db.h ../common/plugins.h ../common/lock.h \
- ../common/malloc.h ../common/showmsg.h ../common/utils.h ../common/strlib.h \
- ../common/mapindex.h \
- ../common/ers.h ../common/md5calc.h ../common/random.h ../common/conf.h
-
-COMMON_SQL_OBJ = ../common/obj_sql/sql.o
-COMMON_SQL_H = ../common/sql.h
+COMMON_H = $(shell ls ../common/*.h)
MT19937AR_OBJ = ../../3rdparty/mt19937ar/mt19937ar.o
MT19937AR_H = ../../3rdparty/mt19937ar/mt19937ar.h
@@ -32,7 +19,7 @@ LOGIN_H = login.h account.h ipban.h loginlog.h
HAVE_MYSQL=@HAVE_MYSQL@
ifeq ($(HAVE_MYSQL),yes)
- LOGIN_SERVER_SQL_DEPENDS=obj_sql $(LOGIN_SQL_OBJ) $(COMMON_OBJ) $(COMMON_SQL_OBJ) $(MT19937AR_OBJ)
+ LOGIN_SERVER_SQL_DEPENDS=obj_sql $(LOGIN_SQL_OBJ) ../common/obj_sql/common_sql.a ../common/obj_all/common.a $(MT19937AR_OBJ)
else
LOGIN_SERVER_SQL_DEPENDS=needs_mysql
endif
@@ -47,7 +34,8 @@ all: sql
sql: obj_sql login-server_sql
clean:
- rm -rf *.o obj_sql ../../login-server@EXEEXT@ ../../login-server_sql@EXEEXT@
+ @echo " CLEAN login"
+ @rm -rf *.o obj_sql ../../login-server@EXEEXT@ ../../login-server_sql@EXEEXT@
help:
@echo "possible targets are 'sql' 'all' 'clean' 'help'"
@@ -65,23 +53,27 @@ needs_mysql:
# object directories
obj_sql:
- test -d obj_sql || mkdir obj_sql
+ @echo " MKDIR obj_sql"
+ @-mkdir obj_sql
#executables
login-server_sql: $(LOGIN_SERVER_SQL_DEPENDS)
- @CC@ @LDFLAGS@ -o ../../login-server_sql@EXEEXT@ $(LOGIN_SQL_OBJ) $(COMMON_OBJ) $(COMMON_SQL_OBJ) $(MT19937AR_OBJ) $(LIBCONFIG_OBJ) @LIBS@ @MYSQL_LIBS@
+ @echo " LD $@"
+ @@CC@ @LDFLAGS@ -o ../../login-server_sql@EXEEXT@ $(LOGIN_SQL_OBJ) ../common/obj_sql/common_sql.a ../common/obj_all/common.a $(MT19937AR_OBJ) $(LIBCONFIG_OBJ) @LIBS@ @MYSQL_LIBS@
+
# login object files
obj_sql/%.o: %.c $(LOGIN_H) $(COMMON_H) $(MT19937AR_H) $(LIBCONFIG_H)
- @CC@ @CFLAGS@ $(MT19937AR_INCLUDE) $(LIBCONFIG_INCLUDE) -DWITH_SQL @MYSQL_CFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<
+ @echo " CC $<"
+ @@CC@ @CFLAGS@ $(MT19937AR_INCLUDE) $(LIBCONFIG_INCLUDE) -DWITH_SQL @MYSQL_CFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<
# missing object files
-../common/obj_all/%.o:
+../common/obj_all/common.a:
@$(MAKE) -C ../common sql
-../common/obj_sql/%.o:
+../common/obj_sql/common_sql.a:
@$(MAKE) -C ../common sql
MT19937AR_OBJ:
diff --git a/src/map/Makefile.in b/src/map/Makefile.in
index beeab32dd..06925bcec 100644
--- a/src/map/Makefile.in
+++ b/src/map/Makefile.in
@@ -1,19 +1,5 @@
-COMMON_OBJ = ../common/obj_all/core.o ../common/obj_all/socket.o ../common/obj_all/timer.o \
- ../common/obj_all/db.o ../common/obj_all/plugins.o ../common/obj_all/lock.o \
- ../common/obj_all/nullpo.o ../common/obj_all/malloc.o ../common/obj_all/showmsg.o \
- ../common/obj_all/utils.o ../common/obj_all/strlib.o ../common/obj_all/grfio.o \
- ../common/obj_all/mapindex.o ../common/obj_all/ers.o ../common/obj_all/md5calc.o \
- ../common/obj_all/random.o ../common/obj_all/des.o ../common/obj_all/conf.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/md5calc.h \
- ../common/random.h ../common/des.h ../common/conf.h
-
-COMMON_SQL_OBJ = ../common/obj_sql/sql.o
-COMMON_SQL_H = ../common/sql.h
+COMMON_H = $(shell ls ../common/*.h)
MT19937AR_OBJ = ../../3rdparty/mt19937ar/mt19937ar.o
MT19937AR_H = ../../3rdparty/mt19937ar/mt19937ar.h
@@ -72,7 +58,8 @@ txt: $(TXT_DEPENDS)
sql: $(SQL_DEPENDS)
clean:
- rm -rf *.o obj_txt obj_sql ../../map-server@EXEEXT@ ../../map-server_sql@EXEEXT@
+ @echo " CLEAN map"
+ @rm -rf *.o obj_txt obj_sql ../../map-server@EXEEXT@ ../../map-server_sql@EXEEXT@
help:
ifeq ($(HAVE_MYSQL),yes)
@@ -94,28 +81,32 @@ needs_mysql:
# object directories
obj_txt:
- -mkdir obj_txt
+ @echo " MKDIR obj_txt"
+ @-mkdir obj_txt
obj_sql:
- -mkdir obj_sql
+ @echo " MKDIR obj_sql"
+ @-mkdir obj_sql
# executables
-map-server_sql: obj_sql $(MAP_SQL_OBJ) $(COMMON_OBJ) $(COMMON_SQL_OBJ)
- @CC@ @LDFLAGS@ -o ../../map-server_sql@EXEEXT@ $(MAP_SQL_OBJ) $(COMMON_OBJ) $(COMMON_SQL_OBJ) $(MT19937AR_OBJ) $(LIBCONFIG_OBJ) @LIBS@ @PCRE_LIBS@ @MYSQL_LIBS@
+map-server_sql: obj_sql $(MAP_SQL_OBJ) ../common/obj_sql/common_sql.a ../common/obj_all/common.a
+ @echo " LD $@"
+ @@CC@ @LDFLAGS@ -o ../../map-server_sql@EXEEXT@ $(MAP_SQL_OBJ) ../common/obj_sql/common_sql.a ../common/obj_all/common.a $(MT19937AR_OBJ) $(LIBCONFIG_OBJ) @LIBS@ @PCRE_LIBS@ @MYSQL_LIBS@
# map object files
-obj_sql/%.o: %.c $(MAP_H) $(COMMON_H) $(COMMON_SQL_H) $(MT19937AR_H) $(LIBCONFIG_H)
- @CC@ @CFLAGS@ $(MT19937AR_INCLUDE) $(LIBCONFIG_INCLUDE) $(PCRE_CFLAGS) @MYSQL_CFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<
+obj_sql/%.o: %.c $(MAP_H) $(COMMON_H) $(MT19937AR_H) $(LIBCONFIG_H)
+ @echo " CC $<"
+ @@CC@ @CFLAGS@ $(MT19937AR_INCLUDE) $(LIBCONFIG_INCLUDE) $(PCRE_CFLAGS) @MYSQL_CFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<
# missing object files
-../common/obj_all/%.o:
+../common/obj_all/common.a:
@$(MAKE) -C ../common sql
-
-../common/obj_sql/%.o:
+
+../common/obj_sql/common_sql.a:
@$(MAKE) -C ../common sql
-
+
MT19937AR_OBJ:
@$(MAKE) -C ../../3rdparty/mt19937ar
diff --git a/src/plugins/Makefile.in b/src/plugins/Makefile.in
index fa74ff90d..1b92ea3fa 100644
--- a/src/plugins/Makefile.in
+++ b/src/plugins/Makefile.in
@@ -23,7 +23,8 @@ pid: pid@DLLEXT@
console: console@DLLEXT@
clean:
- rm -rf *.o
+ @echo " CLEAN plugins"
+ @rm -rf *.o
help:
@echo "possible targets are $(PLUGINS:%='%') 'all' 'clean' 'help'"
@@ -38,10 +39,12 @@ help:
#####################################################################
%@DLLEXT@: %.c
- @CC@ @CFLAGS@ @CPPFLAGS@ @LDFLAGS@ -shared -o ../../plugins/$@ $<
+ @echo " CC $<"
+ @@CC@ @CFLAGS@ @CPPFLAGS@ @LDFLAGS@ -shared -o ../../plugins/$@ $<
sig@DLLEXT@: sig.c $(COMMON_OBJ)
- @CC@ @CFLAGS@ @CPPFLAGS@ @LDFLAGS@ -shared -o ../../plugins/$@ $< $(COMMON_OBJ)
+ @echo " CC $<"
+ @@CC@ @CFLAGS@ @CPPFLAGS@ @LDFLAGS@ -shared -o ../../plugins/$@ $< $(COMMON_OBJ)
# missing common object files
../common/obj_all/%.o: ../common/%.c $(COMMON_H)
diff --git a/src/tool/Makefile.in b/src/tool/Makefile.in
index 2ad022936..59ef89958 100644
--- a/src/tool/Makefile.in
+++ b/src/tool/Makefile.in
@@ -23,10 +23,12 @@ MAPCACHE_OBJ = obj_all/mapcache.o
all: mapcache
mapcache: obj_all $(MAPCACHE_OBJ) $(COMMON_OBJ) $(LIBCONFIG_OBJ)
- @CC@ @LDFLAGS@ $(LIBCONFIG_INCLUDE) -o ../../mapcache@EXEEXT@ $(MAPCACHE_OBJ) $(COMMON_OBJ) $(LIBCONFIG_OBJ) @LIBS@
+ @echo " LD $@"
+ @@CC@ @LDFLAGS@ $(LIBCONFIG_INCLUDE) -o ../../mapcache@EXEEXT@ $(MAPCACHE_OBJ) $(COMMON_OBJ) $(LIBCONFIG_OBJ) @LIBS@
clean:
- rm -rf obj_all/*.o ../../mapcache@EXEEXT@
+ @echo " CLEAN tool"
+ @rm -rf obj_all/*.o ../../mapcache@EXEEXT@
help:
@echo "possible targets are 'mapcache' 'all' 'clean' 'help'"
@@ -41,7 +43,8 @@ obj_all:
-mkdir obj_all
obj_all/%.o: %.c $(COMMON_H) $(LIBCONFIG_H)
- @CC@ @CFLAGS@ $(LIBCONFIG_INCLUDE) @LDFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<
+ @echo " CC $<"
+ @@CC@ @CFLAGS@ $(LIBCONFIG_INCLUDE) @LDFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<
# missing common object files
../common/obj_all/%.o: