
Hi.
On Fri, 1 Aug 2014 12:48:44 +0100 Simon Glass sjg@chromium.org wrote:
Hi,
At present, as a work-around, we generate boards.cfg if needed. This is quite a slow process since each board config must be fully processed.
What can we do to improve this? We only need a small number of options in order to start buildman - things like CONFIG_SYS_ARCH, CONFIG_SYS_CPU, etc.
I wonder if we could run a script which adds these to the defconfigs for each board and then apply a patch to mainline? Would that require removing the options from the config.h files? Or could we do that later as a separate step?
We cannot add CONFIG_SYS_ARCH, CONFIG_SYS_CPU, etc. to defconfigs because they are not user-editable options. (They must be always selected in correct combination.)
This is already discussed when I posted the RFC version of the Kconfig series.
We can easily do
[1] Choose boards by arch
Just grep CONFIG_ARM=y, CONFIG_MIPS=y, CONFIG_SANDBOX=y in defconfigs
[2] Choose boards by board name
It is the file name of defconfigs
My question is, do we really need to choose by CPU, Vendor, SoC ? I know they are useful. For ex. nvidia developers probably want to build only Tegra boards.
One possible idea I come up with is to have 'board group' in .buildman file so people can build only boards they are interested in.
Something like this:
---------->8---------------
[board-alisa] tegra20: harmony seaboard ventana tegra30: beaver tegra114: dalmore tegra124: venice2 tegra: tegra20 tegra30 tegra114 tegra124
-----------8<---------------
With the settings above,
"tools/buildman/buildman tegra20" is the same as "tools/buildman/buildman harmony seaboard ventana"
"tools/buildman/buildman tegra" is the same as "tools/buildman/buildman tegra20 tegra30 tegra114 tegra124" and also the same as "tools/buildman/buildman harmony seaboard ventana beaver dalmore venice2"
We have to setup ~/.buildman at the first run. (and modify it when adding new boards)
Better to provide a tool to auto-generate .buildman file?
Best Regards Masahiro Yamada