On Thu, 15 Nov 2012 11:31:38 -0700, Stephen Warren <swarren@xxxxxxxxxxxxx> wrote: > On 11/15/2012 11:20 AM, Grant Likely wrote: > > On Thu, Nov 15, 2012 at 6:09 PM, Stephen Warren <swarren@xxxxxxxxxxxxx> wrote: > >> On 11/15/2012 04:51 AM, Grant Likely wrote: > >>> Grant Likely wrote: > >>>> Or how about: I could pick up the patch with only the MIPS hunk and > >>>> every other user can be fixed up independently to use the new rule. > >>> > >>> Here's a trial patch to fix up ARM. Does this look correct? This patch > >>> depends on the generic dtb build rule already being applied. > >> > >> I think the patch looks OK technically, except for one minor comment below. > >> > >> One issue with this patch is that it moves *.dts from arch/arm/boot to > >> arch/arm/boot/dts, which means everyone has to adjust their scripts/... > >> that package/install/... the kernel. I guess it's an easy change for > >> people to make, but could easily catch people unawares if they do > >> incremental builds so that arch/arm/boot/*.dtb still exists but is stale. > > > > True. We could temporarily remove or rename if the same file exists in > > the directory below to help people catch that problem. I really would > > like to clean up that build rule to be consistent though. > > > > The other option is to move all the .dts files into the boot > > directory, but I don't think that is a good idea at all. > > Maybe we can just add "rm *.dtb" to the following rules in > boot/Makefile, before calling the child make? > > %.dtb: scripts > - $(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@ > + $(Q)$(MAKE) $(build)=$(boot)/dts MACHINE=$(MACHINE) $(boot)/dts/$@ > > dtbs: scripts > - $(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@ > + $(Q)$(MAKE) $(build)=$(boot)/dts MACHINE=$(MACHINE) dtbs > > >>> +targets += dtbs > >> > >> Doesn't that make the "dtbs" target always run by default? Perhaps > >> that's reasonable though, and doesn't actually affect anything since the > >> make command for this directory always specifies an explicit target? > >> > >> Or, was that meant to be the following that got removed from ../Makefile? > >> > >> targets += $(dtb-y) > > > > Yes it is supposed to be the same thing. Doesn't it effectively do the > > same since dtbs depends on $(dtb-y)? > > Ah, I think so yes. > > I guess anyway that $(targets) is presumably ignored if an explicit > build target is requested from make. Can you pull into your series and get it working. The merge window is going to open this week, so I have to push it back to v3.9 anyway. g. -- Grant Likely, B.Sc, P.Eng. Secret Lab Technologies, Ltd.