From d3a2bbe60ca0a543713bc0bdd280be7c9c9c2951 Mon Sep 17 00:00:00 2001 From: FlavioJS Date: Thu, 21 Dec 2006 01:16:30 +0000 Subject: - Moved md5calc to common - Answered Skotlex's question and fixed "warning: comparison is always false due to limited range of data type" by restricting script words to ASCII characters only. - Applied "svn:eol-style native" to makefiles and project files git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9544 54d463be-8e91-2dee-dedb-b68131a5f0ec --- Makefile | 498 +++++++++++++++++++++++++++++++-------------------------------- 1 file changed, 249 insertions(+), 249 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index 2135a0f67..f1f292cea 100644 --- a/Makefile +++ b/Makefile @@ -1,249 +1,249 @@ - -CACHED = $(shell ls | grep Makefile.cache) -ifeq ($(findstring Makefile.cache,$(CACHED)), Makefile.cache) -MKDEF = $(shell cat Makefile.cache) -else - -CC = gcc -pipe -# CC = g++ --pipe - -MAKE = make -# MAKE = gmake - -OPT = -g -OPT += -O2 -# OPT += -O3 -# OPT += -mmmx -# OPT += -msse -# OPT += -msse2 -# OPT += -msse3 -# OPT += -rdynamic -OPT += -ffast-math -# OPT += -fbounds-checking -# OPT += -fstack-protector -# OPT += -fomit-frame-pointer -OPT += -Wall -Wno-sign-compare -# Uncomment this one if you are using GCC 4.X -# OPT += -Wno-unused-parameter -Wno-pointer-sign -# Makes map-wide script variables be saved to SQL instead of TXT files. -# OPT += -DMAPREGSQL -# Turbo is an alternate socket access implementation which should be faster. -# DO NOT ENABLE YET as it isn't quite ready for general usage. -# OPT += -DTURBO -# Enable the perl regular expression support for scripts -# OPT += -DPCRE_SUPPORT -# OPT += -DGCOLLECT -# OPT += -DMEMWATCH -# OPT += -DDMALLOC -DDMALLOC_FUNC_CHECK -# OPT += -DBCHECK - -# LIBS += -lgc -# LIBS += -ldmalloc -# LIBS += -L/usr/local/lib -lpcre - -PLATFORM = $(shell uname) - -ifeq ($(findstring Linux,$(PLATFORM)), Linux) - LIBS += -ldl -endif - -ifeq ($(findstring SunOS,$(PLATFORM)), SunOS) - LIBS += -lsocket -lnsl -ldl - MAKE = gmake -endif - -ifeq ($(findstring FreeBSD,$(PLATFORM)), FreeBSD) - MAKE = gmake - OS_TYPE = -D__FREEBSD__ -endif - -ifeq ($(findstring NetBSD,$(PLATFORM)), NetBSD) - MAKE = gmake - OS_TYPE = -D__NETBSD__ -endif - -ifeq ($(findstring CYGWIN,$(PLATFORM)), CYGWIN) - OPT += -DFD_SETSIZE=4096 - ifeq ($(findstring mingw,$(shell gcc --version)), mingw) - IS_MINGW = 1 - OS_TYPE = -DMINGW - LIBS += -L../.. -lwsock32 - else - OS_TYPE = -DCYGWIN - endif -endif - -CFLAGS = $(OPT) -I../common $(OS_TYPE) - -ifdef SQLFLAG - ifdef IS_MINGW - CFLAGS += -I../mysql - LIBS += -lmysql - else - MYSQLFLAG_CONFIG = $(shell which mysql_config) - ifeq ($(findstring /,$(MYSQLFLAG_CONFIG)), /) - MYSQLFLAG_VERSION = $(shell $(MYSQLFLAG_CONFIG) --version | sed s:\\..*::) - ifeq ($(findstring 5,$(MYSQLFLAG_VERSION)), 5) - MYSQLFLAG_CONFIG_ARGUMENT = --include - else - MYSQLFLAG_CONFIG_ARGUMENT = --cflags - endif - CFLAGS += $(shell $(MYSQLFLAG_CONFIG) $(MYSQLFLAG_CONFIG_ARGUMENT)) - LIBS += $(shell $(MYSQLFLAG_CONFIG) --libs) - else - CFLAGS += -I/usr/local/include/mysql - LIBS += -L/usr/local/lib/mysql -lmysqlclient - endif - endif -endif - -ifneq ($(findstring -lz,$(LIBS)), -lz) - LIBS += -lz -endif -ifneq ($(findstring -lm,$(LIBS)), -lm) - LIBS += -lm -endif - -MKDEF = CC="$(CC)" CFLAGS="$(CFLAGS)" LIB_S="$(LIBS)" - -endif - -.PHONY: txt sql common login login_sql char char_sql map map_sql ladmin converters \ - addons plugins tools webserver clean zlib depend - -txt : Makefile.cache conf common login char map ladmin - -ifdef SQLFLAG -sql: Makefile.cache conf common login_sql char_sql map_sql -else -sql: - $(MAKE) SQLFLAG=1 $@ -endif - -conf: - cp -r conf-tmpl conf - rm -rf conf/.svn conf/*/.svn - cp -r save-tmpl save - rm -rf save/.svn - -common: src/common/GNUmakefile - $(MAKE) -C src/$@ $(MKDEF) - -login: src/login/GNUmakefile common - $(MAKE) -C src/$@ $(MKDEF) txt - -char: src/char/GNUmakefile common - $(MAKE) -C src/$@ $(MKDEF) txt - -map: src/map/GNUmakefile common - $(MAKE) -C src/$@ $(MKDEF) txt - -login_sql: src/login_sql/GNUmakefile common - $(MAKE) -C src/$@ $(MKDEF) sql - -char_sql: src/char_sql/GNUmakefile common - $(MAKE) -C src/$@ $(MKDEF) sql - -map_sql: src/map/GNUmakefile common - $(MAKE) -C src/map $(MKDEF) sql - -ladmin: src/ladmin/GNUmakefile common - $(MAKE) -C src/$@ $(MKDEF) - -plugins addons: src/plugins/GNUmakefile common - $(MAKE) -C src/plugins $(MKDEF) - -webserver: - $(MAKE) -C src/$@ $(MKDEF) - -tools: - $(MAKE) -C src/tool $(MKDEF) - -ifdef SQLFLAG -converters: src/txt-converter/GNUmakefile common - $(MAKE) -C src/txt-converter $(MKDEF) -else -converters: - $(MAKE) SQLFLAG=1 $@ -endif - -zlib: - $(MAKE) -C src/$@ $(MKDEF) - -clean: src/common/GNUmakefile src/login/GNUmakefile src/login_sql/GNUmakefile \ - src/char/GNUmakefile src/char_sql/GNUmakefile src/map/GNUmakefile \ - src/ladmin/GNUmakefile src/plugins/GNUmakefile src/txt-converter/GNUmakefile - rm -f Makefile.cache - $(MAKE) -C src/common $@ - $(MAKE) -C src/login $@ - $(MAKE) -C src/login_sql $@ - $(MAKE) -C src/char $@ - $(MAKE) -C src/char_sql $@ - $(MAKE) -C src/map $@ - $(MAKE) -C src/ladmin $@ - $(MAKE) -C src/plugins $@ - $(MAKE) -C src/zlib $@ - $(MAKE) -C src/txt-converter $@ - -depend: src/common/GNUmakefile src/login/GNUmakefile src/login_sql/GNUmakefile \ - src/char/GNUmakefile src/char_sql/GNUmakefile src/map/GNUmakefile \ - src/ladmin/GNUmakefile src/plugins/GNUmakefile src/txt-converter/GNUmakefile - cd src/common; makedepend -fGNUmakefile -pobj/ -Y. *.c; cd ../..; - cd src/login; makedepend -DTXT_ONLY -fGNUmakefile -Y. -Y../common *.c; cd ../..; - cd src/login_sql; makedepend -fGNUmakefile -Y. -Y../common *.c; cd ../..; - cd src/char; makedepend -DTXT_ONLY -fGNUmakefile -Y. -Y../common *.c; cd ../..; - cd src/char_sql; makedepend -fGNUmakefile -Y. -Y../common *.c; cd ../..; - cd src/map; makedepend -DTXT_ONLY -fGNUmakefile -ptxtobj/ -Y. -Y../common *.c; cd ../..; - cd src/map; makedepend -fGNUmakefile -a -psqlobj/ -Y. -Y../common *.c; cd ../..; - cd src/ladmin; makedepend -fGNUmakefile -Y. -Y../common *.c; cd ../..; - cd src/txt-converter; makedepend -DTXT_SQL_CONVERT -fGNUmakefile -Y. -Y../common *.c; cd ../..; - $(MAKE) -C src/plugins $@ - -Makefile.cache: - printf "$(subst ",\",$(MKDEF))" > Makefile.cache - -src/%/GNUmakefile: src/%/Makefile - sed -e 's/$$>/$$^/' $< > $@ - -src/common/GNUmakefile: src/common/Makefile -src/login/GNUmakefile: src/login/Makefile -src/login_sql/GNUmakefile: src/login_sql/Makefile -src/char/GNUmakefile: src/char/Makefile -src/char_sql/GNUmakefile: src/char_sql/Makefile -src/map/GNUmakefile: src/map/Makefile -src/plugins/GNUmakefile: src/plugins/Makefile -src/ladmin/GNUmakefile: src/ladmin/Makefile -src/txt-converter/GNUmakefile: src/txt-converter/Makefile - -install: conf/%.conf conf/%.txt - $(shell mkdir -p /opt/eathena/bin/) - $(shell mkdir -p /opt/eathena/etc/eathena/) - $(shell mkdir -p /opt/eathena/var/log/eathena/) - $(shell mv save /opt/eathena/etc/eathena/save) - $(shell mv db /opt/eathena/etc/eathena/db) - $(shell mv conf /opt/eathena/etc/eathena/conf) - $(shell mv npc /opt/eathena/etc/eathena/npc) - $(shell mv log/* /opt/eathena/var/log/eathena/) - $(shell cp *-server* /opt/eathena/bin/) - $(shell cp ladmin /opt/eathena/bin/) - $(shell ln -s /opt/eathena/etc/eathena/save/ /opt/eathena/bin/) - $(shell ln -s /opt/eathena/etc/eathena/db/ /opt/eathena/bin/) - $(shell ln -s /opt/eathena/etc/eathena/conf/ /opt/eathena/bin/) - $(shell ln -s /opt/eathena/etc/eathena/npc/ /opt/eathena/bin/) - $(shell ln -s /opt/eathena/var/log/eathena/ /opt/eathena/bin/log) - -bin-clean: - $(shell rm /opt/eathena/bin/login-server*) - $(shell rm /opt/eathena/bin/char-server*) - $(shell rm /opt/eathena/bin/map-server*) - $(shell rm /opt/eathena/bin/ladmin) - -uninstall: - bin-clean - $(shell rm /opt/eathena/bin/save) - $(shell rm /opt/eathena/bin/db) - $(shell rm /opt/eathena/bin/conf) - $(shell rm /opt/eathena/bin/npc) - $(shell rm /opt/eathena/bin/log) - $(shell rm -rf /opt/eathena/etc/eathena) - $(shell rm -rf /opt/eathena/var/log/eathena) + +CACHED = $(shell ls | grep Makefile.cache) +ifeq ($(findstring Makefile.cache,$(CACHED)), Makefile.cache) +MKDEF = $(shell cat Makefile.cache) +else + +CC = gcc -pipe +# CC = g++ --pipe + +MAKE = make +# MAKE = gmake + +OPT = -g +OPT += -O2 +# OPT += -O3 +# OPT += -mmmx +# OPT += -msse +# OPT += -msse2 +# OPT += -msse3 +# OPT += -rdynamic +OPT += -ffast-math +# OPT += -fbounds-checking +# OPT += -fstack-protector +# OPT += -fomit-frame-pointer +OPT += -Wall -Wno-sign-compare +# Uncomment this one if you are using GCC 4.X +# OPT += -Wno-unused-parameter -Wno-pointer-sign +# Makes map-wide script variables be saved to SQL instead of TXT files. +# OPT += -DMAPREGSQL +# Turbo is an alternate socket access implementation which should be faster. +# DO NOT ENABLE YET as it isn't quite ready for general usage. +# OPT += -DTURBO +# Enable the perl regular expression support for scripts +# OPT += -DPCRE_SUPPORT +# OPT += -DGCOLLECT +# OPT += -DMEMWATCH +# OPT += -DDMALLOC -DDMALLOC_FUNC_CHECK +# OPT += -DBCHECK + +# LIBS += -lgc +# LIBS += -ldmalloc +# LIBS += -L/usr/local/lib -lpcre + +PLATFORM = $(shell uname) + +ifeq ($(findstring Linux,$(PLATFORM)), Linux) + LIBS += -ldl +endif + +ifeq ($(findstring SunOS,$(PLATFORM)), SunOS) + LIBS += -lsocket -lnsl -ldl + MAKE = gmake +endif + +ifeq ($(findstring FreeBSD,$(PLATFORM)), FreeBSD) + MAKE = gmake + OS_TYPE = -D__FREEBSD__ +endif + +ifeq ($(findstring NetBSD,$(PLATFORM)), NetBSD) + MAKE = gmake + OS_TYPE = -D__NETBSD__ +endif + +ifeq ($(findstring CYGWIN,$(PLATFORM)), CYGWIN) + OPT += -DFD_SETSIZE=4096 + ifeq ($(findstring mingw,$(shell gcc --version)), mingw) + IS_MINGW = 1 + OS_TYPE = -DMINGW + LIBS += -L../.. -lwsock32 + else + OS_TYPE = -DCYGWIN + endif +endif + +CFLAGS = $(OPT) -I../common $(OS_TYPE) + +ifdef SQLFLAG + ifdef IS_MINGW + CFLAGS += -I../mysql + LIBS += -lmysql + else + MYSQLFLAG_CONFIG = $(shell which mysql_config) + ifeq ($(findstring /,$(MYSQLFLAG_CONFIG)), /) + MYSQLFLAG_VERSION = $(shell $(MYSQLFLAG_CONFIG) --version | sed s:\\..*::) + ifeq ($(findstring 5,$(MYSQLFLAG_VERSION)), 5) + MYSQLFLAG_CONFIG_ARGUMENT = --include + else + MYSQLFLAG_CONFIG_ARGUMENT = --cflags + endif + CFLAGS += $(shell $(MYSQLFLAG_CONFIG) $(MYSQLFLAG_CONFIG_ARGUMENT)) + LIBS += $(shell $(MYSQLFLAG_CONFIG) --libs) + else + CFLAGS += -I/usr/local/include/mysql + LIBS += -L/usr/local/lib/mysql -lmysqlclient + endif + endif +endif + +ifneq ($(findstring -lz,$(LIBS)), -lz) + LIBS += -lz +endif +ifneq ($(findstring -lm,$(LIBS)), -lm) + LIBS += -lm +endif + +MKDEF = CC="$(CC)" CFLAGS="$(CFLAGS)" LIB_S="$(LIBS)" + +endif + +.PHONY: txt sql common login login_sql char char_sql map map_sql ladmin converters \ + addons plugins tools webserver clean zlib depend + +txt : Makefile.cache conf common login char map ladmin + +ifdef SQLFLAG +sql: Makefile.cache conf common login_sql char_sql map_sql +else +sql: + $(MAKE) SQLFLAG=1 $@ +endif + +conf: + cp -r conf-tmpl conf + rm -rf conf/.svn conf/*/.svn + cp -r save-tmpl save + rm -rf save/.svn + +common: src/common/GNUmakefile + $(MAKE) -C src/$@ $(MKDEF) + +login: src/login/GNUmakefile common + $(MAKE) -C src/$@ $(MKDEF) txt + +char: src/char/GNUmakefile common + $(MAKE) -C src/$@ $(MKDEF) txt + +map: src/map/GNUmakefile common + $(MAKE) -C src/$@ $(MKDEF) txt + +login_sql: src/login_sql/GNUmakefile common + $(MAKE) -C src/$@ $(MKDEF) sql + +char_sql: src/char_sql/GNUmakefile common + $(MAKE) -C src/$@ $(MKDEF) sql + +map_sql: src/map/GNUmakefile common + $(MAKE) -C src/map $(MKDEF) sql + +ladmin: src/ladmin/GNUmakefile common + $(MAKE) -C src/$@ $(MKDEF) + +plugins addons: src/plugins/GNUmakefile common + $(MAKE) -C src/plugins $(MKDEF) + +webserver: + $(MAKE) -C src/$@ $(MKDEF) + +tools: + $(MAKE) -C src/tool $(MKDEF) + +ifdef SQLFLAG +converters: src/txt-converter/GNUmakefile common + $(MAKE) -C src/txt-converter $(MKDEF) +else +converters: + $(MAKE) SQLFLAG=1 $@ +endif + +zlib: + $(MAKE) -C src/$@ $(MKDEF) + +clean: src/common/GNUmakefile src/login/GNUmakefile src/login_sql/GNUmakefile \ + src/char/GNUmakefile src/char_sql/GNUmakefile src/map/GNUmakefile \ + src/ladmin/GNUmakefile src/plugins/GNUmakefile src/txt-converter/GNUmakefile + rm -f Makefile.cache + $(MAKE) -C src/common $@ + $(MAKE) -C src/login $@ + $(MAKE) -C src/login_sql $@ + $(MAKE) -C src/char $@ + $(MAKE) -C src/char_sql $@ + $(MAKE) -C src/map $@ + $(MAKE) -C src/ladmin $@ + $(MAKE) -C src/plugins $@ + $(MAKE) -C src/zlib $@ + $(MAKE) -C src/txt-converter $@ + +depend: src/common/GNUmakefile src/login/GNUmakefile src/login_sql/GNUmakefile \ + src/char/GNUmakefile src/char_sql/GNUmakefile src/map/GNUmakefile \ + src/ladmin/GNUmakefile src/plugins/GNUmakefile src/txt-converter/GNUmakefile + cd src/common; makedepend -fGNUmakefile -pobj/ -Y. *.c; cd ../..; + cd src/login; makedepend -DTXT_ONLY -fGNUmakefile -Y. -Y../common *.c; cd ../..; + cd src/login_sql; makedepend -fGNUmakefile -Y. -Y../common *.c; cd ../..; + cd src/char; makedepend -DTXT_ONLY -fGNUmakefile -Y. -Y../common *.c; cd ../..; + cd src/char_sql; makedepend -fGNUmakefile -Y. -Y../common *.c; cd ../..; + cd src/map; makedepend -DTXT_ONLY -fGNUmakefile -ptxtobj/ -Y. -Y../common *.c; cd ../..; + cd src/map; makedepend -fGNUmakefile -a -psqlobj/ -Y. -Y../common *.c; cd ../..; + cd src/ladmin; makedepend -fGNUmakefile -Y. -Y../common *.c; cd ../..; + cd src/txt-converter; makedepend -DTXT_SQL_CONVERT -fGNUmakefile -Y. -Y../common *.c; cd ../..; + $(MAKE) -C src/plugins $@ + +Makefile.cache: + printf "$(subst ",\",$(MKDEF))" > Makefile.cache + +src/%/GNUmakefile: src/%/Makefile + sed -e 's/$$>/$$^/' $< > $@ + +src/common/GNUmakefile: src/common/Makefile +src/login/GNUmakefile: src/login/Makefile +src/login_sql/GNUmakefile: src/login_sql/Makefile +src/char/GNUmakefile: src/char/Makefile +src/char_sql/GNUmakefile: src/char_sql/Makefile +src/map/GNUmakefile: src/map/Makefile +src/plugins/GNUmakefile: src/plugins/Makefile +src/ladmin/GNUmakefile: src/ladmin/Makefile +src/txt-converter/GNUmakefile: src/txt-converter/Makefile + +install: conf/%.conf conf/%.txt + $(shell mkdir -p /opt/eathena/bin/) + $(shell mkdir -p /opt/eathena/etc/eathena/) + $(shell mkdir -p /opt/eathena/var/log/eathena/) + $(shell mv save /opt/eathena/etc/eathena/save) + $(shell mv db /opt/eathena/etc/eathena/db) + $(shell mv conf /opt/eathena/etc/eathena/conf) + $(shell mv npc /opt/eathena/etc/eathena/npc) + $(shell mv log/* /opt/eathena/var/log/eathena/) + $(shell cp *-server* /opt/eathena/bin/) + $(shell cp ladmin /opt/eathena/bin/) + $(shell ln -s /opt/eathena/etc/eathena/save/ /opt/eathena/bin/) + $(shell ln -s /opt/eathena/etc/eathena/db/ /opt/eathena/bin/) + $(shell ln -s /opt/eathena/etc/eathena/conf/ /opt/eathena/bin/) + $(shell ln -s /opt/eathena/etc/eathena/npc/ /opt/eathena/bin/) + $(shell ln -s /opt/eathena/var/log/eathena/ /opt/eathena/bin/log) + +bin-clean: + $(shell rm /opt/eathena/bin/login-server*) + $(shell rm /opt/eathena/bin/char-server*) + $(shell rm /opt/eathena/bin/map-server*) + $(shell rm /opt/eathena/bin/ladmin) + +uninstall: + bin-clean + $(shell rm /opt/eathena/bin/save) + $(shell rm /opt/eathena/bin/db) + $(shell rm /opt/eathena/bin/conf) + $(shell rm /opt/eathena/bin/npc) + $(shell rm /opt/eathena/bin/log) + $(shell rm -rf /opt/eathena/etc/eathena) + $(shell rm -rf /opt/eathena/var/log/eathena) -- cgit v1.2.3-60-g2f50