[PATCH] firmware: Makefile: fix firmware file dependency tracking

Marco Felsch m.felsch at pengutronix.de
Thu Dec 1 06:54:18 PST 2022

Commit 663894d99c64 ("firmware: refactor firmware/Makefile") aligned the
barebox code with the kernel code. This commit replaced the usage of
$(fw-external-y) by $(obj-pbl-y) and added the '.gen.o' suffix directly
but didn't adapted the patsubst logic for tracking the binary firmware
files. As result a firmware binary file update is not recognized by make
and and won't make into the final binary. This commit fixes this and so
an update will be recognized automatically without require a 'make
clean' before.

Fixes: 663894d99c64 ("firmware: refactor firmware/Makefile")
Signed-off-by: Marco Felsch <m.felsch at pengutronix.de>
 firmware/Makefile | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/firmware/Makefile b/firmware/Makefile
index f6ff5b831b..da341871d6 100644
--- a/firmware/Makefile
+++ b/firmware/Makefile
@@ -79,11 +79,11 @@ $(obj)/%.sum: $(obj)/% FORCE
 clean-files += *.sha.bin *.sum
 # The .o files depend on the binaries directly; the .S files don't.
-$(patsubst %,$(obj)/%.gen.o, $(obj-pbl-y)): $(obj)/%.gen.o: $(fwdir)/%
+$(patsubst %.gen.o,$(obj)/%.gen.o, $(obj-pbl-y)): $(obj)/%.gen.o: $(fwdir)/%
 # The same for pbl:
-$(patsubst %,$(obj)/%.gen.pbl.o, $(obj-pbl-y)): $(obj)/%.gen.pbl.o: $(fwdir)/%
-$(patsubst %,$(obj)/%.extgen.pbl.o, $(pbl-y)): $(obj)/%.extgen.pbl.o: $(fwdir)/%
+$(patsubst %.gen.o,$(obj)/%.gen.pbl.o, $(obj-pbl-y)): $(obj)/%.gen.pbl.o: $(fwdir)/%
+$(patsubst %.gen.o,$(obj)/%.extgen.pbl.o, $(pbl-y)): $(obj)/%.extgen.pbl.o: $(fwdir)/%
 pbl-y := $(addsuffix .extgen.o, $(fw-external-y))

More information about the barebox mailing list