diff options
| author | Björn Stenberg <bjorn@haxx.se> | 2008-11-03 14:37:50 +0000 |
|---|---|---|
| committer | Björn Stenberg <bjorn@haxx.se> | 2008-11-03 14:37:50 +0000 |
| commit | ac488f8cb77d7786fe22e642f6177f46e5e6b1db (patch) | |
| tree | 9e8ff3c76608bd0d1f788ea01679b82921d0e09d /apps/plugins/Makefile | |
| parent | d34837cba14de3792bd84753370cb8bd92beedbf (diff) | |
| download | rockbox-ac488f8cb77d7786fe22e642f6177f46e5e6b1db.zip rockbox-ac488f8cb77d7786fe22e642f6177f46e5e6b1db.tar.gz rockbox-ac488f8cb77d7786fe22e642f6177f46e5e6b1db.tar.bz2 rockbox-ac488f8cb77d7786fe22e642f6177f46e5e6b1db.tar.xz | |
Makefile overhaul. All generated bitmaps are now explicitly in OBJDIR/bitmaps and OBJDIR/pluginbitmaps, and plugins properly depend on their respective bitmap files. Fixes #6847.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18987 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/Makefile')
| -rw-r--r-- | apps/plugins/Makefile | 56 |
1 files changed, 30 insertions, 26 deletions
diff --git a/apps/plugins/Makefile b/apps/plugins/Makefile index 4f518a2..c9405a4 100644 --- a/apps/plugins/Makefile +++ b/apps/plugins/Makefile @@ -8,8 +8,8 @@ # INCLUDES = $(TARGET_INC) -I$(FIRMDIR)/include -I$(FIRMDIR)/export -I$(FIRMDIR)/common \ - -I$(FIRMDIR)/drivers -I$(APPSDIR) -Ilib -I$(BUILDDIR) \ - -I$(BUILDDIR)/pluginbitmaps + -I$(FIRMDIR)/drivers -I$(APPSDIR) -Ilib -I$(BUILDDIR) + CFLAGS = $(INCLUDES) $(GCCOPTS) $(TARGET) $(EXTRA_DEFINES) \ -DTARGET_ID=$(TARGET_ID) -DMEM=${MEMORYSIZE} -DPLUGIN @@ -25,19 +25,19 @@ endif BITMAPLIBS = LINKBITMAPS = ifneq ($(strip $(BMP2RB_MONO)),) - BITMAPLIBS += $(BUILDDIR)/libpluginbitmapsmono.a + BITMAPLIBS += pluginbitmapsmono LINKBITMAPS += -lpluginbitmapsmono endif ifneq ($(strip $(BMP2RB_NATIVE)),) - BITMAPLIBS += $(BUILDDIR)/libpluginbitmapsnative.a + BITMAPLIBS += pluginbitmapsnative LINKBITMAPS += -lpluginbitmapsnative endif ifneq ($(strip $(BMP2RB_REMOTEMONO)),) - BITMAPLIBS += $(BUILDDIR)/libpluginbitmapsremotemono.a + BITMAPLIBS += pluginbitmapsremotemono LINKBITMAPS += -lpluginbitmapsremotemono endif ifneq ($(strip $(BMP2RB_REMOTENATIVE)),) - BITMAPLIBS += $(BUILDDIR)/libpluginbitmapsremotenative.a + BITMAPLIBS += pluginbitmapsremotenative LINKBITMAPS += -lpluginbitmapsremotenative endif @@ -60,12 +60,18 @@ DEFS := $(SRC:%.c=$(OBJDIR)/%.def) DIRS = . .PHONY: $(SUBDIRS) -all: $(BUILDDIR)/libplugin.a $(ROCKS) $(SUBDIRS) $(DEPFILE) - -$(DEPFILE): $(BITMAPLIBS) +all: build dep: $(DEPFILE) +build: $(DEPFILE) $(BITMAPLIBS) + $(call PRINTS,MAKE rocks)$(MAKE) rocks + $(call PRINTS,MAKE subdirs)$(MAKE) subdirs + +rocks: $(ROCKS) + +subdirs: $(SUBDIRS) + $(BUILDDIR)/credits.raw: $(DOCSDIR)/CREDITS $(call PRINTS,create credits.raw)perl credits.pl < $< > $@ @@ -73,34 +79,32 @@ $(OBJDIR)/credits.o: credits.c $(BUILDDIR)/credits.raw $(SILENT)mkdir -p $(dir $@) $(call PRINTS,CC $(<F))$(CC) $(CFLAGS) -I$(OBJDIR) -c $< -o $@ -build-bitmapsmono: +pluginbitmapsmono: $(call PRINTS,MAKE in plugins/bitmaps/mono)$(MAKE) -C bitmaps/mono OBJDIR=$(OBJDIR)/bitmaps/mono -build-bitmapsnative: +pluginbitmapsnative: $(call PRINTS,MAKE in plugins/bitmaps/native)$(MAKE) -C bitmaps/native OBJDIR=$(OBJDIR)/bitmaps/native -build-bitmapsremotemono: +pluginbitmapsremotemono: $(call PRINTS,MAKE in plugins/bitmaps/remote_mono)$(MAKE) -C bitmaps/remote_mono OBJDIR=$(OBJDIR)/bitmaps/remote_mono -build-bitmapsremotenative: +pluginbitmapsremotenative: $(call PRINTS,MAKE in plugins/bitmaps/remote_native)$(MAKE) -C bitmaps/remote_native OBJDIR=$(OBJDIR)/bitmaps/remote_native -$(BITMAPLIBS): $(BUILDDIR)/libplugin%.a: build-% - ifndef SIMVER -$(OBJDIR)/%.elf: $(OBJDIR)/%.o $(LINKFILE) $(BUILDDIR)/libplugin.a $(BITMAPLIBS) - $(call PRINTS,LD $(@F))$(CC) $(CFLAGS) -o $@ $< -L$(BUILDDIR) $(CODECLIBS) -lplugin $(LINKBITMAPS) -lgcc \ - -T$(LINKFILE) -Wl,--gc-sections -Wl,-Map,$(OBJDIR)/$*.map +$(OBJDIR)/%.rock: $(OBJDIR)/%.o $(LINKFILE) + $(SILENT)$(CC) $(CFLAGS) -o $(OBJDIR)/$*.elf $< -L$(BUILDDIR) \ + $(CODECLIBS) -lplugin $(LINKBITMAPS) -lgcc \ + -T$(LINKFILE) -Wl,--gc-sections -Wl,-Map,$(OBJDIR)/$*.map + $(call PRINTS,LINK $(@F))$(OC) -O binary $(OBJDIR)/$*.elf $(OBJDIR)/$*.rock -$(OBJDIR)/%.rock : $(OBJDIR)/%.elf - $(call PRINTS,OBJCOPY $(@F))$(OC) -O binary $< $@ else ifeq ($(SIMVER), x11) ################################################### # This is the X11 simulator version -$(OBJDIR)/%.rock : $(OBJDIR)/%.o $(BUILDDIR)/libplugin.a $(BITMAPLIBS) +$(OBJDIR)/%.rock : $(OBJDIR)/%.o $(call PRINTS,LD $(@F))$(CC) $(CFLAGS) $(SHARED_FLAG) $< -L$(BUILDDIR) $(CODECLIBS) -lplugin $(LINKBITMAPS) -o $@ ifeq ($(findstring CYGWIN,$(UNAME)),CYGWIN) # 'x' must be kept or you'll have "Win32 error 5" @@ -115,7 +119,7 @@ ifeq ($(SIMVER), sdl) ################################################### # This is the SDL simulator version -$(OBJDIR)/%.rock : $(OBJDIR)/%.o $(BUILDDIR)/libplugin.a $(BITMAPLIBS) +$(OBJDIR)/%.rock : $(OBJDIR)/%.o $(call PRINTS,LD $(@F))$(CC) $(CFLAGS) $(SHARED_FLAG) $< -L$(BUILDDIR) $(CODECLIBS) -lplugin $(LINKBITMAPS) -o $@ ifeq ($(findstring CYGWIN,$(UNAME)),CYGWIN) # 'x' must be kept or you'll have "Win32 error 5" @@ -131,7 +135,7 @@ else # end of sdl-simulator DLLTOOLFLAGS = --export-all DLLWRAPFLAGS = -s --entry _DllMain@12 --target=i386-mingw32 -mno-cygwin -$(OBJDIR)/%.rock : $(OBJDIR)/%.o $(BUILDDIR)/libplugin.a $(BITMAPLIBS) +$(OBJDIR)/%.rock : $(OBJDIR)/%.o $(call PRINTS,DLL $(@F))$(DLLTOOL) $(DLLTOOLFLAGS) -z $(OBJDIR)/$*.def $< $(SILENT)$(DLLWRAP) $(DLLWRAPFLAGS) --def $(OBJDIR)/$*.def $< $(BUILDDIR)/libplugin.a $(BITMAPLIBS) \ $(patsubst -l%,$(BUILDDIR)/lib%.a,$(CODECLIBS)) -o $@ @@ -149,17 +153,17 @@ endif # end of simulator section include $(TOOLSDIR)/make.inc -$(BUILDDIR)/libplugin.a: +pluginlib: $(SILENT)mkdir -p $(OBJDIR)/lib $(call PRINTS,MAKE in plugin/lib)$(MAKE) -C lib OBJDIR=$(OBJDIR)/lib $(LINKFILE): $(LDS) $(call PRINTS,build $(@F))cat $< | $(CC) -DMEMORYSIZE=$(MEMORYSIZE) $(INCLUDES) $(TARGET) $(DEFINES) -E -P - >$@ -$(SUBDIRS): $(BITMAPLIBS) +$(SUBDIRS): $(SILENT)mkdir -p $(OBJDIR)/$@ $(call PRINTS,MAKE in $@)$(MAKE) -C $@ OUTDIR=$(OBJDIR) OBJDIR=$(OBJDIR)/$@ \ - LINKBITMAPS="$(LINKBITMAPS)" BITMAPLIBS="$(BITMAPLIBS)" + LINKBITMAPS="$(LINKBITMAPS)" clean: $(call PRINTS,cleaning plugins)rm -f $(ROCKS) $(LINKFILE) $(OBJDIR)/*.rock $(DEPFILE) $(ELFS) \ |