rockbox/gdb/Makefile
Daniel Stenberg 9759c035f4 Renamed 'archos' to 'modelname' in the configure script and the Makefiles
using it, to reduce confusion for newcomers who never even had an Archos. Those
innocent youngsters.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16149 a1c6a512-1295-4272-9138-f99709370657
2008-01-23 10:59:17 +00:00

101 lines
2.7 KiB
Makefile

# __________ __ ___.
# Open \______ \ ____ ____ | | _\_ |__ _______ ___
# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
# \/ \/ \/ \/ \/
# $Id$
#
ifeq ($(MODELNAME),ifp7xx)
INCLUDES= -I$(FIRMDIR)/include -I$(FIRMDIR)/export -I. -I$(OBJDIR) \
-I$(BUILDDIR)
DEPFILE = $(OBJDIR)/dep-stub
LDS := linker.cfg
SRC := $(shell cat SOURCES | $(CC) -DMEMORYSIZE=$(MEMORYSIZE) $(INCLUDES) $(TARGET) $(DEFINES) -E -P -include "config.h" - )
DIRS = .
ifdef APPEXTRA
DIRS += $(subst :, ,$(APPEXTRA))
INCLUDES += $(patsubst %,-I%,$(subst :, ,$(APPEXTRA)))
endif
ifndef VERSION
VERSION=$(shell date +%y%m%d-%H%M)
endif
CFLAGS = $(GCCOPTS) $(INCLUDES) $(TARGET) $(DEFINES) \
-DAPPSVERSION=\"$(VERSION)\" $(EXTRA_DEFINES) -DMEM=${MEMORYSIZE}
OBJS := $(SRC:%.c=$(OBJDIR)/%.o)
SOURCES = $(SRC)
LINKFILE = $(OBJDIR)/linkage.lds
LIBROCKBOX = $(BUILDDIR)/librockbox.a
all: $(BUILDDIR)/$(BINARY) $(FLASHFILE)
dep: $(DEPFILE)
$(LINKFILE): $(LDS)
$(call PRINTS,Build $(@F))cat $< | $(CC) -DMEMORYSIZE=$(MEMORYSIZE) $(INCLUDES) $(TARGET) $(DEFINES) -E -P $(ROMBUILD) - >$@
$(OBJDIR)/stub.elf : $(OBJS) $(LINKFILE) $(DEPFILE) $(LIBROCKBOX)
$(call PRINTS,LD $(@F))$(CC) $(GCCOPTS) -Os -nostdlib -o $@ $(OBJS) -L$(BUILDDIR) -L$(BUILDDIR)/firmware -lrockbox -lgcc -T$(LINKFILE) -Wl,-Map,$(OBJDIR)/stub.map
$(OBJDIR)/stub.bin : $(OBJDIR)/stub.elf
$(call PRINTS,OBJCOPY $(@F))$(OC) -O binary $< $@
$(BUILDDIR)/$(BINARY) : $(OBJDIR)/stub.bin
$(call PRINTS,Build stub file)$(MKFIRMWARE) $< $@
include $(TOOLSDIR)/make.inc
clean:
$(call PRINTS,cleaning stub)-rm -f $(OBJS) $(BUILDDIR)/$(BINARY) \
$(OBJDIR)/stub.bin $(OBJDIR)/stub.elf $(OBJDIR)/*.map \
$(LINKFILE) $(DEPFILE)
-include $(DEPFILE)
else # not ifp7xx
ifdef RECORDER
EXTRA = -DRECORDER
EXT = ajz
else
EXT = mod
endif
TARGET = stub
OBJS = start.o sh-stub.o setjmp.o
LIBS = -lgcc
.s.o:
sh-elf-as -o $@ $<
.c.o:
sh-elf-gcc -O $(EXTRA) -I../firmware/export -I../firmware/include -m1 -Wall -Wstrict-prototypes -c -o $@ $<
.S.o:
sh-elf-gcc -O -I../firmware/export -I../firmware/include -m1 -Wall -Wstrict-prototypes -c -o $@ $<
$(TARGET).$(EXT): $(TARGET).elf
sh-elf-objcopy -O binary $(TARGET).elf $(TARGET).out
../tools/scramble $(TARGET).out $(TARGET).$(EXT)
../tools/sh2d $(TARGET).out -o 09000000 > $(TARGET).asm
$(TARGET).elf: $(OBJS)
sh-elf-gcc -nostartfiles $(OBJS) -nostdlib -Wl,-Map,$(TARGET).map -o $(TARGET).elf -Tlinker.cfg
clean:
rm $(OBJS) $(TARGET).map $(TARGET).elf $(TARGET).out $(TARGET).mod $(TARGET).ajz
start.o: start.s
sh-stub.o: sh-stub.c
setjmp.o: setjmp.S
endif