Patrick Georgi has submitted this change and it was merged. ( https://review.coreboot.org/28198 )
Change subject: Makefile.inc: Fix dependency tracking of fmap{_config.h,.desc} ......................................................................
Makefile.inc: Fix dependency tracking of fmap{_config.h,.desc}
GNU make is too smart (or too stupid?) for empty recipes. In the case of empty recipes, GNU make doesn't consider the target as updated even if its prerequisites are. So if we told make to rebuild `build/romstage/ lib/cbfs.o` for instance, and the FMAP changed, it rerun the fmaptool recipe (as a prerequisite) but only considered `cbfs.o` to be updated by chance.
Just not leaving the recipes empty seems to help here. I seeemed to remember that it wasn't that easy, but it fixes the issue for me...
Change-Id: Ic7ecb88cf7df7f2488defd47ea02255fc10a67e9 Signed-off-by: Nico Huber nico.h@gmx.de Reviewed-on: https://review.coreboot.org/28198 Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Patrick Georgi pgeorgi@google.com --- M Makefile.inc 1 file changed, 2 insertions(+), 0 deletions(-)
Approvals: build bot (Jenkins): Verified Patrick Georgi: Looks good to me, approved
diff --git a/Makefile.inc b/Makefile.inc index 68b0eb2..8f58958 100644 --- a/Makefile.inc +++ b/Makefile.inc @@ -961,7 +961,9 @@
# generated at the same time as fmap.fmap $(obj)/fmap_config.h: $(obj)/fmap.fmap + true $(obj)/fmap.desc: $(obj)/fmap.fmap + true
$(obj)/fmap.fmap: $(obj)/fmap.fmd $(FMAPTOOL) echo " FMAP $(FMAPTOOL) -h $(obj)/fmap_config.h $< $@"