From 974850cdf263636fb54fe9f8c7d5d0711fb84deb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Th=C3=A9baudeau?= Date: Thu, 31 Oct 2013 16:25:27 +0100 Subject: [PATCH] cc2538: Generate .hex output MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ELF files generated by GCC make SmartRF Flash Programmer 2 crash (only the TI format is supported by this tool for ELFs), and binary files are not very appropriate because they are gapless, so generate Intel HEX files since these are very well supported by most programming tools while still flexible. Signed-off-by: Benoît Thébaudeau --- cpu/cc2538/Makefile.cc2538 | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/cpu/cc2538/Makefile.cc2538 b/cpu/cc2538/Makefile.cc2538 index ad54c59e8..073de35bb 100644 --- a/cpu/cc2538/Makefile.cc2538 +++ b/cpu/cc2538/Makefile.cc2538 @@ -27,7 +27,7 @@ ifdef NODEID endif ### CPU-dependent cleanup files -CLEAN += symbols.c symbols.h *.d *.elf +CLEAN += symbols.c symbols.h *.d *.elf *.hex ### CPU-dependent directories CONTIKI_CPU_DIRS = . dev usb @@ -54,7 +54,7 @@ CONTIKI_SOURCEFILES += $(CONTIKI_CPU_SOURCEFILES) $(DEBUG_IO_SOURCEFILES) CONTIKI_SOURCEFILES += $(USB_CORE_SOURCEFILES) $(USB_ARCH_SOURCEFILES) ### Don't treat the .elf as intermediate -.PRECIOUS: %.elf %.bin +.PRECIOUS: %.elf %.hex %.bin ### Always re-build ieee-addr.o in case the command line passes a new NODEID FORCE: @@ -70,12 +70,15 @@ CUSTOM_RULE_LINK=1 $(TRACE_LD) $(Q)$(LD) $(LDFLAGS) ${filter-out $(LDSCRIPT) %.a,$^} ${filter %.a,$^} -o $@ +%.hex: %.elf + $(OBJCOPY) -O ihex $< $@ + %.bin: %.elf $(OBJCOPY) $(OBJCOPY_FLAGS) $< $@ -### We don't really need the .bin for the .$(TARGET) but let's make sure it -### gets built -%.$(TARGET): %.elf %.bin +### We don't really need the .hex and .bin for the .$(TARGET) but let's make +### sure they get built +%.$(TARGET): %.elf %.hex %.bin cp $< $@ ### This rule is used to generate the correct linker script