fixed file permissions (autogen.sh && src/versions.sh)
[NeonServV5.git] / src / version.sh
old mode 100644 (file)
new mode 100755 (executable)
index e89f996..a7c712f
@@ -19,23 +19,20 @@ else \
 
 codelines=`find . -type f -regex '\./.*\.h' -or -regex '\./.*\.c' |xargs cat|wc -l`
 
-svn_revision=`svn info | grep Revision | grep -o -E '[0-9]+'`
-if test "x$svn_revision" = "x" ; then
-  svn_revision=`git log -n 1 --pretty="format:%h"`
-  if test "x$svn_revision" = "x" ; then
-    svn_revision="0"
-  else
-    git_commitcount=`git rev-list --all --no-merges | wc -l | sed "s/[ \t]//g"`
-    svn_revision="git-$git_commitcount-$svn_revision"
-  fi
+
+git_revision=`git rev-list -n 1 --pretty="format:%h" --header master | grep '^[0-9a-f]*$'`
+if test "x$git_revision" = "x" ; then
+  git_revision="0"
+  git_commitcount="0"
 else
-  svn_revision="svn-$svn_revision"
+  git_commitcount=`git rev-list --oneline --header master | wc -l | sed "s/[ \t]//g"`
+  git_revision="git-$git_commitcount-$git_revision"
 fi
 
 
 /bin/cat > version.c <<!SUB!THIS!
-/* version.c - NeonServ v5.1
- * Copyright (C) 2011  Philipp Kreil (pk910)
+/* version.c - NeonServ v5.5
+ * Copyright (C) 2011-2012  Philipp Kreil (pk910)
  * 
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -56,8 +53,30 @@ fi
 
 const char *compilation = "$compilation";
 const char *creation = "$creation";
-const char *revision = "$svn_revision";
+const char *revision = "$git_revision";
 const char *codelines = "$codelines";
 
+const int patchlevel = ($git_commitcount ? ($git_commitcount - VERSION_PATCHLEVEL) : 0);
+
+const char *get_compilation() {
+    return compilation;
+}
+
+const char *get_creation() {
+    return creation;
+}
+
+const char *get_revision() {
+    return revision;
+}
+
+const char *get_codelines() {
+    return codelines;
+}
+
+const int get_patchlevel() {
+    return patchlevel;
+}
+
 !SUB!THIS!