From d2cdee5b25477a55a00fd28158e2c5a1cb6584c4 Mon Sep 17 00:00:00 2001 From: Torsten Rasmussen Date: Thu, 25 Nov 2021 12:23:34 +0100 Subject: [PATCH] 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 --- CMakeLists.txt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 4b69bc5964..22e96eca9a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1479,12 +1479,14 @@ endif() # 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)