Page MenuHomeFreeBSD

tools/build/make.py: Keep bootstrapped bmake binary up-to-date
ClosedPublic

Authored by jrtc27 on Aug 22 2023, 5:56 PM.
Tags
None
Referenced Files
Unknown Object (File)
Apr 20 2024, 1:22 PM
Unknown Object (File)
Mar 18 2024, 4:05 AM
Unknown Object (File)
Mar 15 2024, 8:26 PM
Unknown Object (File)
Mar 15 2024, 8:24 PM
Unknown Object (File)
Mar 15 2024, 8:24 PM
Unknown Object (File)
Mar 15 2024, 8:13 PM
Unknown Object (File)
Jan 9 2024, 12:43 PM
Unknown Object (File)
Dec 21 2023, 12:05 AM
Subscribers

Details

Summary

We currently assume that any existing bootstrapped bmake binary will
work, but this means it never gets updated as contrib/bmake is, and
similarly we won't rebuild it as and when the configure arguments given
to boot-strap change. Whilst the former isn't necessarily a huge problem
given WANT_MAKE_VERSION rarely gets bumped in Makefile, having fewer
variables is a good thing, and so it's easiest if we just always keep it
up-to-date rather than trying to do something similar to what's already
in Makefile (which may or may not be accurate, given updating FreeBSD
gives you an updated bmake, but nothing does so for our bootstrapped
bmake on non-FreeBSD). The latter is more problematic, though, and the
next commit will be changing this configuration.

We thus now add in two checks. The first is to compare MAKE_VERSION
against _MAKE_VERSION from contrib/bmake/VERSION. The second is to
record at bootstrap time the exact configuration used, and compare that
against what we would bootstrap with.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

sjg added inline comments.
tools/build/make.py
95

Add -r and you don't need to worry about what sys.mk might do

This revision is now accepted and ready to land.Aug 22 2023, 11:06 PM

Use -r rather tha MK_AUTO_OBJ=no

This revision now requires review to proceed.Aug 22 2023, 11:26 PM
This revision is now accepted and ready to land.Aug 23 2023, 12:20 AM