rockbox/apps/codecs/demac/libdemac.make
Nils Wallménius c8535f27d1 Switch coldfire builds over to new toolchain using gcc 4.5.2 and binutils 2.20.1
Retune codec compiler optimizations with new compiler. Overall speedup with aac and flac getting big speedups.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29042 a1c6a512-1295-4272-9138-f99709370657
2011-01-12 22:28:43 +00:00

47 lines
1.6 KiB
Makefile

# __________ __ ___.
# Open \______ \ ____ ____ | | _\_ |__ _______ ___
# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
# \/ \/ \/ \/ \/
# $Id$
#
# libdemac
DEMACLIB := $(CODECDIR)/libdemac.a
DEMACLIB_SRC := $(call preprocess, $(APPSDIR)/codecs/demac/libdemac/SOURCES)
DEMACLIB_OBJ := $(call c2obj, $(DEMACLIB_SRC))
OTHER_SRC += $(DEMACLIB_SRC)
ifeq ($(CPU),arm)
OTHER_SRC += $(APPSDIR)/codecs/demac/libdemac/udiv32_arm-pre.S
endif
DEMACLIB_PRE := $(subst .a,-pre.a,$(DEMACLIB))
DEMACLIB_OBJ_PRE := $(subst udiv32_arm.o,udiv32_arm-pre.o,$(DEMACLIB_OBJ))
$(DEMACLIB_PRE): $(DEMACLIB_OBJ_PRE)
$(SILENT)$(shell rm -f $@)
$(call PRINTS,AR $(@F))$(AR) rcs $@ $^ >/dev/null
$(DEMACLIB): $(DEMACLIB_OBJ)
$(SILENT)$(shell rm -f $@)
$(call PRINTS,AR $(@F))$(AR) rcs $@ $^ >/dev/null
DEMACFLAGS = $(filter-out -O%,$(CODECFLAGS))
ifeq ($(CPU),coldfire)
DEMACFLAGS += -O2
else
DEMACFLAGS += -O3
endif
$(CODECDIR)/ape_free_iram.h: $(CODECDIR)/ape-pre.map
$(call PRINTS,GEN $(@F))perl -an \
-e 'if(/^PLUGIN_IRAM/){$$istart=hex($$F[1]);$$ilen=hex($$F[2])}' \
-e 'if(/iend = /){$$iend=hex($$F[0]);}' \
-e '}{if($$ilen){print"#define FREE_IRAM ".($$ilen+$$istart-$$iend)."\n";}' \
$(CODECDIR)/ape-pre.map \
> $@
$(CODECDIR)/demac/%.o: $(ROOTDIR)/apps/codecs/demac/%.c
$(SILENT)mkdir -p $(dir $@)
$(call PRINTS,CC $(subst $(ROOTDIR)/,,$<))$(CC) $(DEMACFLAGS) -c $< -o $@