diff options
author | Julius Werner <jwerner@chromium.org> | 2023-12-06 16:08:06 -0800 |
---|---|---|
committer | Patrick Georgi <patrick@coreboot.org> | 2023-12-08 17:44:38 +0000 |
commit | a5954784283f8be3cf4bb574723280f3ee4b7527 (patch) | |
tree | 505f9b74cd34ea2cb6f63db9f83ba34c0eadd75c | |
parent | c7a5c50760dfd1d98f4324f7455c566791422fc8 (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.inc | 2 |
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 |