On 06/01/16 15:55, Paolo Bonzini wrote:
> 
> 
> On 01/06/2016 13:13, Laszlo Ersek wrote:
>> On 06/01/16 12:40, Gerd Hoffmann wrote:
>>>   Hi,
>>>
>>>> +                          git describe 2>/dev/null | tr -d '\n'; \
>>>> +                          if ! git diff-index --quiet HEAD &>/dev/null; 
>>>> then \
>>>> +                                  printf -- '-dirty'; \
>>>> +                          fi \
>>>
>>> /me suggests "git describe --dirty --match 'v*'"
>>>
>>> Saves the extra effort to check for a dirty tree manually.
>>
>> We couldn't convince ourselves that support for "--dirty" is ubiquitous;
>> please see the sub-thread rooted at
>> <http://thread.gmane.org/gmane.comp.emulators.qemu/414824/focus=414828>.
>>
>>> Also greatly reduces the chance non-release tags are matched, so I don't
>>> get results like "pull-vga-20160523-1-236-g9fd5eb7".
>>
>> Since what version is "--match" supported? ;)
> 
> git's own version history says 1.5.5.
> 
> Another small point is that some people put the whole home directory in
> git, so I would test for $(SRC_PATH)/.git instead of using "git
> status".  And no-git is unnecessary if the git part is included in
> parentheses.  This gives:
> 
> diff --git a/Makefile b/Makefile
> index a4d7da0..412c2b8 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -173,16 +173,16 @@ qemu-version.h: FORCE
>               if test -n "$(PKGVERSION)"; then \
>                       printf '"$(PKGVERSION)"\n'; \
>               else \
> -                     printf '" ('; \
> -                     if ! git status &>/dev/null; then \
> -                             printf "no-git"; \
> -                     else \
> -                             git describe 2>/dev/null | tr -d '\n'; \
> +                     if test -d .git; then \
> +                             printf '" ('; \
> +                             git describe --match 'v*' 2>/dev/null | tr -d 
> '\n'; \
>                               if ! git diff-index --quiet HEAD &>/dev/null; 
> then \
>                                       printf -- '-dirty'; \
> -                             fi \
> +                             fi; \
> +                             printf ')"\n'; \
> +                     else \
> +                             printf '""\n'; \
>                       fi; \
> -                     printf ')"\n'; \
>               fi) > $@.tmp)
>       $(call quiet-command, cmp --quiet $@ $@.tmp || mv $@.tmp $@)
>  
> 
> 
> Looks good?

It does to me, yes.

Thanks!
Laszlo


Reply via email to