On Wed, Jul 13, 2022 at 09:28:06AM -0600, Simon Glass wrote: > Hi Tom, > > On Tue, 12 Jul 2022 at 15:38, Tom Rini wrote: > > > > On Mon, Jul 11, 2022 at 07:04:04PM -0600, Simon Glass wrote: > > > Bring this tool into buildman, so we don't have to run it separately. The > > > board.cfg file is still produced as part of the build, to save time when > > > doing another build in the same working directory. If it is out of date > > > with respect to the Kconfig, it is updated. > > > > > > Time to regenerate on a recent single-thread machine is 4.6s (1.3s on a > > > 32-thread machine), so we do need some sort of cache if we want buildman > > > to be useful on incremental builds. We could use Python's pickle format > > > but: > > > > > > - it seems useful to allow boards.cfg to be regenerated, at least for a > > > while, in case other tools use it > > > - it is possible to grep the file easily, e.g. to find boards which use > > > a particular SoC (similar to 'buildman -nv ' > > > > While I don't think other tools still use boards.cfg, this will make it > > easier to find out that I'm wrong. Perhaps once the CONFIG to Kconfig > > migration is done we can move to just pickle'ing the data or similar > > since I find the main use of what was in boards.cfg can be figured out > > with some other git grep'ing, and in turn that's mainly for me when > > trying to convert stuff. Thanks for doing this. > > Yes. I'm excited to hear that Kconfig migration might be done - any > forecast as to when? Not yet. I'm auditing CONFIG_SYS_* now, with a notion to move everything that's not really configurable just out of CONFIG namespace as the starting point. That'll drop us down to ~500 to migrate, which feels a bit less daunting. > One thing we could to is provide an option for buildman to spit out > the various fields that go into boards.cfg Right. So I might not have said this before, but one reason I wanted buildman to natively know kconfiglib and have everything was that while we can do a lot of good matching on what to build, it would be amazingly good to be able to say "build every platform with NVME_PCI set" (and if it's not too hard hex/int options with a specific value). -- Tom