From 7b12dd06420fae973fbcc2f81f5d385e59788c78 Mon Sep 17 00:00:00 2001 From: Haru Date: Fri, 18 Oct 2013 13:21:34 +0200 Subject: Added sysinfo (System Information) functionalities - More informative messages are displayed during startup, to make it easier to identify what system and environment Hercules is running. - Git/SVN revision detection is improved, separating the source version (cached at compile time) from the runtime version, in case the user updated their working copy without recompiling the server. Git version detection is also more reliable, in case a non-default branch is used. - The get_revision script command has been removed (as it was useless to begin with, after the switch to git). An alternative will be provided later, for feature-probing purposes. - The patch was tested under Linux (Gentoo / gcc 4.7 on i686 and x86_64, Debian 6 / gcc 4.4 on i686, Raspbian / gcc 4.6 on armv6l, CentOS 5 / gcc 4.1 on i686, CentOS 6 / gcc 4.4 on x86_64, Linux Mint 15 / gcc 4.7 on x86_64, OS X Mountain Lion / clang 5.0 and gcc 4.8 on x86_64, Cygwin-NT-5.1/gcc 4.8 on i686, FreeBSD 8 / gcc 4.2 on i386, FreeBSD 9 / gcc 4.2 on amd64, FreeBSD 10 / clang 3.3 on amd64, NetBSD 5 / gcc 4.1 on i386, NetBSD 6 / gcc 4.5 on amd64, OpenBSD 5 / gcc 4.2 on amd64, Solaris 11 / gcc 4.5 on i86pc, Windows 7 / Visual Studio 2012 on x86, Windows 8 / Visual Studio 2010 on WOW64, Windows 8.1 / Visual Studio 2013 on WOW64. Signed-off-by: Haru --- Makefile.in | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) (limited to 'Makefile.in') diff --git a/Makefile.in b/Makefile.in index d61a885b4..e987c713f 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,14 +1,17 @@ +# Copyright (c) Hercules Dev Team, licensed under GNU GPL. +# See the LICENSE file + @SET_MAKE@ HAVE_MYSQL=@HAVE_MYSQL@ ifeq ($(HAVE_MYSQL),yes) - ALL_DEPENDS=common_sql login_sql char_sql map_sql tools | import - SQL_DEPENDS=common_sql login_sql char_sql map_sql | import - COMMON_SQL_DEPENDS=mt19937ar libconfig - LOGIN_SQL_DEPENDS=mt19937ar libconfig common_sql - CHAR_SQL_DEPENDS=mt19937ar libconfig common_sql - MAP_SQL_DEPENDS=mt19937ar libconfig common_sql - TOOLS_DEPENDS=mt19937ar libconfig common_sql + ALL_DEPENDS=common_sql login_sql char_sql map_sql tools sysinfo | import + SQL_DEPENDS=common_sql login_sql char_sql map_sql sysinfo | import + COMMON_SQL_DEPENDS=mt19937ar libconfig sysinfo + LOGIN_SQL_DEPENDS=mt19937ar libconfig common_sql sysinfo + CHAR_SQL_DEPENDS=mt19937ar libconfig common_sql sysinfo + MAP_SQL_DEPENDS=mt19937ar libconfig common_sql sysinfo + TOOLS_DEPENDS=mt19937ar libconfig common_sql sysinfo else ALL_DEPENDS=needs_mysql SQL_DEPENDS=needs_mysql @@ -51,6 +54,7 @@ export CC clean \ buildclean \ distclean \ + sysinfo \ hooks \ help @@ -140,6 +144,14 @@ clean buildclean: $(MF_TARGETS) distclean: clean @-rm -f $(MF_TARGETS) config.status config.log +sysinfo: + @./sysinfogen.sh src/common/sysinfo_new.inc @CFLAGS@ + @if cmp -s src/common/sysinfo.inc src/common/sysinfo_new.inc; then \ + rm src/common/sysinfo_new.inc ; \ + else \ + mv src/common/sysinfo_new.inc src/common/sysinfo.inc ; \ + fi + help: Makefile @echo "most common targets are 'all' 'sql' 'clean' 'plugins' 'help'" @echo "possible targets are:" @@ -161,8 +173,9 @@ help: Makefile @echo "'buildclean' - cleans build temporary (object) files, without deleting the" @echo " executables" @echo "'distclean' - cleans files generated by ./configure" + @echo "'sysinfo' - re-generates the System Info include" ifeq ($(HAVE_PERL)$(HAVE_DOXYGEN),yesyes) - @echo "'hooks' - re-generates the definitions for the HPM Hooking plugin" + @echo "'hooks' - re-generates the definitions for the HPM" endif @echo "'help' - outputs this message" -- cgit v1.2.3-70-g09d2