As pointed out in [1], compilation failed if the prepare make target was not called before compiling the imx-usb-loader, which caused the generated file not to exist when building for the sandbox target and broke the build. After a discussion on the original thread, a different approach has been pursued by simply adding utsrelease.h as a dependency to scripts. [1] https://lore.barebox.org/barebox/20230525181320.2277320-1-ahmad@xxxxxx/ Fixes: c1b50061f4b3 ("imx-usb-loader: add commandline option for displaying version number") Reported-by: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> Signed-off-by: Johannes Zink <j.zink@xxxxxxxxxxxxxx> --- --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 471bbc2679c8..711cba7bed29 100644 --- a/Makefile +++ b/Makefile @@ -972,7 +972,7 @@ include/config/kernel.release: FORCE # Carefully list dependencies so we do not try to build scripts twice # in parallel PHONY += scripts -scripts: scripts_basic +scripts: scripts_basic include/generated/utsrelease.h $(Q)$(MAKE) $(build)=$(@) # Things we need to do before we recursively start building the kernel -- 2.39.2