summaryrefslogtreecommitdiff
path: root/apps/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'apps/Makefile')
-rw-r--r--apps/Makefile31
1 files changed, 22 insertions, 9 deletions
diff --git a/apps/Makefile b/apps/Makefile
index 75b9fbafb3..bcdc1ef265 100644
--- a/apps/Makefile
+++ b/apps/Makefile
@@ -13,11 +13,6 @@ DEPFILE = $(OBJDIR)/dep-apps
13LDS := $(FIRMDIR)/app.lds 13LDS := $(FIRMDIR)/app.lds
14ROMLDS := $(FIRMDIR)/rom.lds 14ROMLDS := $(FIRMDIR)/rom.lds
15 15
16ifdef DEBUG
17 DEFINES := -DDEBUG
18 CFLAGS += -g
19endif
20
21ifdef ENABLEDPLUGINS 16ifdef ENABLEDPLUGINS
22ROCKS=rocks 17ROCKS=rocks
23endif 18endif
@@ -26,7 +21,8 @@ ifdef SOFTWARECODECS
26CODECS=build-codecs 21CODECS=build-codecs
27endif 22endif
28 23
29SRC := $(shell cat SOURCES | $(CC) -DMEMORYSIZE=$(MEMORYSIZE) $(INCLUDES) $(TARGET) $(DEFINES) -E -P -include "config.h" - ) 24SRC := $(shell cat SOURCES | gcc -DMEMORYSIZE=$(MEMORYSIZE) $(INCLUDES) \
25$(TARGET) $(DEFINES) $(EXTRA_DEFINES) -E -P -include "config.h" - )
30DIRS = . 26DIRS = .
31 27
32ifdef APPEXTRA 28ifdef APPEXTRA
@@ -44,9 +40,11 @@ LINKROM = $(OBJDIR)/linkrom.lds
44MAXINFILE = $(OBJDIR)/romstart.temp 40MAXINFILE = $(OBJDIR)/romstart.temp
45MAXOUTFILE = $(OBJDIR)/romstart 41MAXOUTFILE = $(OBJDIR)/romstart
46 42
47ifdef DEBUG 43ifdef SIMVER
48all: $(OBJDIR)/rockbox.elf $(CODECS) $(ROCKS) 44# this is a sim build
45all: $(OBJDIR)/$(BINARY) $(CODECS) $(ROCKS)
49else 46else
47# regular target build
50all: $(OBJDIR)/$(BINARY) $(FLASHFILE) $(CODECS) $(ROCKS) $(ARCHOSROM) 48all: $(OBJDIR)/$(BINARY) $(FLASHFILE) $(CODECS) $(ROCKS) $(ARCHOSROM)
51endif 49endif
52 50
@@ -80,9 +78,11 @@ $(OBJDIR)/rombox.elf : $(OBJS) $(LINKROM) $(OBJDIR)/librockbox.a $(DEPFILE)
80 @echo "LD rombox.elf" 78 @echo "LD rombox.elf"
81 @$(CC) $(GCCOPTS) -Os -nostdlib -o $@ $(OBJS) -L$(OBJDIR) -lrockbox -lgcc -L$(FIRMDIR) -T$(LINKROM) -Wl,-Map,$(OBJDIR)/rombox.map 79 @$(CC) $(GCCOPTS) -Os -nostdlib -o $@ $(OBJS) -L$(OBJDIR) -lrockbox -lgcc -L$(FIRMDIR) -T$(LINKROM) -Wl,-Map,$(OBJDIR)/rombox.map
82 80
81ifndef SIMVER
82
83$(OBJDIR)/rockbox.elf : $(OBJS) $(LINKFILE) $(OBJDIR)/librockbox.a $(DEPFILE) 83$(OBJDIR)/rockbox.elf : $(OBJS) $(LINKFILE) $(OBJDIR)/librockbox.a $(DEPFILE)
84 @echo "LD rockbox.elf" 84 @echo "LD rockbox.elf"
85 $(CC) $(GCCOPTS) -Os -nostdlib -o $@ $(OBJS) -L$(OBJDIR) -lrockbox -lgcc -L$(FIRMDIR) -T$(LINKFILE) -Wl,-Map,$(OBJDIR)/rockbox.map 85 $(CC) $(GCCOPTS) -Os -nostdlib -o $@ $(OBJS) -L$(OBJDIR) -lrockbox -lgcc -T$(LINKFILE) -Wl,-Map,$(OBJDIR)/rockbox.map
86 86
87$(OBJDIR)/rockbox.bin : $(OBJDIR)/rockbox.elf 87$(OBJDIR)/rockbox.bin : $(OBJDIR)/rockbox.elf
88 @echo "OBJCOPY $<" 88 @echo "OBJCOPY $<"
@@ -99,6 +99,16 @@ $(OBJDIR)/$(BINARY) : $(OBJDIR)/rockbox.bin
99 @echo "Build firmware file" 99 @echo "Build firmware file"
100 @$(MKFIRMWARE) $< $@ 100 @$(MKFIRMWARE) $< $@
101 101
102else
103# this is a simulator build
104$(OBJDIR)/$(BINARY) : $(OBJS) $(OBJDIR)/librockbox.a $(DEPFILE) $(OBJDIR)/libsim.a
105 @echo "LD $(BINARY)"
106 $(CC) $(GCCOPTS) -o $@ $(OBJS) $(LDOPTS) -L$(OBJDIR) -lrockbox -lsim -Wl,-Map,$(OBJDIR)/rockbox.map
107
108$(OBJDIR)/libsim.a:
109 @$(MAKE) -C $(SIMDIR)
110endif
111
102$(OBJDIR)/rockbox.ucl: $(OBJDIR)/rockbox.bin 112$(OBJDIR)/rockbox.ucl: $(OBJDIR)/rockbox.bin
103 @a=`uclpack -h 2>/dev/null`; \ 113 @a=`uclpack -h 2>/dev/null`; \
104 if test -n "$$a"; then \ 114 if test -n "$$a"; then \
@@ -160,5 +170,8 @@ clean:
160 @$(MAKE) -C plugins clean 170 @$(MAKE) -C plugins clean
161 @$(MAKE) -C codecs clean 171 @$(MAKE) -C codecs clean
162 @rm -rf $(OBJDIR)/recorder $(OBJDIR)/player 172 @rm -rf $(OBJDIR)/recorder $(OBJDIR)/player
173ifdef SIMVER
174 @$(MAKE) -C $(SIMDIR) clean
175endif
163 176
164-include $(DEPFILE) 177-include $(DEPFILE)