Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Rockbox mail archive

Subject: Makefile cleanup

Makefile cleanup

From: Magnus Holmgren <lear_at_algonet.se>
Date: 2005-12-04

Hi,

I've been rummaging around the Makefiles a bit lately (mainly the for
codecs) and I've noticed a couple of things that could be improved:

* Several codec makefiles contain a rule like this:

   $(OBJDIR)/<codec>/%.o: $(APPSDIR)/codecs/<codec>/%.c

   But it doesn't match, so the build rule in make.inc is used instead.
   Thus, all the "extra" stuff in the $(CC) command of the rule isn't
   needed and can be removed. It also means that the only thing the
   rule really adds is allowing for a different "echo" line. It also
   means that at least some codecs (e.g., liba52) are built using -O
   rather than the intended -O2.

   So, what to do? Correct the rules and remove the uneccessary stuff,
   or remove the rules completely?

* codecs/Makefile creates a dependency file, but it isn't used,
   afaict. Should it be used or removed completely?

* codecs/Makefile define OUTPUT when invoking the codec makefiles.
   Many of the codec makefiles define OUTPUT too (and to the same
   value). Clearly, two definitions is one too many, but which should
   be removed? I'd say the ones in the codec makefiles.

* I've found one thing that makes "make clean" slow on Cygwin:
   dependency generation. Adding a "ifneq ($(MAKECMDGOALS),clean)"
   around each depenecy file include speeds things up. Is it okay if I
   add this? (After all, there's no point in updating a dependency file
   that is about to be deleted anyway.)

   Magnus
Received on Sun Dec 4 14:42:45 2005


Page was last modified "Jan 10 2012" The Rockbox Crew
aaa