]> code.citadel.org Git - citadel.git/blobdiff - citadel/scripts/mk_svn_revision.sh
Meow meow! Applied patches sent by LadySerenaKitty for improved FreeBSD compatibility.
[citadel.git] / citadel / scripts / mk_svn_revision.sh
index 46de27e2f3cc6ba1716c07b1e7079db9f836bc60..9a68d27bdcad44fe08ab4c39e8c421e9341af427 100755 (executable)
@@ -6,28 +6,40 @@
 ECHO=/usr/bin/printf
 
 
+SCRIPT_DIR=`dirname $0`
+SRC_DIR=`dirname $SCRIPT_DIR`
 CUR_DIR=`pwd`
 C_FILE="$CUR_DIR/svn_revision.c"
 H_FILE="$CUR_DIR/svn_revision.h"
 
-
 # determine if this code base came from subversion.
-if test -d .svn  ; then
+if test -d $SRC_DIR/.svn  ; then
        echo "have subversion repository"
        SVNVERSION=`which svnversion`
        if test -x $SVNVERSION  ; then
                echo "have svnversion at $SVNVERSION"
                BUILD=`svnversion -n .`
-               echo "This code base revision $BUILD"
+               echo "This code base svn-revision: $BUILD"
                CAN_BUILD_SVN_REVISION="yes"
        fi
+else 
+    if test -d $SRC_DIR/../.git  ; then
+       echo "have Git repository."
+       BUILD=`/usr/bin/env git log -1 --pretty=%h . `
+       echo "This code base git-revision: $BUILD"
+       CAN_BUILD_SVN_REVISION="yes"
+    else
+       if test -f $C_FILE; then
+           exit
+       fi
+    fi
 fi
 
 if [ "$CAN_BUILD_SVN_REVISION" = "yes" ] ; then
 
 cat <<EOF > $C_FILE
 /*
- * Subversion revision functions
+ * Subversion / GIT revision functions
  *
  * Autogenerated at make/release time
  *
@@ -46,7 +58,7 @@ elif test ! -f $C_FILE  ; then
 
 cat <<EOF > $C_FILE
 /*
- * Subversion revision functions
+ * Subversion / GIT revision functions
  *
  * Autogenerated at make time
  *
@@ -58,7 +70,7 @@ cat <<EOF > $C_FILE
  
 const char *svn_revision (void)
 {
-       const char *SVN_Version = "**UNKNOWN** Built from source without svn and no $C_FILE accompanying";
+       const char *SVN_Version = "(unknown)";
        return SVN_Version;
 }
 EOF