On Sat, Sep 13, 2025, at 10:06 AM, Warner Losh wrote: > > > On Sat, Sep 13, 2025 at 9:54 AM Brad Davis <[email protected]> wrote: >> __ >> On Sat, Sep 13, 2025, at 9:40 AM, Warner Losh wrote: >>> >>> >>> On Sat, Sep 13, 2025 at 9:28 AM Brad Davis <[email protected]> wrote: >>>> On Sat, Sep 13, 2025, at 8:57 AM, bob prohaska wrote: >>>> > Lately I've noticed that sometimes while running buildworld a top >>>> > window reports git running also. Up to now, I've surmised that >>>> > this is intentional, with git providing some housekeeping function. >>>> > >>>> > Yesterday a buildworld session was accompanied by a prolonged >>>> > interval of git running also, with a large memory footprint, >>>> > near 1GB. That seems rather excessive. >>>> > >>>> > At the same time, it dawned on me that my recent habit has been >>>> > to run git pull, immediately followed by buildworld. Might it be >>>> > prudent to wait (how long?) to let git finish any housekeeping >>>> > triggered by the pull command? It seems likely that any overlap >>>> > could readily lead to inconsistencies which might account for >>>> > some of the buildworld problems I've been encountering lately. >>>> >>>> This is part of the normal build process and how the output of uname -a >>>> includes bits like this: main-n280188-2024887abc7d-dirty or >>>> main-n280188-2024887abc7d >>>> >>>> To find out of the src tree is pristine or dirty the build process uses >>>> git to find out. >>> >>> Though that's only for the kernel, not for world builds. Right? >> >> It happens for world builds as well.. newvers.sh runs git (used to be >> svnlite) and is called in Makefile.inc1. > > It doesn't need git for this: > > # Set VERSION for CTFMERGE to use via the default CTFFLAGS=-L VERSION. > .for _V in BRANCH REVISION TYPE > .if !defined(_${_V}) > ${_V}!= eval $$(awk '/^${_V}=/{print}' ${SRCTOP}/sys/conf/newvers.sh); echo > $$${_V} > .export _${_V} > .endif > .endfor > > In fact, it's not even running newvers.sh, just using awk to grep out these > variables. Though it should be using newvers.sh -V here (which specifically > doesn't run git).
Ooh, I see, good catch! Regards, Brad Davis
