aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjimqui01 <54316584+jimqui01@users.noreply.github.com>2020-09-28 15:26:39 +0100
committernicola-mazzucato-arm <42373140+nicola-mazzucato-arm@users.noreply.github.com>2020-10-15 17:45:38 +0100
commit3ed98096b99953d02bf1a27006c7e4c49935a007 (patch)
treef88bc8f8efeeee1a82aea80aefad355e5439c945
parent526bb9ddeda6871d20b43d642ecc618c095375b1 (diff)
arm: Arm toolchain does not support S-Record format
The armclang toolchain does not support S-Records. Change-Id: I9de19e9c857e7437782b959d583ce1fdb8188652
-rw-r--r--tools/build_system/firmware.mk12
1 files changed, 11 insertions, 1 deletions
diff --git a/tools/build_system/firmware.mk b/tools/build_system/firmware.mk
index 0b41fd72..8729a220 100644
--- a/tools/build_system/firmware.mk
+++ b/tools/build_system/firmware.mk
@@ -83,13 +83,19 @@ FIRMWARE_DIR := $(PRODUCT_DIR)/$(FIRMWARE)
TARGET := $(BIN_DIR)/$(FIRMWARE)
TARGET_BIN := $(TARGET).bin
TARGET_ELF := $(TARGET).elf
+TARGET_SREC := $(TARGET).srec
+ifeq ($(BS_LINKER),ARM)
+TARGET_GOAL := $(TARGET_BIN)
+else
+TARGET_GOAL := $(TARGET_SREC)
+endif
vpath %.c $(FIRMWARE_DIR)
vpath %.S $(FIRMWARE_DIR)
vpath %.c $(PRODUCT_DIR)/src
vpath %.S $(PRODUCT_DIR)/src
-goal: $(TARGET_BIN)
+goal: $(TARGET_GOAL)
ifneq ($(BS_ARCH_CPU),host)
ifeq ($(BS_LINKER),ARM)
@@ -335,4 +341,8 @@ $(TARGET_BIN): $(TARGET_ELF) | $$(@D)/
$(call show-action,BIN,$@)
$(OBJCOPY) $< $(OCFLAGS) $@
cp $@ $(BIN_DIR)/firmware.bin
+
+$(TARGET_SREC): $(TARGET_BIN)
+ $(call show-action,SREC,$@)
+ $(OBJCOPY) -O srec $(TARGET_ELF) $(basename $@).srec
endif