
On Wed, Aug 23, 2023 at 05:57:13PM +0200, Heinrich Schuchardt wrote:
On 23.08.23 17:30, Simon Glass wrote:
Hi,
Up until 2023.04 it has been possible to build all the defconfigs but with 2023.07 that changed. Tom mentioned this to me recently.
Could you, please, explain why there are defconfig that can't be built. The CI should have thrown an error in this case.
Why don't we delete defconfigs that don't build?
What Simon is noting is that all of the defconfigs in configs/ are a subset of all of the valid configurations of boards.
Up until 2023.04 we can enumerate all the board configs that can be built. We can build any of them using a single name and a single defconfig. The boards.cfg file which buildman creates contains a full list of things that can be built.
From 2023.07 this changes and we now have random .config files sprinkled about the place. I say random because they are not connected to anything. For example, here is board/ti/am62x/MAINTAINERS:
AM62x BOARD M: Dave Gerlach d-gerlach@ti.com M: Tom Rini trini@konsulko.com S: Maintained F: board/ti/am62x/ F: include/configs/am62x_evm.h F: configs/am62x_evm_r5_defconfig F: configs/am62x_evm_a53_defconfig
BEAGLEPLAY BOARD M: Nishanth Menon nm@ti.com M: Robert Nelson robertcnelson@gmail.com M: Tom Rini trini@konsulko.com S: Maintained N: beagleplay
In most cases the MAINTAINERS file tells us about each board and until [1] I had assumed that was the case. With that patch reverted, these are the only 'orphaned' MAINTAINERS entries (buildman --maintainer-check):
WARNING: orphaned defconfig in board/armltd/vexpress64/MAINTAINERS ending at line 8 WARNING: orphaned defconfig in board/google/veyron/MAINTAINERS ending at line 44 WARNING: orphaned defconfig in board/mikrotik/crs3xx-98dx3236/MAINTAINERS ending at line 7 WARNING: orphaned defconfig in board/st/common/MAINTAINERS ending at line 6 WARNING: orphaned defconfig in board/ti/am62x/MAINTAINERS ending at line 15
Why should we care about the maintainer status when building a defconfig?
We care, for the currently disabled CI check, that all boards have a listed maintainer. This is disabled as it was broken by commit e8da1da82f1e ("buildman: Handle the MAINTAINERS 'N' tag") but only recently noticed.