$* doesn't work if the target doesn't use a wildcard. Furthermore the GNU make manual discourages its use. Using works, and automatically ensures the correct directory. zxbox.map and chessbox.map were put into the wrong dir (build dir) and overwrote each other.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19176 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Jens Arnold 2008-11-21 22:00:35 +00:00
parent fea18742a2
commit 5e4a6824bb
3 changed files with 9 additions and 9 deletions

View file

@ -25,7 +25,7 @@ else
CHESSBOX_INLDS := $(APPSDIR)/plugins/plugin.lds CHESSBOX_INLDS := $(APPSDIR)/plugins/plugin.lds
ROCKS += $(CHESSBOX_OBJDIR)/chessbox.rock ROCKS += $(CHESSBOX_OBJDIR)/chessbox.rock
endif endif
CHESSBOX_OVLFLAGS = -T$(CHESSBOX_OUTLDS) -Wl,--gc-sections -Wl,-Map,$*.map CHESSBOX_OVLFLAGS = -T$(CHESSBOX_OUTLDS) -Wl,--gc-sections -Wl,-Map,$(basename $@).map
CHESSBOX_OUTLDS = $(CHESSBOX_OBJDIR)/chessbox.lds CHESSBOX_OUTLDS = $(CHESSBOX_OBJDIR)/chessbox.lds
else else
### simulator ### simulator
@ -46,11 +46,11 @@ $(CHESSBOX_OUTLDS): $(CHESSBOX_INLDS) $(CHESSBOX_OBJ)
$(CHESSBOX_OBJDIR)/chessbox.rock: $(CHESSBOX_OBJ) $(CHESSBOX_OUTLDS) $(PLUGINBITMAPLIB) $(CHESSBOX_OBJDIR)/chessbox.rock: $(CHESSBOX_OBJ) $(CHESSBOX_OUTLDS) $(PLUGINBITMAPLIB)
$(CHESSBOX_OBJDIR)/chessbox.ovl: $(CHESSBOX_OBJ) $(CHESSBOX_OUTLDS) $(PLUGINBITMAPLIB) $(CHESSBOX_OBJDIR)/chessbox.ovl: $(CHESSBOX_OBJ) $(CHESSBOX_OUTLDS) $(PLUGINBITMAPLIB)
$(SILENT)$(CC) $(PLUGINFLAGS) -o $(CHESSBOX_OBJDIR)/$*.elf \ $(SILENT)$(CC) $(PLUGINFLAGS) -o $(basename $@).elf \
$(filter %.o, $^) \ $(filter %.o, $^) \
$(filter %.a, $^) \ $(filter %.a, $^) \
-lgcc $(CHESSBOX_OVLFLAGS) -lgcc $(CHESSBOX_OVLFLAGS)
$(call PRINTS,LD $(@F))$(OC) -O binary $(CHESSBOX_OBJDIR)/$*.elf $@ $(call PRINTS,LD $(@F))$(OC) -O binary $(basename $@).elf $@
# special pattern rule for compiling chessbox with extra flags # special pattern rule for compiling chessbox with extra flags
$(CHESSBOX_OBJDIR)/%.o: $(CHESSBOX_SRCDIR)/%.c $(PLUGINBITMAPLIB) $(CHESSBOX_SRCDIR)/chessbox.make $(CHESSBOX_OBJDIR)/%.o: $(CHESSBOX_SRCDIR)/%.c $(PLUGINBITMAPLIB) $(CHESSBOX_SRCDIR)/chessbox.make

View file

