kbuild: add svn revision information to setlocalversion follow git and mercurial style, include uncommitted changes detect Cc: Frans Pop <elendil@planet.nl> Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
diff --git a/scripts/setlocalversion b/scripts/setlocalversion old mode 100644 new mode 100755 index 52f032e..1c1bdaf --- a/scripts/setlocalversion +++ b/scripts/setlocalversion
@@ -45,3 +45,19 @@ # All done with mercurial exit fi + +# Check for svn and a svn repo. +if rev=`svn info 2>/dev/null | grep '^Revision'`; then + rev=`echo $rev | awk '{print $NF}'` + changes=`svn status 2>/dev/null | grep '^[AMD]' | wc -l` + + # Are there uncommitted changes? + if [ $changes != 0 ]; then + printf -- '-svn%s%s%s' "$rev" -dirty "$changes" + else + printf -- '-svn%s' "$rev" + fi + + # All done with svn + exit +fi