-ARMCC = /scratch/arm-elf/bin/arm-elf-gcc
-ARMCFLAGS = -Wall -mcpu=arm7tdmi-s
-ARMOBJCOPY = /scratch/arm-elf/bin/arm-elf-objcopy
-
-HOSTOBJECTS = lpcload fwdump
-
-ARMOBJECTS = fwbc.hex
+# cross build
+ARCH = arm-elf
+CROSS_CC = $(ARCH)-gcc
+CROSS_AS = $(ARCH)-as
+CROSS_LD = $(ARCH)-ld
+CROSS_OBJCOPY = $(ARCH)-objcopy
+CROSS_OPTS = -mcpu=arm7tdmi-s
+CROSS_CFLAGS = $(CROSS_OPTS) -Wall -Os
+CROSS_ASLAGS = $(CROSS_OPTS) --gstabs
+CROSS_RAM_LDFLAGS = -Tlpc2220_ram.ld -nostartfiles -nostdlib
+CROSS_ROM_LDFLAGS = -Tlpc2220_rom.ld -nostartfiles -nostdlib
+
+# build objects
+HOST_TARGET = lpcload fwdump
+CROSS_TARGET = fwbc.hex fwflash.hex fwflash.elf # debug: .elf for objdump