Messages in this thread Patch in this message | | | Date | Fri, 12 Apr 2013 15:52:44 -0600 | From | Stephen Warren <> | Subject | Re: [PATCH] Kbuild: Avoid DTB rebuilds if source files are untouched |
| |
On 04/12/2013 01:40 AM, Vineet Gupta wrote: > On 04/09/2013 07:40 PM, Vineet Gupta wrote: >> On 04/04/2013 11:06 PM, Stephen Warren wrote: >> >>> +.SECONDARY: $(obj)/%.dtb.S >>> + >>> $(obj)/%.dtb.S: $(obj)/%.dtb >>> $(call cmd,dt_S_dtb) >>> >>> and no longer see make rm'ing the .dtb.S file. So, the .SECONDARY is >>> behaving as expected, and should fix your problem. >> Interestingly, if I make the file name explicit, .SECONDARY works for me too. >> >> .SECONDARY: $(obj)/angel4.dtb.S >> >> http://stackoverflow.com/questions/5426934/why-this-makefile-removes-my-goal >> >> Is this a make bug or is it related to when the rule is parsed by make ! >> >> -Vineet > > Ping ? Anyone know how to resolve this
After installing the ARC toolchain (which was a bit painful to track down and install...) I reproduced your exact problem. I believe the patch below fixes it:
diff --git a/arch/arc/boot/dts/Makefile b/arch/arc/boot/dts/Makefile index 5776835..2f2cf23 100644 --- a/arch/arc/boot/dts/Makefile +++ b/arch/arc/boot/dts/Makefile @@ -8,6 +8,8 @@ endif obj-y += $(builtindtb-y).dtb.o targets += $(builtindtb-y).dtb
+.SECONDARY: $(obj)/$(builtindtb-y).dtb.S + dtbs: $(addprefix $(obj)/, $(builtindtb-y).dtb)
clean-files := *.dtb
| |