(svn r10051) -Add: git "version" detection so we've got at least some indication what version we're playing when using git ;)
authorrubidium
Thu, 07 Jun 2007 00:25:49 +0000
changeset 7308 9c2affec007a
parent 7307 ac1545fc0a87
child 7309 bc9f31c4ab97
(svn r10051) -Add: git "version" detection so we've got at least some indication what version we're playing when using git ;)
Makefile.src.in
config.lib
--- a/Makefile.src.in	Thu Jun 07 00:15:00 2007 +0000
+++ b/Makefile.src.in	Thu Jun 07 00:25:49 2007 +0000
@@ -96,8 +96,15 @@
 REV_MODIFIED := $(shell svnversion $(SRC_DIR) | sed -n 's/.*\(M\).*/\1/p' )
 # Find the revision like: rXXXX-branch
 REV := $(shell LC_ALL=C svn info $(SRC_DIR) | $(AWK) '/^URL:.*branch/ { split($$2, a, "/"); BRANCH="-"a[5] } /^Last Changed Rev:/ { REV="r"$$4"$(REV_MODIFIED)" } END { print REV BRANCH }')
+else
+# Are we a git dir?
+ifeq ($(shell if test -d $(SRC_DIR)/../.git; then echo 1; fi), 1)
+# Find the revision like: rXXXXM
+REV := g$(shell if head=`git rev-parse --verify HEAD 2>/dev/null`; then echo "$$head" | cut -c1-8; fi)$(shell if git diff-index HEAD | read dummy; then echo M; fi)$(shell git branch|grep '*'|sed 's/\* /-/;s/^-master$$//')
 endif
 endif
+endif
+
 # Make sure we have something in REV
 ifeq ($(REV),)
 REV := norev000
--- a/config.lib	Thu Jun 07 00:15:00 2007 +0000
+++ b/config.lib	Thu Jun 07 00:25:49 2007 +0000
@@ -633,10 +633,23 @@
 			revision="`cat $ROOT_DIR/version`"
 
 			log 1 "checking revision... $revision"
+		elif [ -d "$ROOT_DIR/.svn" ] && [ -n "`svn help`" ]; then
+			revision=""
+			log 1 "checking revision... svn detection"
+		elif [ -d "$ROOT_DIR/.git" ] && [ -n "`git help`" ]; then
+			revision=""
+			log 1 "checking revision... git detection"
 		else
 			revision=""
+			log 1 "checking revision... no detection"
+			log 1 "WARNING: there is no means to determine the version."
+			log 1 "WARNING: please use a subversion or git checkout of OpenTTD."
+			log 1 "WARNING: this version will be allowed by all game servers,"
+			log 1 "WARNING: but you will be kicked from all incompatible"
+			log 1 "WARNING: servers as you will desync."
+			log 1 "WARNING: USE WITH CAUTION!"
 
-			log 1 "checking revision... svn detection"
+			sleep 5
 		fi
 	fi
 }