On 10/6/07, Ulf Jordan <[EMAIL PROTECTED]> wrote: > On Sat, 6 Oct 2007, Robinson Tryon wrote: > > > On 10/5/07, Ward Vandewege <[EMAIL PROTECTED]> wrote: > >> On Sat, Oct 06, 2007 at 12:30:06AM +0200, Uwe Hermann wrote: > >>>> etc.) or at least ask some svn experts whether there is an easier and > >>>> cleaner way to include a revision number? > >>> > >>> Yeah, that would surely be great. Do you know any method or whom to ask? > >>> I browsed the svn code and manuals but didn't find anything better > >>> than $Rev$. > >> > >> Can't we do this with a commit hook that would update the version number > >> (which is in 1 place only) automatically to the SVN revision number? > > > > I was going to suggest that the buildscript pull the current revision > > # out of SVN, but the idea of a commit hook sounds like it could be > > cleaner. Would the hook apply whenever any file is committed to the > > repository, or just to files in the superiotool directory? > > NACK. svn commit hooks should not change the contents of the commit, at > least not according to the svn book (client side caching problems might > occur). > > I've attached a patch that during build time extracts the svn revision > from $Rev$ comments in each source file, and keeps the extracted value up > to date using make. > > Direct application of the patch might give one failure on superiotool.h > (it has the expanded $Rev$ in your working directory), and compilation > failure on superiotool.c, since the new $Rev$'s haven't yet been expanded > (these two issues should not appear when receiving the patch through 'svn > update'). For testing I expanded the $Rev$ by hand to the corresponding > svn revisions, and then it worked like a charme:
What about pulling the version directly out of SVN at build time? Like this: svn info | sed -n 's/.*Revision: \([0-9]*\)/\1/ p' As long as the Makefile lives at the top level of the project, this value should always reflect the latest commit in the current checkout. -- linuxbios mailing list [email protected] http://www.linuxbios.org/mailman/listinfo/linuxbios
