summaryrefslogtreecommitdiff
path: root/bin/extract_git_sha1
blob: 828387016b2c7e4954cf24564805964afd654f39 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/sh
if [ ! -f src/mesa/main/git_sha1.h ]; then
	touch src/mesa/main/git_sha1.h
fi

if [ ! -d .git ]; then
	exit
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.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