aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Hajnoczi <stefanha@gmail.com>2010-03-01 20:34:47 +0000
committerMarty Connor <mdc@etherboot.org>2010-03-04 11:25:36 -0500
commit5782794e20f15f0f31207d9bc6f1350842532048 (patch)
tree24308709b27a7a85d0811366eafe3ee028bc3d3c
parent52ec5c3803cd7498590202e64980a24adfe9a685 (diff)
downloadipxe-5782794e20f15f0f31207d9bc6f1350842532048.zip
ipxe-5782794e20f15f0f31207d9bc6f1350842532048.tar.gz
ipxe-5782794e20f15f0f31207d9bc6f1350842532048.tar.bz2
[build] Disable ccache for embedded.o
Embedded image support uses .incbin in inline assembly to include binary files. The file dependency is not spotted by ccache when deciding whether or not to rebuild embedded.o. This results in builds that contain an outdated version of the embedded image when ccache is used. Reported-by: Tim 'Shaggy' Bielawa <tbielawa@jabber.org> Reported-by: Matt Domsch <Matt_Domsch@dell.com> Signed-off-by: Stefan Hajnoczi <stefanha@gmail.com> Signed-off-by: Marty Connor <mdc@etherboot.org>
-rw-r--r--src/Makefile.housekeeping7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/Makefile.housekeeping b/src/Makefile.housekeeping
index 1f5e115..8ba7e44 100644
--- a/src/Makefile.housekeeping
+++ b/src/Makefile.housekeeping
@@ -511,6 +511,13 @@ EMBED_ALL := $(foreach i,$(call seq,1,$(words $(EMBEDDED_FILES))),\
\"$(notdir $(word $(i),$(EMBEDDED_FILES)))\" ))
$(BIN)/embedded.o : $(EMBEDDED_FILES) $(EMBEDDED_LIST)
+
+# This file uses .incbin inline assembly to include a binary file.
+# Unfortunately ccache does not detect this dependency and caches builds even
+# when the binary file has changed.
+#
+$(BIN)/embedded.o : override CC := env CCACHE_DISABLE=1 $(CC)
+
CFLAGS_embedded = -DEMBED_ALL="$(EMBED_ALL)"
# Generate the NIC file from the parsed source files. The NIC file is