image: fix device profile specific COMPILE targets
authorMichael Pratt <mcpratt@pm.me>
Tue, 22 Nov 2022 00:37:39 +0000 (00:37 +0000)
committerDaniel Golle <daniel@makrotopia.org>
Mon, 19 Dec 2022 12:27:35 +0000 (12:27 +0000)
Commit a01d23e75 ("image: always rebuild kernel loaders")
is a step in the right direction, but exposed some issues
and regressions in the makefile.

Some of the files made by device specific COMPILE targets
start with an "append" command (i.e. >> instead of > redirection)
and if the file already exists, the target file is the
input to itself before the first recipe-specified input.

Fixes: a01d23e75 ("image: always rebuild kernel loaders")
Fixes: a7fb589e8 ("image: always rebuild kernel loaders")
Signed-off-by: Michael Pratt <mcpratt@pm.me>
include/image.mk

index e9dc53f82ead22adf11425de2c016b1a8a4ea88d..5d9d4acb414dfa35b669c47f9f9194c418379961 100644 (file)
@@ -520,6 +520,7 @@ define Device/Build/compile
   $$(_COMPILE_TARGET): $(KDIR)/$(1)
   $(eval $(call Device/Export,$(KDIR)/$(1)))
   $(KDIR)/$(1): FORCE
+       rm -f $(KDIR)/$(1)
        $$(call concat_cmd,$(COMPILE/$(1)))
 
 endef