[Mesa-dev] [PATCH] mesa: don't touch git_sha1.h if sha1 didn't change

Marcin Slusarz marcin.slusarz at gmail.com
Mon May 2 11:04:46 PDT 2011


On Mon, May 02, 2011 at 06:25:31AM -0700, Dan Nicholson wrote:
> On Sun, May 1, 2011 at 2:53 PM, Marcin Slusarz <marcin.slusarz at gmail.com> wrote:
> > Less recompiles...
> 
> Good idea. Couple nits.
> 
> > ---
> >  bin/extract_git_sha1 |    8 ++++++--
> >  1 files changed, 6 insertions(+), 2 deletions(-)
> >
> > diff --git a/bin/extract_git_sha1 b/bin/extract_git_sha1
> > index e6e6731..fc7bf85 100755
> > --- a/bin/extract_git_sha1
> > +++ b/bin/extract_git_sha1
> > @@ -1,10 +1,14 @@
> >  #!/bin/sh
> > -touch src/mesa/main/git_sha1.h
> 
> Instead of moving the touch out to when there's no git, perhaps it
> would be better to just touch the file when it doesn't exist.
> 
> [ -f src/mesa/main/git_sha1.h ] || touch src/mesa/main/git_sha1.h
> 
> That way your later diff command won't complain on stdout that one of
> the files is missing on a fresh checkout.
> 
> >  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 ! diff src/mesa/main/git_sha1.h.tmp src/mesa/main/git_sha1.h >/dev/null; then
> > +       mv src/mesa/main/git_sha1.h.tmp src/mesa/main/git_sha1.h
> > +    fi
> 
> I might suggest using "cmp -s" here since it's more suited to what we
> want: just says if the files are the same without having to figure out
> what's different.
> 
> > +else
> > +    touch src/mesa/main/git_sha1.h
> >  fi
> 
> --

I applied your suggestions. Thanks.
New patch in reponse to this message.

I found one more thing to fix...

Marcin



More information about the mesa-dev mailing list