
On Wed, 9 Jan 2019 at 00:32, Masahiro Yamada yamada.masahiro@socionext.com wrote:
Multiple people have reported intermittent build failure in parallel building.
Kever Yang reported this issue some time ago [1], but I could not get enough clue at that time.
This time, Richard Purdie provided a complete build log [2], which was very helpful for me to root-cause it.
The cause of the problem is commit 0d982c585330 ("Makefile: add dependencies to regenerate u-boot.cfg when lost").
That commit added the 'cfg' as the prerequisite of the 'all' target, so the parallel build tries to run it simultaneously, then regenerates a symlink while building objects.
When u-boot.cfg is accidentally lost, lets' rebuild it before descending into any subdirectories.
Also, what is annoying is u-boot.cfg is currently regenerated every time since it depends on FORCE. We can get rid of all the prerequisites of u-boot.cfg because u-boot.cfg is rebuilt anyway as the byproduct of auto.conf when a user updates the .config file.
[1] https://lists.denx.de/pipermail/u-boot/2018-June/330341.html [2] https://autobuilder.yoctoproject.org/typhoon/#/builders/65/builds/160/steps/...
Fixes: 0d982c585330 ("Makefile: add dependencies to regenerate u-boot.cfg when lost") Reported-by: Kever Yang kever.yang@rock-chips.com Reported-by: Richard Purdie richard.purdie@linuxfoundation.org Signed-off-by: Masahiro Yamada yamada.masahiro@socionext.com
Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
Reviewed-by: Simon Glass sjg@chromium.org