kbuild: Use git in scripts/setlocalversion
authorRene Scharfe <rene.scharfe@lsrfire.ath.cx>
Wed, 4 Jan 2006 19:42:03 +0000 (20:42 +0100)
committerSam Ravnborg <sam@mars.ravnborg.org>
Fri, 6 Jan 2006 19:46:21 +0000 (20:46 +0100)
commit117a93db1dcd6ed61336b27e4e2938f791c1841b
treeb869ef55f3048f125c06e70429f04c38f31bf578
parent253dfa6e465c054a73bd3b13af51c34c9d8d233d
kbuild: Use git in scripts/setlocalversion

Currently scripts/setlocalversion is a Perl script that tries to figure
out the current git commit ID of a repo without using git.  It also
imports Digest::MD5 without using it and generally is too big for the
small task it does. :]  And it always reports a git ID, even when the
HEAD is tagged -- this is a bug.

This patch replaces it with a Bourne Shell script that uses git
commands to do the same.  I can't come up with a scenario where someone
would use a git repo and refuse to install git core at the same time,
so I think it's reasonable to assume git is available.

The new script also reports uncommitted changes by adding -git_dirty to
the version string.  Obviously you can't see from that _what_ has been
changed from the last commit, so it's more of a reminder that you
forgot to commit something.

The script is easily extensible: simply add a check for Mercurial (or
whatever) below the git check.

Note: the script doesn't print a newline char anymore.  That's only
because it was easier to implement it that way, not a feature (or bug).
'make kernelrelease' doesn't care.

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Acked-by: Ryan Anderson <ryan@michonline.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
scripts/setlocalversion