build: use kconfig to select generated artifacts
Not all boards require the various binary formats zephyr generates. So
be selective based on the arch, SoC or board and only geenrate the
binaries actually needed.
Fixes #5009
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 0fbf98b..633b1b2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -667,16 +667,6 @@
set(post_build_commands "")
-# TODO: Write a KConfig for these options instead
-set(CONFIG_CHECK_LINK_MAP 1)
-
-set(CONFIG_BUILD_OUTPUT_HEX 1)
-set(CONFIG_BUILD_OUTPUT_BIN 1)
-set(CONFIG_BUILD_OUTPUT_S19 1)
-set(CONFIG_BUILD_OUTPUT_DISASSEMBLY 1)
-set(CONFIG_BUILD_OUTPUT_STAT 1)
-set(CONFIG_BUILD_OUTPUT_STRIPPED 1)
-
list_append_ifdef(CONFIG_CHECK_LINK_MAP
post_build_commands
COMMAND ${PYTHON_EXECUTABLE} $ENV{ZEPHYR_BASE}/scripts/check_link_map.py ${KERNEL_MAP_NAME}
@@ -700,13 +690,13 @@
)
list_append_ifdef(
- CONFIG_BUILD_OUTPUT_DISASSEMBLY
+ CONFIG_OUTPUT_DISASSEMBLY
post_build_commands
COMMAND ${CMAKE_OBJDUMP} -S ${KERNEL_ELF_NAME} > ${KERNEL_LST_NAME}
)
list_append_ifdef(
- CONFIG_BUILD_OUTPUT_STAT
+ CONFIG_OUTPUT_STAT
post_build_commands
COMMAND ${CMAKE_READELF} -e ${KERNEL_ELF_NAME} > ${KERNEL_STAT_NAME}
)