summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNico Huber <nico.h@gmx.de>2018-08-17 20:05:53 +0200
committerPatrick Georgi <pgeorgi@google.com>2018-09-13 13:58:29 +0000
commit3e51d530645059093e6dd27c4bbfafb8a216cd41 (patch)
treeeba72a05a204b276af0b7771dcb2330fd8286ae8
parent392e886552afa5c9d33bc443290c7c72303b6c34 (diff)
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>
-rw-r--r--Makefile.inc2
1 files changed, 2 insertions, 0 deletions
diff --git a/Makefile.inc b/Makefile.inc
index 68b0eb2523..8f58958412 100644
--- a/Makefile.inc
+++ b/Makefile.inc
@@ -961,7 +961,9 @@ endif # ifeq ($(CONFIG_FMDFILE),)
# 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 $< $@"