JuiceBox Code Lcd Makefile

From eLinux.org
Revision as of 03:32, 7 March 2007 by RBot (Talk | contribs) (Bot (Edward's framework))

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

(file lcd_1.mak)

#########################################################################
#  the name of the project 
#
PROJECT=lcd_1

#  List of the objects files in the project
#  Keep it current with all the source!
#
OBJECTS = $(PROJECT).o crt0.o


#  Here's where the compiler options can be messed up
#
GCC = D:/cygwin/opt/rtems-4.6/bin/arm-rtems-gcc

GCFLAGS = -Wall -nostartfiles -mcpu=arm7tdmi -O2 


OBJCOPY = D:/cygwin/opt/rtems-4.6/bin/arm-rtems-objcopy

#
#########################################################################

all:: $(PROJECT).hex

$(PROJECT).hex: $(PROJECT).elf
    $(OBJCOPY) -R .stack -S -O ihex $(PROJECT).elf $(PROJECT).hex

$(PROJECT).elf: $(OBJECTS) $(PROJECT).dld
    $(GCC) $(GCFLAGS) -T $(PROJECT).dld $(OBJECTS) -Xlinker -Map -Xlinker $(PROJECT).map -o $(PROJECT).elf

#########################################################################
#  Default rules to compile .c and .cpp file to .o
#  and assemble .s files to .o

.c.o :
    $(GCC) $(GCFLAGS) -c $<
    $(GCC) -MM -o $*.d  $<

.cpp.o :
    $(GCC) $(GCFLAGS) -c $<
    $(GCC) -MM -o $*.d  $<

.s.o :
    $(GCC) -x assembler-with-cpp $(GCFLAGS) -Wa,-gstabs  -c $<
#########################################################################


#########################################################################
#    Optional: copy all the .d files (autodependicies from source files) to the bottom of the makefile
#    This will ensure that header file mods will force a recompile, if needed
#    To update: delete everything after this line and "cat *.d >> lcd_1.mak"

lcd_1.o: lcd_1.c stdint.h s3c44b0x.h

Category JuiceBox