Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
[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>
  • Loading branch information
stefanha authored and Marty Connor committed Mar 4, 2010
1 parent 52ec5c3 commit 5782794
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions src/Makefile.housekeeping
Expand Up @@ -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
Expand Down

0 comments on commit 5782794

Please sign in to comment.