# FILENAME: Makefile # # DESCRIPTION: Makefile for compiling and linking a program for SRAM #---------------------------------------------------------------------------------- #----------------- # Project Name #----------------- OUTFILE_SRAM=string2_tx TARGET=AT91SAM7S256 # Paths to standard and maths library files - assumes default YAGARTO installation LIBGCC=C:/yagarto/lib/gcc/arm-none-eabi/4.6.0/libgcc.a LIBC=C:/yagarto/arm-none-eabi/lib/libc.a LIBM=C:/yagarto/arm-none-eabi/lib/libm.a # no optimisation OPTIM=-O0 AS=arm-none-eabi-gcc CC=arm-none-eabi-gcc LD=arm-none-eabi-gcc OBJCOPY=arm-none-eabi-objcopy OBJDUMP=arm-none-eabi-objdump CCFLAGS=-g -mcpu=arm7tdmi $(OPTIM) -Wall -D$(TARGET) ASFLAGS=-D__ASSEMBLY__ -D$(TARGET) -g -mcpu=arm7tdmi -c $(OPTIM) -Wall # Linker flags. # -Wl,... : tell GCC to pass this to linker. # -Map : create map file # --cref : add cross reference to map file LDFLAGS_R+=-nostartfiles -Wl,-Map,out.map,--cref LDFLAGS_R+=-T RAM.ld #---------------------------------------------------------------------------------- # TODO: Add all the object files generated for you project to the framework # objects listed below #---------------------------------------------------------------------------------- OBJS=startup.o \ main.o \ #syscalls.o rebuild: clean all all: sram sram: $(OBJS) $(LD) $(LDFLAGS_R) -n -o $(OUTFILE_SRAM).elf $(OBJS) $(OBJCOPY) --strip-debug --strip-unneeded $(OUTFILE_SRAM).elf -O binary $(OUTFILE_SRAM).bin #---------------------------------------------------------------------------------- # TODO: Add your object file compilation instructions #---------------------------------------------------------------------------------- main.o: main.c $(CC) -c $(CCFLAGS) main.c -o main.o #syscalls.o: syscalls.c #$(CC) -c $(CCFLAGS) syscalls.c -o syscalls.o startup.o: startup.s $(AS) $(ASFLAGS) startup.s -o startup.o clean: rm -f *.o *.bin *.elf *.map