PRG            = program
OBJ            = ADuC7026_startup.o main.o low_level_init.o IRQ.o dac.o adc.o
INCLUDE_H	   = ADuC7026.h IRQ.h timer.h dac.h adc.h
OPTIMIZE       = 
# USE_THUMB_MODE = YES

LDSCRIPT       = ADuC7026_linker.ld
DEFS           =
LIBS           =


# You should not have to change anything below here.
CC             = arm-elf-gcc
OBJCOPY        = arm-elf-objcopy
OBJDUMP        = arm-elf-objdump
ARCH           = arm-elf-ar

CFLAGS=-Wall -I. $(DEBUG) -mcpu=arm7tdmi -nostartfiles -T$(LDSCRIPT) \
		-Wcast-align $(OPTIMIZE) $(DEFS)

ifeq ($(USE_THUMB_MODE),YES)
	CFLAGS += -mthumb -mthumb-interwork
endif

ASFLAGS=-Wa

$(PRG).elf: $(OBJ) $(LDSCRIPT) makefile
	$(CC) $(CFLAGS) $(LDFLAGS) $(LIBS) $(OBJ) -o $@

clean:
	rm -rf *.o *.lst $(PRG).elf $(PRG).hex $(PRG).bin

lst:  $(PRG).lst

%.lst: %.elf
	$(OBJDUMP) -h -S $< > $@

%.o : %.s makefile
	$(CC) -c $(ASFLAGS) $< -o $@

%.o : %.c makefile $(INCLUDE_H)
	$(CC) -c $(CFLAGS) $< -o $@

hex:  $(PRG).hex

%.hex: %.elf
	$(OBJCOPY) -O ihex $< $@

bin: $(PRG).bin

%.bin: %.elf
	$(OBJCOPY) -O binary $< $@

run: $(PRG).hex
	jtag_flash $(PRG).hex

debug: $(PRG).hex
	jtag_flash $(PRG).hex N
	arm-elf-insight $(PRG).elf &
	jtag_stub
