svn revision in uname

Christoph Brinkhaus c.brinkhaus at t-online.de
Sun Feb 7 15:35:19 UTC 2016


On Sun, Feb 07, 2016 at 12:54:36PM +0000, Matthew Seaman wrote:
> On 07/02/2016 12:11, Ian Smith wrote:
> > I've been using svnup for source updates for ages, and for my occasional 
> > use it works fine.  However one thing you don't get is the svn revision 
> > shown in uname, eg % uname -vm
> >  FreeBSD 9.3-STABLE #0: Thu Oct 29 03:18:26 EST 2015 
> >  root at x200.smithi.id.au:/usr/obj/usr/src/sys/GENERIC amd64
> > 
> > I know where to find it:
> > smithi at x200:~ % ll -rt /var/tmp/svnup/
> > total 30400
> > -rw-r--r--  1 root  wheel  3736967 Apr 22  2014 stable.apr
> > -rw-r--r--  1 root  wheel  3738448 Jun 25  2014 stable.jun
> > -rw-r--r--  1 root  wheel  3738347 Jul  6  2014 release
> > -rw-r--r--  1 root  wheel  7926790 Jan 23  2015 ports.first
> > -rw-r--r--  1 root  wheel  7927003 Jan 23  2015 ports
> > -rw-r--r--  1 root  wheel  3750256 Oct 10 16:43 stable
> > 
> > smithi at x200:~ % head -1 /var/tmp/svnup/stable
> > 289106
> > 
> > but I don't know where to poke it so build|install world|kernel find it?
> > 
> > One of the reasons I prefer svnup on this very (64GB) space-constrained 
> > laptop is that it doesn't need svn's extra copy of the repository, but 
> > I'm happy to add a /usr/src/.svn dir with whatever is needed for this.
> > 
> > Hoping the answer is not "the build needs svn installed to get that" :)
> > 
> 
> The place where this is all set up is /usr/src/sys/conf/newvers.sh  The
> logic there is fairly complicated as it supports svn, git, hg and p4
> VCSes.  However, the usual way it works is by running svnversion --
> that's part of the svn port.
> 
> % svnversion /usr/src
> 295073M
> 
> If that fails, it will try running svnliteversion, and then cycle
> through various different ways of extracting a version string from other
> VCSes until it gets a result.

The version svnlite is part of the system and 
does not need to be installed separately.

Here svnliteversion /usr/src works.
> 
> So, if you don't need SVN installed locally, you could create a small
> shell script as /usr/local/bin/svnversion that runs 'head -1
> /var/tmp/svnup/stable'
> 
> 	Cheers,
> 
> 	Matthew

Thank you, Matthew.

Kind regards,
Christoph



More information about the freebsd-questions mailing list