summaryrefslogtreecommitdiffstats
path: root/bin/extract_git_sha1
diff options
context:
space:
mode:
Diffstat (limited to 'bin/extract_git_sha1')
-rwxr-xr-xbin/extract_git_sha110
1 files changed, 8 insertions, 2 deletions
diff --git a/bin/extract_git_sha1 b/bin/extract_git_sha1
index e6e6731a36c..5e635d4b74d 100755
--- a/bin/extract_git_sha1
+++ b/bin/extract_git_sha1
@@ -1,10 +1,16 @@
#!/bin/sh
-touch src/mesa/main/git_sha1.h
+if [ ! -f src/mesa/main/git_sha1.h ]; then
+ touch src/mesa/main/git_sha1.h
+fi
+
if which git > /dev/null; then
# Extract the 7-digit "short" SHA1 for the current HEAD, convert
# it to a string, and wrap it in a #define. This is used in
# src/mesa/main/version.c to put the GIT SHA1 in the GL_VERSION string.
git log -n 1 --oneline |\
sed 's/^\([^ ]*\) .*/#define MESA_GIT_SHA1 "git-\1"/' \
- > src/mesa/main/git_sha1.h
+ > src/mesa/main/git_sha1.h.tmp
+ if ! cmp -s src/mesa/main/git_sha1.h.tmp src/mesa/main/git_sha1.h; then
+ mv src/mesa/main/git_sha1.h.tmp src/mesa/main/git_sha1.h
+ fi
fi