# for making arm code  Rob Chapman  Apr 1, 04

NAME   = test io

CC      = arm-elf-gcc
LD      = arm-elf-ld -v
AR      = arm-elf-ar
AS      = arm-elf-as
CP      = arm-elf-objcopy

.SUFFIXES : .o .c .s

LOCATION = /gnude

ARCHIVE1 = ${LOCATION}/arm-elf/lib
ARCHIVE2 = ${LOCATION}/lib/gcc-lib/arm-elf/3.3.1
LIBRARIES = -L ${ARCHIVE1} -lc -lg -L $(ARCHIVE2) -lgcc 

CFLAGS  = -I./ -c -O3
AFLAGS  = -ahls -mapcs-32
CAFLAGS = $(CFLAGS) -Wa,-ahls,-mapcs-32
LFLAGS  =  -Map main.map -nostartfiles -T simple.cmd ${LIBRARIES}
CPFLAGS = -O ihex

all: test

clean: -rm -f *.o *.a *.hex *.out *.map

test: main.out
	@ echo "...copying"
	$(CP) $(CPFLAGS) main.out main.hex

main.out: start.o ivt.o main.o simple.cmd Init22.o LCD.o RTC.o Serial.o Timer.o PWM.o Keypad.o Chars.o Delay.o
	@ echo "..linking"
	$(LD) $(LFLAGS) -o main.out  start.o ivt.o libc.a main.o Init22.o LCD.o RTC.o Serial.o Timer.o PWM.o Keypad.o Chars.o Delay.o

.c.o:
	@ echo ".compiling"
	@ $(CC) $(CAFLAGS) $<  > a.lst

mainin: start.s ivt.s main.c Init22.c LCD.c RTC.c Serial.c Timer.c PWM.c Keypad.c Chars.c Delay.c
	@ echo ".compiling"
	$(CC) $(CFLAGS) start.s ivt.s main.c Init22.c LCD.c RTC.c Serial.c Timer.c PWM.c Keypad.c Chars.c Delay.c
