<p>On May 2, 2011 11:08 AM, &quot;Marcin Slusarz&quot; &lt;<a href="mailto:marcin.slusarz@gmail.com">marcin.slusarz@gmail.com</a>&gt; wrote:<br>
&gt;<br>
&gt; Less recompiles...<br>
&gt; ---<br>
&gt;  bin/extract_git_sha1     |   10 ++++++++--<br>
&gt;  src/mesa/main/.gitignore |    1 +<br>
&gt;  2 files changed, 9 insertions(+), 2 deletions(-)<br>
&gt;<br>
&gt; diff --git a/bin/extract_git_sha1 b/bin/extract_git_sha1<br>
&gt; index e6e6731..5e635d4 100755<br>
&gt; --- a/bin/extract_git_sha1<br>
&gt; +++ b/bin/extract_git_sha1<br>
&gt; @@ -1,10 +1,16 @@<br>
&gt;  #!/bin/sh<br>
&gt; -touch src/mesa/main/git_sha1.h<br>
&gt; +if [ ! -f src/mesa/main/git_sha1.h ]; then<br>
&gt; +       touch src/mesa/main/git_sha1.h<br>
&gt; +fi<br>
&gt; +<br>
&gt;  if which git &gt; /dev/null; then<br>
&gt;     # Extract the 7-digit &quot;short&quot; SHA1 for the current HEAD, convert<br>
&gt;     # it to a string, and wrap it in a #define.  This is used in<br>
&gt;     # src/mesa/main/version.c to put the GIT SHA1 in the GL_VERSION string.<br>
&gt;     git log -n 1 --oneline |\<br>
&gt;        sed &#39;s/^\([^ ]*\) .*/#define MESA_GIT_SHA1 &quot;git-\1&quot;/&#39; \<br>
&gt; -       &gt; src/mesa/main/git_sha1.h<br>
&gt; +       &gt; src/mesa/main/git_sha1.h.tmp<br>
&gt; +    if ! cmp -s src/mesa/main/git_sha1.h.tmp src/mesa/main/git_sha1.h; then<br>
&gt; +       mv src/mesa/main/git_sha1.h.tmp src/mesa/main/git_sha1.h<br>
&gt; +    fi<br>
&gt;  fi<br>
&gt; diff --git a/src/mesa/main/.gitignore b/src/mesa/main/.gitignore<br>
&gt; index e48030e..2575f44 100644<br>
&gt; --- a/src/mesa/main/.gitignore<br>
&gt; +++ b/src/mesa/main/.gitignore<br>
&gt; @@ -3,3 +3,4 @@ api_exec_es2.c<br>
&gt;  get_es1.c<br>
&gt;  get_es2.c<br>
&gt;  git_sha1.h<br>
&gt; +git_sha1.h.tmp<br>
&gt; --<br>
&gt; 1.7.4.1</p>
<p>Reviewed-by: Dan Nicholson &lt;<a href="mailto:dbn.lists@gmail.com">dbn.lists@gmail.com</a>&gt;</p>