# 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./ -O3
AFLAGS  = -ahls -mapcs-32
CAFLAGS = $(CFLAGS) -Wa,-ahls,-mapcs-32
#LFLAGS  =  -Map main.map -nostartfiles -T simple.cmd ${LIBRARIES}
LFLAGS  =  ${LIBRARIES} -Map main.map -nostartfiles -T simple.cmd
CPFLAGS = -O ihex

all: test

clean: 
	-rm -f *.o *.a *.hex *.out *.map

test: main.out
	@ echo "...copying"
	#	$(CP) -c $(CPFLAGS) main.out main.hex
	$(CP) $(CPFLAGS) main.out main.hex

main.out: start.o ivt.o main.o simple.cmd Init.o LCD.o RTC.o Serial.o Timer.o PWM.o Keypad.o Chars.o Delay.o
	@ echo "..linking"
	$(LD) $(LFLAGS) -o main.out $^ /gnude/arm-elf/lib/libc.a /gnude/arm-elf/lib/libg.a /gnude/lib/gcc-lib/arm-elf/3.3.1/libgcc.a

#.c.o:
#	@ echo ".compiling"
#	@ $(CC) $(CAFLAGS) $<  > a.lst

#mainin: start.s ivt.s main.c Init.c LCD.c RTC.c Serial.c Timer.c PWM.c Keypad.c Chars.c Delay.c main.h Init.h LCD.h RTC.h Serial.h Timer.h PWM.h Keypad.h Chars.h #Delay.h
#	@ echo ".compiling"
#	$(CC) $(CFLAGS) start.s ivt.s main.c Init.c LCD.c RTC.c Serial.c Timer.c PWM.c Keypad.c Chars.c Delay.c
