CC = gcc
CFLAGS = -Wall
-all: lpcload
+ARMCC = /scratch/arm-elf/bin/arm-elf-gcc
+ARMCFLAGS = -Wall -mcpu=arm7tdmi-s -nostartfiles -nostdlib
+ARMOBJCOPY = /scratch/arm-elf/bin/arm-elf-objcopy
+HOSTOBJECTS = lpcload fwdump
+
+ARMOBJECTS = fwbc.hex fwflash.hex
+
+# all projects
+all: $(HOSTOBJECTS) $(ARMOBJECTS)
+
+# arm code
+arm: arm_clean $(ARMOBJECTS)
+
+# fwbc
+fwbc:
+ $(ARMCC) $(ARMCFLAGS) -c fwbc.c -o fwbc
+
+fwbc.hex: fwbc
+ $(ARMOBJCOPY) -O ihex fwbc fwbc.hex
+
+# fwflash
+fwflash:
+ $(ARMCC) $(ARMCFLAGS) -c fwflash.c -o fwflash
+
+fwflash.hex: fwflash
+ $(ARMOBJCOPY) -O ihex fwflash fwflash.hex
+
+clean:
+ rm -f lpcload fwdump
+
+arm_clean:
+ rm -f $(ARMOBJECTS) fwbc fwflash