Similar to UDPATING and handbook changes, treat Makefile the same.
Details
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
Lint Passed - Unit
No Test Coverage - Build Status
Buildable 47692 Build 44579: arc lint + arc unit
Event Timeline
Thanks! This looks good but please add a note about bootstrapping etcupdate. I always forget about etcupdate extract on new development machines.
A brief mention of 'remember to bootstrap etcupdate if necessary' before make buildworld would go a long way!
(It should go *before* make buildworld because etcupdate extract needs to be done with the source tree of the *running* system. I've been bitten multiple times by "oh rats; git checkout freebsd/release/XXX; etcupdate extract; git checkout main; make installworld and finding that installworld fails because Git changed timestamps.)
Note that you don't need to bootstrap on machines installed from a release since about 9.0. The release media already bootstraps etcupdate so bootstrapping should mostly not be a thing on modern installs.
I'm from the opinion to keep this instruction as simple as possible.
The handbook has some extra steps for switching from mergemaster to etcupdate where an "etcupdate extract" is required.
As @jhb pointed out, bootstrapping should not be required for any recent release.
I would like to push as is. If we would add an extra note, I think UPDATING is more appropriate location then Makefile to add these edge cases.
Thoughts?
@jhb: that's odd ... etcupdate -p failed for me last week after building main on 13.1 as described in my earlier comment. Perhaps I messed something else up. I'll try to reproduce and narrow it down.
I agree with @driesm about keeping this simple. Since it looks like my problem is likely unrelated, I'm good with this being pushed as-is.