CC = /usr/local/arm-tools/bin/arm-elf-gcc
AS = /usr/local/arm-tools/bin/arm-elf-as
LD = /usr/local/arm-tools/bin/arm-elf-ld
OBJCPY = /usr/local/arm-tools/bin/arm-elf-objcopy

all : memory.def download_sample.o startup.o memory_rom.def startup_rom.o memory_thumb.def download_sample_thumb.o startup_thumb.o memory_rom_thumb.def startup_rom_thumb.o
	$(LD) -T  memory.def startup.o download_sample.o  -Map download_sample.map -o download_sample
	$(OBJCPY) -O srec download_sample download_sample.s3
	$(OBJCPY) -O ihex download_sample download_sample.hex
	$(LD) -T  memory_rom.def startup_rom.o download_sample.o  -Map download_sample_rom.map -o download_sample_rom
	$(OBJCPY) -O srec download_sample_rom download_sample_rom.s3
	$(OBJCPY) -O ihex download_sample_rom download_sample_rom.hex
	$(LD) -T  memory_thumb.def startup_thumb.o download_sample_thumb.o  -Map download_sample_thumb.map -o download_sample_thumb
	$(OBJCPY) -O srec download_sample_thumb download_sample_thumb.s3
	$(OBJCPY) -O ihex download_sample_thumb download_sample_thumb.hex
	$(LD) -T  memory_rom_thumb.def startup_rom_thumb.o download_sample_thumb.o  -Map download_sample_rom_thumb.map -o download_sample_rom_thumb
	$(OBJCPY) -O srec download_sample_rom_thumb download_sample_rom_thumb.s3
	$(OBJCPY) -O ihex download_sample_rom_thumb download_sample_rom_thumb.hex
download_sample.o : download_sample.c
	$(CC) -g -c $<
download_sample_thumb.o : download_sample.c
	$(CC) -mthumb-interwork -mthumb -g -c $< -o download_sample_thumb.o
startup.o : startup.s
	$(AS) startup.s -o startup.o
startup_rom.o : startup.s
	$(AS) --defsym ROM_TARGET=1 startup.s -o startup_rom.o
startup_thumb.o : startup.s
	$(AS) --defsym THUMB=1 startup.s -o startup_thumb.o
startup_rom_thumb.o : startup.s
	$(AS) --defsym ROM_TARGET=1 --defsym THUMB=1 startup.s -o startup_rom_thumb.o
clean:
	rm -f *.o download_sample download_sample_rom download_sample_thumb download_sample_rom_thumb *.s3 *.hex *.map

