[PATCH] newvers.sh

M. Warner Losh imp at bsdimp.com
Tue Mar 16 01:01:17 UTC 2010


In message: <20100316002939.GA36963 at dragon.NUXI.org>
            "David O'Brien" <obrien at freebsd.org> writes:
: On Mon, Mar 15, 2010 at 08:44:26AM -0600, M. Warner Losh wrote:
: > In message: <20100315142806.GA5786 at dragon.NUXI.org>
: >             "David O'Brien" <obrien at FreeBSD.org> writes:
: > : On Sat, Mar 13, 2010 at 09:13:03PM -0700, M. Warner Losh wrote:
: > : > In message: <20100312171206.GA31761 at dragon.NUXI.org>
: > : >             "David O'Brien" <obrien at freebsd.org> writes:
: > : > : * Simplify SRCDIR calculation by directly finding the kernel sources
: > : > :   based directly on one of them.
: > : > : Reviewed by: dhw
: > : > :   This change does not increase the kernel build time.  It also continues
: > : > :   to restrict the revision to just the kernel sources, and not the whole
: > : > :   tree.
: > : > : Timing tests by: dhw
: > : > 
: > : > <patch omitted>
: > : > 
: > : > I have a better simplification, I think, that works for me for each of
: > : > the tests that I've done (both traditional and buildkernel builds).
: > : 
: > : I also have other simplifications.  But want to do this in stages,
: > : least there be some corner case or misunderstanding by someone.
: > 
: > Normally this is a sensible process.  However, my patches change how
: > we guess where sys is, and as such, I think we should go directly
: > there and work out the corner cases and such there.
: 
: Well that's what I was trying to do with the patch I sent you in
: Message-ID: <20100308010125.GA6387 at dragon.NUXI.org> on 7-March-2010.
: There you didn't care for that approach and would not give details
: as to the claims you made.

I saw your patch and thought this one would be better and simplify
newvers.sh.  I saw nothing wrong, per se, with the patch.  Instead, I
saw an opportunity to refine it and make the resulting newvers.sh
simpler by using values already computed by the build system.

: I will reply in another email the issues with your patch.

I welcome constructive criticism of the patch.

: > : I would prefer to do this in stages so things aren't misunderstood.
: > : This patch is one of the key parts that shows I am not making the
: > : 'svnversion' run take longer, and that it does not cover more of
: > : the tree than before.
: > 
: > That's exactly what my patch does by passing in SYSDIR directly.  Why
: > guess and then replace it with a different guess.
: 
: Guess???  'newvers.sh' is not going to be within the kernel sources
: tree??  Are you allowing for the person that did a 'mv sys/conf/newvers.sh'
: to elsewhere?  Considering you have "sh $S/conf/newvers.sh", I don't see
: where you are.  Is "$0" confusing you?

The kernel source tree is inferred from $0, yes.  My method passes it
in directly, and makes newvers.sh shell variable usage more uniform
with the rest of the kernel.  It also eliminated a number of lines
from newvers.sh by using the value the kernel build process already
had cached.  The elimination of duplicated computation is why I think
this is a better approach.

Warner


More information about the freebsd-current mailing list