Загрузка данных


# Проверяем, что сборка идёт в окружении Zephyr
if(TARGET zephyr_interface)
    # 1. Создаем задачу для бэкапа оригинального ELF до финальной сборки
    add_custom_target(backup_debug_symbols ALL)
    add_dependencies(backup_debug_symbols zephyr_prebuilt)

    # 2. Копируем zephyr_prebuilt.elf в zephyr_debug.elf (здесь вся ваша отладка!)
    add_custom_command(
        TARGET backup_debug_symbols
        POST_BUILD
        COMMAND ${CMAKE_COMMAND} -E copy 
            ${CMAKE_BINARY_DIR}/zephyr/zephyr_prebuilt.elf 
            ${CMAKE_BINARY_DIR}/zephyr/zephyr_debug.elf
        COMMENT "--> Отладочные символы сохранены в zephyr_debug.elf для GDB/west debug"
    )

    # 3. Штатный макрос Zephyr для передачи флага линкеру. 
    # Он заставит GCC вырезать debug-секции ровно в момент создания финального zephyr.elf,
    # что спасёт objcopy от падения.
    zephyr_ld_options(-Wl,--strip-debug)
endif()