aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/utils
diff options
context:
space:
mode:
authorLukas Larsson <[email protected]>2013-02-13 16:25:43 +0100
committerLukas Larsson <[email protected]>2013-02-13 16:25:43 +0100
commit7505ceff94dddb325543e32f3b8471a608097dc9 (patch)
tree9453b92c4c8965881f78906e5d59837a009c15f1 /erts/emulator/utils
parent14254702c27e9010f65cab69cd2829b00012d7ff (diff)
parent3e95d5f8e4a348efbb8fb1036da3fa9368c75ae2 (diff)
downloadotp-7505ceff94dddb325543e32f3b8471a608097dc9.tar.gz
otp-7505ceff94dddb325543e32f3b8471a608097dc9.tar.bz2
otp-7505ceff94dddb325543e32f3b8471a608097dc9.zip
Merge branch 'lukas/erts/add_sha_to_shell_title/OTP-10838'
* lukas/erts/add_sha_to_shell_title/OTP-10838: Include git sha in prompt if available
Diffstat (limited to 'erts/emulator/utils')
-rwxr-xr-xerts/emulator/utils/gen_git_version40
1 files changed, 40 insertions, 0 deletions
diff --git a/erts/emulator/utils/gen_git_version b/erts/emulator/utils/gen_git_version
new file mode 100755
index 0000000000..d93a97cbbb
--- /dev/null
+++ b/erts/emulator/utils/gen_git_version
@@ -0,0 +1,40 @@
+#!/bin/sh
+
+OUTPUT_FILE=$1
+
+if command -v git 2>&1 >/dev/null &&
+ test -d $ERL_TOP/.git -o -f $ERL_TOP/.git
+then
+ VSN=`git describe --match "OTP_R[0-9][0-9][A-B]*" HEAD`
+ case "$VSN" in
+ OTP_R*-g*)
+ VSN=`echo $VSN | sed -e 's/.*-g\\(.*\\)/\\1/g'` ;;
+ *) VSN="na" ;;
+ esac
+else
+ VSN="na"
+fi
+
+
+# Only update the file if there has been a change to
+# the version number.
+if test -r $OUTPUT_FILE
+then
+ VC=`sed -n -e 's/^.*"\\\\"\\(.*\\)\\\\"".*/\\1/p' < $OUTPUT_FILE`
+else
+ VC=unset
+fi
+echo "VSN = $VSN"
+echo "VC = $VC"
+if test "$VSN" != "$VC"
+then
+ echo "# Automatically generated by $0 - DO NOT EDIT." > $OUTPUT_FILE
+ if test "$VSN" = "na"
+ then
+ echo "# GIT_VSN=-DERLANG_GIT_VERSION=\"\\\"$VSN\\\"\"" >> $OUTPUT_FILE
+ else
+ echo "GIT_VSN=-DERLANG_GIT_VERSION=\"\\\"$VSN\\\"\"" >> $OUTPUT_FILE
+ fi
+ exit 0
+fi
+exit 1 \ No newline at end of file