cmake: cleanup all intermediate build files. Fixes: #40643 The intermediate build files produced by the build system may be very large. The last pre-built image has been removed when `CONFIG_CLEANUP_INTERMEDIATE_FILES=y` but when the gen_handles.py call was moved from the last pre-built image to the first image, the first image increased in size. But first image was never cleaned after build. This commit updates the behaviour so that all intermediate images are removed when `CONFIG_CLEANUP_INTERMEDIATE_FILES=y` and not only the final image. Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
diff --git a/CMakeLists.txt b/CMakeLists.txt index 4b69bc5..22e96ec 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt
@@ -1479,12 +1479,14 @@ # Cleanup intermediate files if(CONFIG_CLEANUP_INTERMEDIATE_FILES) + foreach(index RANGE ${ZEPHYR_CURRENT_LINKER_PASS}) + # Those files can be very large in some cases, delete them as we do not need them. list(APPEND post_build_commands COMMAND - # This file can be very large in some cases, delete it as we do not need it. - ${CMAKE_COMMAND} -E remove ${ZEPHYR_LINK_STAGE_EXECUTABLE}.elf + ${CMAKE_COMMAND} -E remove zephyr_pre${index}.elf ) + endforeach() endif() if(CONFIG_BUILD_OUTPUT_S19)