> I build CURRENT on two technically similar systems on a almost daily basis. 
> Therefore, it
> was a great relief having WITH_META_MODE=yes set in /etc/src-env.conf for 
> incremental
> builds. To make my understanding of this clear (just in case I'm wrong): 
> setting
> WITH_META_MODE builds only portions that does not need to be build in the 
> make context.

I'm not sure I parsed that correctly, so let me just say;
With MK_META_MODE=yes, bmake should be put into meta mode.

This simply means that most targets get a .meta file, that records the
expanded command line, any command output and a syscall trace.
These can be very useful for debugging.

More important; on an update build bmake can use them to make targets
out-of-date that the normal rules miss.
Any change to the expanded command line, makes the target out-of-date.
Any change to any file read or executed makes the target out-of-date.
> Well, the reason writing this email is: on one system, I run almost every 
> reboot into a
> "full build" and this puzzles me a bit. The long-lasting and time exhausting 
> builds are

You can add -dM to your build flags to have meta_oodate() - the function
that does the above, explain why it decided the target is out-of-date.
The results can be enlightening.

Note, if a target rebuilds without -dM saying why - then the normal make
rules decided it was out-of-date.

> within the LLVM/CLANG tree. They consume a lot of time. The box in
> question does have a

Yes, building clang takes a while...

> Well, having said this, I need to mention that both systems use almost
> identical /etc/src.conf setting - except the order of appearance of
> the WITH_ tags.

That should not matter, bsd.mkopt.mk processes them in a specified

> The problem: to make my point clear: the "weak" box starts compiling almost 
> everytime now
> the LLVM/CLANG tree while the XEON box does not. This is spooky.

Add -dM, and see if that tells you why.
Also confirm that filemon is getting loaded after each reboot.
If that comes and goes, that could cause the behavior you see.

> I think there is something missing an I'd like to ask what is the suggested 
> way to
> initially restart a full build to ensure that WITH_META_MODE gets initialised 
> correctly.

I think Bryan has set that up so that it should take care of itself
pretty well - even toggling bewteen non-meta and meta builds should
DTRT - which is why it matters if filemon was used that it is there for
next build.

> Well, I'm not a developer, so please be patient with my naive report.

No problem.  Adding -dM to your build (will add a fair bit of output),
will hopefully tell you what's up.

>From what you describe, I'd not be surprised if you see some
"a build command has changed" and it only takes a few to trigger a
cascade of targets out-of-date.


freebsd-current@freebsd.org mailing list
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

Reply via email to