diff options
| author | Björn Stenberg <bjorn@haxx.se> | 2002-05-16 12:53:40 +0000 |
|---|---|---|
| committer | Björn Stenberg <bjorn@haxx.se> | 2002-05-16 12:53:40 +0000 |
| commit | 8218285c0b848cf2173a59129062e033d0c8e46a (patch) | |
| tree | cfce21fbe241a863f19d8998f6e1a0bffdf06fce /apps/Makefile | |
| parent | 784c625f331ec0326fe462f0fa58a67ba23fd9ee (diff) | |
| download | rockbox-8218285c0b848cf2173a59129062e033d0c8e46a.zip rockbox-8218285c0b848cf2173a59129062e033d0c8e46a.tar.gz rockbox-8218285c0b848cf2173a59129062e033d0c8e46a.tar.bz2 rockbox-8218285c0b848cf2173a59129062e033d0c8e46a.tar.xz | |
Initial revision
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@586 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/Makefile')
| -rw-r--r-- | apps/Makefile | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/apps/Makefile b/apps/Makefile new file mode 100644 index 0000000..c8b87ae --- /dev/null +++ b/apps/Makefile @@ -0,0 +1,64 @@ +# __________ __ ___. +# Open \______ \ ____ ____ | | _\_ |__ _______ ___ +# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / +# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < +# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ +# \/ \/ \/ \/ \/ +# $Id$ +# + +CC = sh-elf-gcc +LD = sh-elf-ld +AR = sh-elf-ar +AS = sh-elf-as +OC = sh-elf-objcopy + +FIRMWARE := ../firmware + +INCLUDES= -I$(FIRMWARE) -I$(FIRMWARE)/common -I$(FIRMWARE)/drivers + +# Pick a target to build for +TARGET = -DARCHOS_PLAYER=1 +#TARGET = -DARCHOS_PLAYER_OLD=1 +#TARGET = -DARCHOS_RECORDER=1 + +CFLAGS = -Os -W -Wall -m1 -nostdlib -Wstrict-prototypes -fomit-frame-pointer -fschedule-insns $(INCLUDES) $(TARGET) -DDEBUG +AFLAGS += -small -relax + +SRC := $(wildcard drivers/*.c common/*.c *.c) +OBJS := $(SRC:%.c=%.o) crt0.o + +all : archos.mod # archos.asm + +archos.elf : $(OBJS) $(FIRMWARE)/app.lds + $(CC) -nostdlib -o archos.elf $(OBJS) -lgcc -lc -T$(FIRMWARE)/app.lds -Wl,-Map,archos.map + +archos.bin : archos.elf + $(OC) -O binary archos.elf archos.bin + +archos.asm: archos.bin + ../tools/sh2d -sh1 archos.bin > archos.asm + +archos.mod : archos.bin + ../tools/scramble archos.bin archos.mod + +dist: + tar czvf dist.tar.gz Makefile main.c start.s app.lds + +clean: + -rm -f *.x *.i *.o *.elf *.bin *.map *.mod *.bak *~ + -$(RM) -r $(DEPS) + +crt0.o: $(FIRMWARE)/crt0.S + +DEPS:=.deps +DEPDIRS:=$(DEPS) $(DEPS)/drivers $(DEPS)/common + +$(DEPS)/%.d: %.c + @$(SHELL) -c 'for d in $(DEPDIRS); do { if [ ! -d $$d ]; then mkdir $$d; fi; }; done' + @echo "Updating dependencies for $<" + @$(SHELL) -ec '$(CC) -MM $(CFLAGS) $< \ + |sed '\''s|\($*\)\.o[ :]*|\1.o $(<:%.c=%.d) : |g'\'' > $@; \ + [ -s $@ ] || rm -f $@' + +-include $(SRC:%.c=$(DEPS)/%.d) |