GCC = /usr/local/arm-tools/bin/arm-elf-gcc
LD = /usr/local/arm-tools/bin/arm-elf-ld
AS = /usr/local/arm-tools/bin/arm-elf-as
OBJCOPY = /usr/local/arm-tools/bin/arm-elf-objcopy

NEWLIB_BASE=/usr/local/arm-tools/newlibexport/arm-elf
NEWLIB_INC = $(NEWLIB_BASE)/include
NEWLIB_LIB = $(NEWLIB_BASE)/lib
NEWLIB_LIB_THUMB = $(NEWLIB_BASE)/lib/thumb

GCC_LIB = /usr/local/arm-tools/lib/gcc/arm-elf/4.3.1
GCC_LIB_THUMB = /usr/local/arm-tools/lib/gcc/arm-elf/4.3.1/thumb

TARGET_SYSCALL_LIB_NAME = lp2833
TARGET_SYSCALL_LIB_DIR = ../../../lib
TARGET_SYSCALL_LIB_DIR_THUMB = ../../../lib/thumb

all: monitor-common.o monitor.o startup.o save_registers.o memory.def
	$(LD) -L$(TARGET_SYSCALL_LIB_DIR) -L$(NEWLIB_LIB) -L$(GCC_LIB) -Map monitor.map -T memory.def startup.o  monitor-common.o monitor.o save_registers.o -lc -lgcc -llp2833 -o monitor
	$(OBJCOPY) -O srec monitor monitor.mot
	$(OBJCOPY) -O ihex monitor monitor.hex
.c.o:
	$(GCC) -c -I. -I$(NEWLIB_INC) $<
startup.o: startup.s
	$(AS) $< -o startup.o 
save_registers.o: save_registers.s
	$(AS) $< -o save_registers.o 
clean:
	rm -f *.o monitor
