From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephen Warren Subject: Re: [PATCH] Kbuild: Avoid DTB rebuilds if source files are untouched Date: Wed, 03 Apr 2013 10:18:26 -0600 Message-ID: <515C5652.8070705@wwwdotorg.org> References: <1364973141-16354-1-git-send-email-vgupta@synopsys.com> <515BD6B8.1020607@synopsys.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Return-path: Received: from avon.wwwdotorg.org ([70.85.31.133]:48928 "EHLO avon.wwwdotorg.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758798Ab3DCQSa (ORCPT ); Wed, 3 Apr 2013 12:18:30 -0400 In-Reply-To: <515BD6B8.1020607@synopsys.com> Sender: linux-arch-owner@vger.kernel.org List-ID: To: Vineet Gupta Cc: "linux-arch@vger.kernel.org" , linux-kernel@vger.kernel.org, Michal Marek , Stephen Warren , Grant Likely , linux-kbuild@vger.kernel.org On 04/03/2013 01:14 AM, Vineet Gupta wrote: > forgot to CC linux-arch > > On 04/03/2013 12:42 PM, Vineet Gupta wrote: >> Currently, for every ARC kernel build I see the following: >> >> --------------->8----------------- >> DTB arch/arc/boot/dts/angel4.dtb.S >> AS arch/arc/boot/dts/angel4.dtb.o >> LD arch/arc/boot/dts/built-in.o >> rm arch/arc/boot/dts/angel4.dtb.S <-- forces rebuild next iter >> CHK kernel/config_data.h >> --------------->8----------------- I assume that's because the file is an intermediate file, and only built due to a chain of build rules, and hence make clean it up itself after the build? >> diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib >> +.PRECIOUS: $(obj)/%.dtb.S >> + >> $(obj)/%.dtb.S: $(obj)/%.dtb >> $(call cmd,dt_S_dtb) I'm not sure if .PRECIOUS is correct here. That prevents make from deleting the file if make is CTRL-C'd in the middle of generating it. Couldn't that leave a stale/corrupt file around that'd break the build. Judging by: http://www.gnu.org/software/make/manual/html_node/Special-Targets.html I think .SECONDARY might be a better choice? Does that solve the problem you're seeing?