altos: Build .ihx files for all arm projects
authorKeith Packard <keithp@keithp.com>
Sun, 8 Dec 2013 19:14:29 +0000 (11:14 -0800)
committerKeith Packard <keithp@keithp.com>
Sun, 8 Dec 2013 19:14:29 +0000 (11:14 -0800)
The .ihx version can be processed by the java loader

Signed-off-by: Keith Packard <keithp@keithp.com>
src/easymini-v1.0/Makefile
src/lpc/Makefile-lpc.defs
src/megadongle-v0.1/Makefile
src/stm/Makefile.defs
src/telegps-v0.1/Makefile
src/telelco-v0.1/Makefile
src/telelco-v0.2/Makefile
src/telemega-v0.1/Makefile
src/telemega-v0.3/Makefile
src/telemetrum-v2.0/Makefile
src/telescience-v0.2/Makefile

index 6ab794254b901429e1729b02f70521caa93bee23..8042874fd2bd5a04faab44f919bc1a7be0fab8a4 100644 (file)
@@ -54,11 +54,12 @@ CFLAGS = $(PRODUCT_DEF) $(LPC_CFLAGS) -g -Os
 
 PROGNAME=easymini-v1.0
 PROG=$(PROGNAME)-$(VERSION).elf
 
 PROGNAME=easymini-v1.0
 PROG=$(PROGNAME)-$(VERSION).elf
+HEX=$(PROGNAME)-$(VERSION).ihx
 
 SRC=$(ALTOS_SRC) ao_easymini.c
 OBJ=$(SRC:.c=.o)
 
 
 SRC=$(ALTOS_SRC) ao_easymini.c
 OBJ=$(SRC:.c=.o)
 
-all: $(PROG)
+all: $(PROG) $(HEX)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
@@ -74,7 +75,7 @@ load: $(PROG)
 distclean:     clean
 
 clean:
 distclean:     clean
 
 clean:
-       rm -f *.o $(PROG)
+       rm -f *.o $(PROGNAME)-*.elf
        rm -f ao_product.h
 
 install:
        rm -f ao_product.h
 
 install:
index 32a02a4c4e28fcec51eeb33c5741001f15211b50..fbd413b0bc0d3f785555e3a7ed307b97d376b71a 100644 (file)
@@ -16,13 +16,14 @@ vpath ao-make-product.5c $(TOPDIR)/util
 .SUFFIXES: .elf .ihx
 
 .elf.ihx:
 .SUFFIXES: .elf .ihx
 
 .elf.ihx:
-       objcopy -O ihex $*.elf $@
+       $(ELFTOHEX) --output=$@ $*.elf
 
 
 ifndef VERSION
 include $(TOPDIR)/Version
 endif
 
 
 
 ifndef VERSION
 include $(TOPDIR)/Version
 endif
 
+ELFTOHEX=$(TOPDIR)/../ao-tools/ao-elftohex/ao-elftohex
 CC=$(ARM_CC)
 
 AO_CFLAGS=-I. -I$(TOPDIR)/lpc -I$(TOPDIR)/core -I$(TOPDIR)/drivers -I$(TOPDIR)/product -I$(TOPDIR)
 CC=$(ARM_CC)
 
 AO_CFLAGS=-I. -I$(TOPDIR)/lpc -I$(TOPDIR)/core -I$(TOPDIR)/drivers -I$(TOPDIR)/product -I$(TOPDIR)
