diff options
author | Ian Romanick <ian.d.romanick@intel.com> | 2011-03-31 11:42:01 -0700 |
---|---|---|
committer | Ian Romanick <ian.d.romanick@intel.com> | 2011-04-05 11:21:01 -0700 |
commit | de579a16298e29358fec08bd7cfe3e505674705a (patch) | |
tree | c6876be5e7eda7e592f0be3b3e38dd30e82fca80 | |
parent | 0fe34b7bbc9a8e089bbb4d0fe401b09095a571eb (diff) |
mesa: Include GIT SHA1 in GL version string
Reviewed-by: Corbin Simpson <MostAwesomeDude@gmail.com>
Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
Tested-by: Sedat Dilek <sedat.dilek@gmail.com>
-rw-r--r-- | Makefile | 4 | ||||
-rwxr-xr-x | bin/extract_git_sha1 | 10 | ||||
-rw-r--r-- | src/mesa/main/version.c | 7 |
3 files changed, 20 insertions, 1 deletions
@@ -5,7 +5,10 @@ TOP = . SUBDIRS = src +# The git command below generates an empty string when we're not +# building in a GIT tree (i.e., building from a release tarball). default: $(TOP)/configs/current + @$(TOP)/bin/extract_git_sha1 @for dir in $(SUBDIRS) ; do \ if [ -d $$dir ] ; then \ (cd $$dir && $(MAKE)) || exit 1 ; \ @@ -199,6 +202,7 @@ MAIN_FILES = \ $(DIRECTORY)/aclocal.m4 \ $(DIRECTORY)/bin/config.guess \ $(DIRECTORY)/bin/config.sub \ + $(DIRECTORY)/bin/extract_git_sha1 \ $(DIRECTORY)/bin/install-sh \ $(DIRECTORY)/bin/mklib \ $(DIRECTORY)/bin/minstall \ diff --git a/bin/extract_git_sha1 b/bin/extract_git_sha1 new file mode 100755 index 0000000000..e6e6731a36 --- /dev/null +++ b/bin/extract_git_sha1 @@ -0,0 +1,10 @@ +#!/bin/sh +touch src/mesa/main/git_sha1.h +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 +fi diff --git a/src/mesa/main/version.c b/src/mesa/main/version.c index c7a0d69a4f..80fa0c244e 100644 --- a/src/mesa/main/version.c +++ b/src/mesa/main/version.c @@ -25,6 +25,7 @@ #include "imports.h" #include "mtypes.h" #include "version.h" +#include "git_sha1.h" @@ -185,7 +186,11 @@ compute_version(struct gl_context *ctx) ctx->VersionString = (char *) malloc(max); if (ctx->VersionString) { _mesa_snprintf(ctx->VersionString, max, - "%u.%u Mesa " MESA_VERSION_STRING, + "%u.%u Mesa " MESA_VERSION_STRING +#ifdef MESA_GIT_SHA1 + " (" MESA_GIT_SHA1 ")" +#endif + , ctx->VersionMajor, ctx->VersionMinor); } } |