Hi Eldred,
On 15/03/2021 22:25, Eldred HABERT wrote:
The bug is the following two lines:
Must remake target 'res/tpnk_dev_logo_tiles.2bpp.pb16.size'.
Successfully remade target file
'res/tpnk_dev_logo_tiles.2bpp.pb16.size'.
This .size file appears to be a generated header for assembly source,
and the assembler has generated rules for it:
obj/starting_screen.o dep/starting_screen.mk :
res/tpnk_dev_logo_tiles.2bpp.pb16.size
res/tpnk_dev_logo_tiles.2bpp.pb16.size:
I understand the need for the second rule, but it also defines an empty
recipe, and this one doesn't apply:
$(RESDIR)/%.pb16.size: $(RESDIR)/%
@$(MKDIR_P) $(@D)
$(call filesize,$<,16) > $(RESDIR)/$*.pb16.size
...because the prerequisite res/tpnk_dev_logo_tiles.2bpp doesn't exist,
and no rule exists to create it.
There is a
src/res/starting_screen/tpnk_dev_logo/tpnk_dev_logo_tiles.2bpp, and you
have VPATH set to src, but I don't think VPATH is supposed to
recursively search subdirectories. A solution would have to identify
these subdirectories somehow, e.g.:
SRCDIRS := $(shell find $(SRCDIR) -type d)
vpath %.2bpp $(SRCDIRS)
$(RESDIR)/%.2bpp: %.2bpp
@$(MKDIR_P) $(@D)
cp $< $@
That allowed res/tpnk_dev_logo_tiles.2bpp.pb16.size to build for me.
Cheers,
Steven