@ -26,7 +26,7 @@ else
ROCKBOY_INLDS := $(APPSDIR)/plugins/plugin.lds ROCKBOY_INLDS := $(APPSDIR)/plugins/plugin.lds
ROCKS += $(ROCKBOY_OBJDIR)/rockboy.rock ROCKS += $(ROCKBOY_OBJDIR)/rockboy.rock
endif endif
ROCKBOY_OVLFLAGS = -T$(ROCKBOY_OUTLDS) -Wl,--gc-sections -Wl,-Map,$(ROCKBOY_OBJDIR)/$*.map ROCKBOY_OVLFLAGS = -T$(ROCKBOY_OUTLDS) -Wl,--gc-sections -Wl,-Map,$(basename $@).map
ROCKBOY_OUTLDS = $(ROCKBOY_OBJDIR)/rockboy.lds ROCKBOY_OUTLDS = $(ROCKBOY_OBJDIR)/rockboy.lds
else else
### simulator ### simulator
@ -46,8 +46,8 @@ $(ROCKBOY_OUTLDS): $(ROCKBOY_INLDS) $(ROCKBOY_OBJ)
$(ROCKBOY_OBJDIR)/rockboy.rock: $(ROCKBOY_OBJ) $(ROCKBOY_OUTLDS) $(PLUGINBITMAPLIB) $(ROCKBOY_OBJDIR)/rockboy.rock: $(ROCKBOY_OBJ) $(ROCKBOY_OUTLDS) $(PLUGINBITMAPLIB)
$(ROCKBOY_OBJDIR)/rockboy.ovl: $(ROCKBOY_OBJ) $(ROCKBOY_OUTLDS) $(PLUGINBITMAPLIB) $(ROCKBOY_OBJDIR)/rockboy.ovl: $(ROCKBOY_OBJ) $(ROCKBOY_OUTLDS) $(PLUGINBITMAPLIB)
$(SILENT)$(CC) $(PLUGINFLAGS) -o $(ROCKBOY_OBJDIR)/$*.elf \ $(SILENT)$(CC) $(PLUGINFLAGS) -o $(basename $@).elf \
$(filter %.o, $^) \ $(filter %.o, $^) \
$(filter %.a, $^) \ $(filter %.a, $^) \
-lgcc $(ROCKBOY_OVLFLAGS) -lgcc $(ROCKBOY_OVLFLAGS)
$(call PRINTS,LD $(@F))$(OC) -O binary $(ROCKBOY_OBJDIR)/$*.elf $@ $(call PRINTS,LD $(@F))$(OC) -O binary $(basename $@).elf $@

View file

@ -36,7 +36,7 @@ ifdef SIMVER
ZXBOX_LDFLAGS = $(SHARED_FLAG) # <-- from Makefile ZXBOX_LDFLAGS = $(SHARED_FLAG) # <-- from Makefile
else else
ZXBOX_OUTLDS = $(ZXBOX_OBJDIR)/zxbox.lds ZXBOX_OUTLDS = $(ZXBOX_OBJDIR)/zxbox.lds
ZXBOX_LDFLAGS = -T$(ZXBOX_OUTLDS) -Wl,--gc-sections -Wl,-Map,$(BUILDDIR)/$*.map ZXBOX_LDFLAGS = -T$(ZXBOX_OUTLDS) -Wl,--gc-sections -Wl,-Map,$(basename $@).map
endif endif
$(ZXBOX_OUTLDS): $(ZXBOX_INLDS) $(ZXBOX_OBJ) $(ZXBOX_OUTLDS): $(ZXBOX_INLDS) $(ZXBOX_OBJ)
@ -45,11 +45,11 @@ $(ZXBOX_OUTLDS): $(ZXBOX_INLDS) $(ZXBOX_OBJ)
$(ZXBOX_OBJDIR)/zxbox.rock: $(ZXBOX_OBJ) $(ZXBOX_OUTLDS) $(PLUGINBITMAPLIB) $(ZXBOX_OBJDIR)/zxbox.rock: $(ZXBOX_OBJ) $(ZXBOX_OUTLDS) $(PLUGINBITMAPLIB)
$(ZXBOX_OBJDIR)/zxbox.ovl: $(ZXBOX_OBJ) $(ZXBOX_OUTLDS) $(PLUGINBITMAPLIB) $(PLUGINLIB) $(ZXBOX_OBJDIR)/zxbox.ovl: $(ZXBOX_OBJ) $(ZXBOX_OUTLDS) $(PLUGINBITMAPLIB) $(PLUGINLIB)
$(SILENT)$(CC) $(PLUGINFLAGS) -o $(ZXBOX_OBJDIR)/$*.elf \ $(SILENT)$(CC) $(PLUGINFLAGS) -o $(basename $@).elf \
$(filter %.o, $^) \ $(filter %.o, $^) \
$(filter %.a, $^) \ $(filter %.a, $^) \
-lgcc $(ZXBOX_LDFLAGS) -lgcc $(ZXBOX_LDFLAGS)
$(call PRINTS,LD $(@F))$(OC) -O binary $(ZXBOX_OBJDIR)/$*.elf $@ $(call PRINTS,LD $(@F))$(OC) -O binary $(basename $@).elf $@
# special pattern rule for compiling zxbox with extra flags # special pattern rule for compiling zxbox with extra flags
$(ZXBOX_OBJDIR)/%.o: $(ZXBOX_SRCDIR)/%.c $(PLUGINBITMAPLIB) $(ZXBOX_SRCDIR)/zxbox.make $(ZXBOX_OBJDIR)/%.o: $(ZXBOX_SRCDIR)/%.c $(PLUGINBITMAPLIB) $(ZXBOX_SRCDIR)/zxbox.make