aboutsummaryrefslogtreecommitdiff
path: root/src/mkreleasehdr.sh
diff options
context:
space:
mode:
authortlatorre <tlatorre@uchicago.edu>2018-09-20 12:30:48 -0500
committertlatorre <tlatorre@uchicago.edu>2018-09-20 12:30:48 -0500
commit3e3b1fd21437a08554f59086cd201dfc48c3ffed (patch)
tree5415c9c9fbdbc375b18daeeae8d389430c431725 /src/mkreleasehdr.sh
parent92f48c17da6b8ce33a54d662a46b766ec1cc18c4 (diff)
downloadsddm-3e3b1fd21437a08554f59086cd201dfc48c3ffed.tar.gz
sddm-3e3b1fd21437a08554f59086cd201dfc48c3ffed.tar.bz2
sddm-3e3b1fd21437a08554f59086cd201dfc48c3ffed.zip
add git SHA1 hash to output file
Diffstat (limited to 'src/mkreleasehdr.sh')
-rwxr-xr-xsrc/mkreleasehdr.sh11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/mkreleasehdr.sh b/src/mkreleasehdr.sh
new file mode 100755
index 0000000..85f32b2
--- /dev/null
+++ b/src/mkreleasehdr.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+GIT_SHA1=`(git show-ref --head --hash=8 2> /dev/null || echo 00000000) | head -n1`
+GIT_DIRTY=`git diff --no-ext-diff 2> /dev/null | wc -l`
+BUILD_ID=`uname -n`"-"`date +%s`
+test -f release.h || touch release.h
+(cat release.h | grep SHA1 | grep $GIT_SHA1) && \
+(cat release.h | grep DIRTY | grep $GIT_DIRTY) && exit 0 # Already up-to-date
+echo "#define GIT_SHA1 \"$GIT_SHA1\"" > release.h
+echo "#define GIT_DIRTY \"$GIT_DIRTY\"" >> release.h
+echo "#define BUILD_ID \"$BUILD_ID\"" >> release.h
+touch release.c # Force recompile of release.c