makefile: Fix recursive makes
authorIlias Apalodimas <ilias.apalodimas@linaro.org>
Wed, 22 Oct 2025 12:23:15 +0000 (15:23 +0300)
committerTom Rini <trini@konsulko.com>
Fri, 24 Oct 2025 19:47:10 +0000 (13:47 -0600)
commit38f40e6de6029686356a1b786087385ae974d354
tree2b77b0708ed891d73c60d516fc7deb41eb3fbafe
parentb10c055d4e1b5153a331a61ef82a5b01b5bb4c45
makefile: Fix recursive makes

Since the Kbuild bump to 5.1 and specifically
commit af1a9935708a ("kbuild: make -r/-R effective in top Makefile for old Make versions")
the recursion rules have changed.

'make O=/output/dir/' as well as './test/py/test.py --bd sandbox --build'
is working fine but anything that recursively called the makefile was
failing e.g 'make tests', 'make qcheck' etc, which calls a bash script
that ends up calling the makefile again.

The reason is that the internal 'sub_make_done' variable of the makefile
was set after the first pass and the output dir was never evaluated
properly.  Reset the variable value if we are executing any of these
tests.

Fixes: af1a9935708a ("kbuild: make -r/-R effective in top Makefile for old Make versions")
Reported-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Test-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Makefile