summaryrefslogtreecommitdiff
path: root/apps/codecs/codecs.make
diff options
context:
space:
mode:
authorAndrew Mahone <andrew.mahone@gmail.com>2010-02-04 08:45:38 +0000
committerAndrew Mahone <andrew.mahone@gmail.com>2010-02-04 08:45:38 +0000
commitb1caf4a07d888b257b984c25b52548dabe0ff0ab (patch)
tree5514fb4a7c6732d949d3c2e95958098ccd697f27 /apps/codecs/codecs.make
parent8ed7bda64cb98d491431fd130eb754c6320441a0 (diff)
downloadrockbox-b1caf4a07d888b257b984c25b52548dabe0ff0ab.zip
rockbox-b1caf4a07d888b257b984c25b52548dabe0ff0ab.tar.gz
rockbox-b1caf4a07d888b257b984c25b52548dabe0ff0ab.tar.bz2
rockbox-b1caf4a07d888b257b984c25b52548dabe0ff0ab.tar.xz
Use all available codec iram for reciprocal table in APE codec on ARMv4. Done by linking first with the table empty to determine free space, then sizing table to fill it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24507 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/codecs.make')
-rw-r--r--apps/codecs/codecs.make10
1 files changed, 9 insertions, 1 deletions
diff --git a/apps/codecs/codecs.make b/apps/codecs/codecs.make
index 9e1f909..0c3d2fa 100644
--- a/apps/codecs/codecs.make
+++ b/apps/codecs/codecs.make
@@ -59,7 +59,7 @@ CODECLIBS := $(DEMACLIB) $(A52LIB) $(ALACLIB) $(ASAPLIB) \
$(ATRACLIB) \
$(CODECLIB)
-$(CODECS): $(CODEC_CRT0) $(CODECLINK_LDS)
+$(CODECS): $(CODEC_CRT0) $(CODECLINK_LDS)
$(CODECLINK_LDS): $(CODEC_LDS) $(CONFIGFILE)
$(call PRINTS,PP $(@F))
@@ -78,6 +78,7 @@ $(CODECDIR)/wavpack.codec : $(CODECDIR)/libwavpack.a
$(CODECDIR)/alac.codec : $(CODECDIR)/libalac.a $(CODECDIR)/libm4a.a
$(CODECDIR)/aac.codec : $(CODECDIR)/libfaad.a $(CODECDIR)/libm4a.a
$(CODECDIR)/shorten.codec : $(CODECDIR)/libffmpegFLAC.a
+$(CODECDIR)/ape-pre.map : $(CODECDIR)/libdemac-pre.a
$(CODECDIR)/ape.codec : $(CODECDIR)/libdemac.a
$(CODECDIR)/wma.codec : $(CODECDIR)/libwma.a
$(CODECDIR)/wavpack_enc.codec: $(CODECDIR)/libwavpack.a
@@ -113,6 +114,13 @@ else
CODECFLAGS += -UDEBUG -DNDEBUG
endif
+$(CODECDIR)/%-pre.map: $(CODEC_CRT0) $(CODECLINK_LDS) $(CODECDIR)/%.o $(CODECLIB)
+ $(call PRINTS,LD $(@F))$(CC) $(CODECFLAGS) -o $(CODECDIR)/$*-pre.elf \
+ $(filter %.o, $^) \
+ $(filter-out $(CODECLIB),$(filter %.a, $+)) \
+ $(CODECLIB) \
+ -lgcc $(subst .map,-pre.map,$(CODECLDFLAGS))
+
$(CODECDIR)/%.codec: $(CODECDIR)/%.o
$(call PRINTS,LD $(@F))$(CC) $(CODECFLAGS) -o $(CODECDIR)/$*.elf \
$(filter %.o, $^) \