Return to Makefile CVS log | Up to [local] / funnyos / arch / sam7s64 |
File: [local] / funnyos / arch / sam7s64 / Makefile (download)
Revision 1.5, Mon Nov 12 22:02:18 2007 UTC (16 years, 6 months ago) by nbrk
place data at the top 4 KB of 64KB flash; hardcode disposition of .data and .bss into ldscript. this all makes compiler generate code with data at 0x00200000 in mind, while linker places it at the (imaginary) end of text (60 KB) - last 4KB (0x0000f000) in ROM |
# $Id: Makefile,v 1.5 2007/11/12 22:02:18 nbrk Exp $ # Makefile for funnyOS. # MD files are listed here. # include MI stuff .include "makefile.mi.inc" # ARM cross tools dir CROSSTOOLS=/usr/cross/ipaq # md source files (implies loader and config.c) #MDSRC= boot/loader.S LOADER= boot/loader.S MDSRC= boot/irq_trampoline.c MDSRC+= config.c MDSRC+= dev/*.c # md headers MDHDR= dev/*.h # flags passed to gcc CFLAGS= -I../.. -O0 -nostdlib -ffreestanding -fno-stack-protector -nodefaultlibs CFLAGS+= -c -DARCH_SAM7S64 LDFLAGS= -T ldscript -Ttext 0x00000000 -Tdata 0x00200000 # f000 == 60KB build: ${LOADER} ${MDHDR} ${MIHDR} ${MDSRC} ${MISRC} ${CROSSTOOLS}/usr/bin/gcc -c -o boot/loader.o ${LOADER} ${CROSSTOOLS}/usr/bin/gcc ${CFLAGS} ${MDSRC} ${MISRC} ${CROSSTOOLS}/usr/bin/ld ${LDFLAGS} boot/loader.o *.o ${CROSSTOOLS}/usr/bin/objcopy -O binary a.out a.bin clean: rm a.out *.o boot/loader.o ctags: ${LOADER} ${MDHDR} ${MIHDR} ${MDSRC} ${MISRC} rm tags ctags -adt ${LOADER} ${MDHDR} ${MIHDR} ${MDSRC} ${MISRC}