summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulius Werner <jwerner@chromium.org>2023-12-06 16:08:06 -0800
committerPatrick Georgi <patrick@coreboot.org>2023-12-08 17:44:38 +0000
commita5954784283f8be3cf4bb574723280f3ee4b7527 (patch)
tree505f9b74cd34ea2cb6f63db9f83ba34c0eadd75c
parentc7a5c50760dfd1d98f4324f7455c566791422fc8 (diff)
Makefile: Make vboot_fw.a a .PHONY target
vboot_fw.a is built via a sub-invocation of make, but make is not able to track dependencies between different invocations. That means the toplevel make assumes that the vboot_fw.a target depends only on the dependencies explicitly listed in coreboot's Makefile (only config.h in this case), and thus assumes that if config.h didn't change it does not need to rebuild the library. This breaks incremental builds when files inside the vboot repository change. This patch marks the target as .PHONY so that it will always be rebuilt. The vboot Makefile's own dependency tracking will then ensure that on an incremental build we only rebuild the vboot sources that actually changed, so if nothing changed this will just add a simple and quick $(AR) call. Change-Id: I8bdd4e1589124914ba1e877e04b40ee709ea4140 Signed-off-by: Julius Werner <jwerner@chromium.org> Reviewed-on: https://review.coreboot.org/c/coreboot/+/79375 Reviewed-by: Patrick Georgi <patrick@coreboot.org> Reviewed-by: Yu-Ping Wu <yupingso@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
-rw-r--r--src/security/vboot/Makefile.inc2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/security/vboot/Makefile.inc b/src/security/vboot/Makefile.inc
index 1b3568a1ec..f5e7420e07 100644
--- a/src/security/vboot/Makefile.inc
+++ b/src/security/vboot/Makefile.inc
@@ -38,6 +38,8 @@ $$(VBOOT_LIB_$(1)): $(obj)/config.h
fwlib \
$(if $(CONFIG_SBOM_VBOOT),$$(abspath $$(dir $$(VBOOT_LIB_$(1))))/vboot_host.pc)
+.PHONY: $$(VBOOT_LIB_$(1))
+
$(1)-srcs += $$(VBOOT_LIB_$(1))
endef # vboot-for-stage