index 268f186f831c4ff202f511912483e3c663a2bc81..a8c3a584db32fee068c19b291d99e9e96b283474 100644 (file)
@@ -62,11 +62,12 @@ CFLAGS = $(PRODUCT_DEF) $(STM_CFLAGS) $(PROFILE_DEF) $(SAMPLE_PROFILE_DEF) $(STA
 
 PROGNAME=megadongle-v0.1
 PROG=$(PROGNAME)-$(VERSION).elf
 
 PROGNAME=megadongle-v0.1
 PROG=$(PROGNAME)-$(VERSION).elf
+HEX=$(PROGNAME)-$(VERSION).ihx
 
 SRC=$(ALTOS_SRC) ao_megadongle.c
 OBJ=$(SRC:.c=.o)
 
 
 SRC=$(ALTOS_SRC) ao_megadongle.c
 OBJ=$(SRC:.c=.o)
 
-all: $(PROG)
+all: $(PROG) $(HEX)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
index 0710d74774ec4e18c4e8fba3df9db52ba342a14e..b1998f93661bd541455fc304d7eb9d327a2a6e13 100644 (file)
@@ -10,7 +10,7 @@ vpath ao-make-product.5c ../util
 .SUFFIXES: .elf .ihx
 
 .elf.ihx:
 .SUFFIXES: .elf .ihx
 
 .elf.ihx:
-       objcopy -O ihex $*.elf $@
+       $(ELFTOHEX) --output=$@ $*.elf
 
 ifndef TOPDIR
 TOPDIR=..
 
 ifndef TOPDIR
 TOPDIR=..
@@ -30,6 +30,7 @@ STM_CFLAGS=-std=gnu99 -mlittle-endian -mcpu=cortex-m3 -mthumb -ffreestanding -no
 LDFLAGS=-L../stm -Wl,-Taltos.ld
 
 NICKLE=nickle
 LDFLAGS=-L../stm -Wl,-Taltos.ld
 
 NICKLE=nickle
+ELFTOHEX=$(TOPDIR)/../ao-tools/ao-elftohex/ao-elftohex
 
 V=0
 # The user has explicitly enabled quiet compilation.
 
 V=0
 # The user has explicitly enabled quiet compilation.
index f5533d51a9f34d4c63d1b5be947757f0e58cdb24..96366cfcb0fc2ffbabd437ffa301375499b585ef 100644 (file)
@@ -74,11 +74,12 @@ CFLAGS = $(PRODUCT_DEF) $(STM_CFLAGS) $(PROFILE_DEF) $(SAMPLE_PROFILE_DEF) $(STA
 
 PROGNAME=telegps-v0.1
 PROG=$(PROGNAME)-$(VERSION).elf
 
 PROGNAME=telegps-v0.1
 PROG=$(PROGNAME)-$(VERSION).elf
+HEX=$(PROGNAME)-$(VERSION).ihx
 
 SRC=$(ALTOS_SRC) ao_telegps.c
 OBJ=$(SRC:.c=.o)
 
 
 SRC=$(ALTOS_SRC) ao_telegps.c
 OBJ=$(SRC:.c=.o)
 
-all: $(PROG)
+all: $(PROG) $(HEX)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
index 0f61788c6485ee37e7cb7d7fa45e917b22acbc2a..e494403c834ebdc96efa8adaaf33d42245152074 100644 (file)
@@ -69,11 +69,12 @@ CFLAGS = $(PRODUCT_DEF) $(STM_CFLAGS) $(PROFILE_DEF) -Os -g
 
 PROGNAME=telelco-v0.1
 PROG=$(PROGNAME)-$(VERSION).elf
 
 PROGNAME=telelco-v0.1
 PROG=$(PROGNAME)-$(VERSION).elf
+HEX=$(PROGNAME)-$(VERSION).ihx
 
 SRC=$(ALTOS_SRC) ao_telelco.c
 OBJ=$(SRC:.c=.o)
 
 
 SRC=$(ALTOS_SRC) ao_telelco.c
 OBJ=$(SRC:.c=.o)
 
-all: $(PROG)
+all: $(PROG) $(HEX)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
index 2fb4db5e6cda4de8fe1efffd0329d3db6ebf9056..32cf7eddb7931f04f777f46b5dabe4ef96554ee1 100644 (file)
@@ -77,11 +77,12 @@ CFLAGS = $(PRODUCT_DEF) $(STM_CFLAGS) $(PROFILE_DEF) -Os -g
 
 PROGNAME=telelco-v0.2
 PROG=$(PROGNAME)-$(VERSION).elf
 
 PROGNAME=telelco-v0.2
 PROG=$(PROGNAME)-$(VERSION).elf
+HEX=$(PROGNAME)-$(VERSION).ihx
 
 SRC=$(ALTOS_SRC) ao_telelco.c
 OBJ=$(SRC:.c=.o)
 
 
 SRC=$(ALTOS_SRC) ao_telelco.c
 OBJ=$(SRC:.c=.o)
 
-all: $(PROG)
+all: $(PROG) $(HEX)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
index 7acaedd234ad13f3c24895386a6f10c0846169c3..0166ebc9329f1b23acde6244104331dac5b93e17 100644 (file)
@@ -122,11 +122,12 @@ CFLAGS = $(PRODUCT_DEF) $(STM_CFLAGS) $(PROFILE_DEF) $(SAMPLE_PROFILE_DEF) $(STA
 
 PROGNAME=telemega-v0.1
 PROG=$(PROGNAME)-$(VERSION).elf
 
 PROGNAME=telemega-v0.1
 PROG=$(PROGNAME)-$(VERSION).elf
+HEX=$(PROGNAME)-$(VERSION).ihx
 
 SRC=$(ALTOS_SRC) ao_telemega.c
 OBJ=$(SRC:.c=.o)
 
 
 SRC=$(ALTOS_SRC) ao_telemega.c
 OBJ=$(SRC:.c=.o)
 
-all: $(PROG)
+all: $(PROG) $(HEX)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
index a25b8b6863ce122240589f99fb0ecd2735f71a17..12e4152c4ce6a3625da9ebc80621159add3f0ddc 100644 (file)
@@ -124,11 +124,12 @@ CFLAGS = $(PRODUCT_DEF) $(STM_CFLAGS) $(PROFILE_DEF) $(SAMPLE_PROFILE_DEF) $(STA
 
 PROGNAME=telemega-v0.3
 PROG=$(PROGNAME)-$(VERSION).elf
 
 PROGNAME=telemega-v0.3
 PROG=$(PROGNAME)-$(VERSION).elf
+HEX=$(PROGNAME)-$(VERSION).ihx
 
 SRC=$(ALTOS_SRC) ao_telemega.c
 OBJ=$(SRC:.c=.o)
 
 
 SRC=$(ALTOS_SRC) ao_telemega.c
 OBJ=$(SRC:.c=.o)
 
-all: $(PROG)
+all: $(PROG) $(HEX)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
index a5370224cb172d0b48e722a4fb09171a919153c4..16408b03bf441a1f5c28f48851e8bc1185e67f1e 100644 (file)
@@ -95,11 +95,12 @@ CFLAGS = $(PRODUCT_DEF) $(STM_CFLAGS) $(PROFILE_DEF) $(SAMPLE_PROFILE_DEF) $(STA
 
 PROGNAME=telemetrum-v2.0
 PROG=$(PROGNAME)-$(VERSION).elf
 
 PROGNAME=telemetrum-v2.0
 PROG=$(PROGNAME)-$(VERSION).elf
+HEX=$(PROGNAME)-$(VERSION).ihx
 
 SRC=$(ALTOS_SRC) ao_telemetrum.c
 OBJ=$(SRC:.c=.o)
 
 
 SRC=$(ALTOS_SRC) ao_telemetrum.c
 OBJ=$(SRC:.c=.o)
 
-all: $(PROG)
+all: $(PROG) $(HEX)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
index c53a6cc3aa24df032188f9dd9bc6ec9f9448ea6c..d76183c5c4499323f0fdcef3f2aa2ee49793417e 100644 (file)
@@ -61,11 +61,12 @@ CFLAGS = $(PRODUCT_DEF) $(STM_CFLAGS) $(PROFILE_DEF) $(SAMPLE_PROFILE_DEF) $(STA
 
 PROGNAME=telescience-v0.2
 PROG=$(PROGNAME)-$(VERSION).elf
 
 PROGNAME=telescience-v0.2
 PROG=$(PROGNAME)-$(VERSION).elf
+HEX=$(PROGNAME)-$(VERSION).ihx
 
 SRC=$(ALTOS_SRC) ao_telescience.c
 OBJ=$(SRC:.c=.o)
 
 
 SRC=$(ALTOS_SRC) ao_telescience.c
 OBJ=$(SRC:.c=.o)
 
-all: $(PROG)
+all: $(PROG) $(HEX)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)
 
 $(PROG): Makefile $(OBJ) altos.ld
        $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)