aboutsummaryrefslogtreecommitdiff
path: root/utils/GetSourceVersion
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2010-01-21 16:09:59 +0000
committerDaniel Dunbar <daniel@zuster.org>2010-01-21 16:09:59 +0000
commite40eb09e5e983b09947ab0191584b219ee33dc2e (patch)
tree8505e0ea9a19a4038055c081e40a0cb5d919e55a /utils/GetSourceVersion
parent629bff692ae96dea517dc854e27b57ee6c8729ef (diff)
Add a simple script for getting a version tag from a svn/git-svn/git
repository. Feel free to add support for your favorite VCS. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94077 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/GetSourceVersion')
-rwxr-xr-xutils/GetSourceVersion27
1 files changed, 27 insertions, 0 deletions
diff --git a/utils/GetSourceVersion b/utils/GetSourceVersion
new file mode 100755
index 0000000000..63cfe0f499
--- /dev/null
+++ b/utils/GetSourceVersion
@@ -0,0 +1,27 @@
+#!/bin/sh
+
+function usage() {
+ echo "usage: $0 <source root>"
+ echo " Prints the source control revision of the given source directory,"
+ echo " the exact format of the revision string depends on the source "
+ echo " control system. If the source control system isn't known, the output"
+ echo " is empty and the exit code is 1."
+ exit 1
+}
+
+if [ $# != 1 ] || [ ! -d $1 ]; then
+ usage;
+fi
+
+cd $1
+if [ -d .svn ]; then
+ svnversion
+elif [ -d .git/svn ]; then
+ git svn info | grep 'Revision:' | cut -d: -f2-
+elif [ -d .git ]; then
+ git log -1 --pretty=format:%H
+else
+ exit 1;
+fi
+
+exit 0