02.08.2010 21:28, Sam Ravnborg skrev: > On Mon, Aug 02, 2010 at 11:51:11AM +0300, Thomas Backlund wrote: >> Hi, >> (please cc me as I'm not subscribed) >> >> updating from make 3.81 to 3.82 gets me this: >> >> [tho...@tmb linux-2.6.35]$ cp arch/powerpc/configs/ppc64_defconfig .config >> [tho...@tmb linux-2.6.35]$ LC_ALL=C make oldconfig ARCH=powerpc >> /mnt/work/2.6.35/linux-2.6.35/arch/powerpc/Makefile:183: *** mixed >> implicit and normal rules. Stop. >> >> The lines are: >> >> 182: >> 183: $(BOOT_TARGETS): vmlinux >> 184: $(Q)$(MAKE) ARCH=ppc64 $(build)=$(boot) $(patsubst >> %,$(boot)/%,$@) >> 185: >> >> BOOT_TARGETS are defined on line 166 as: >> BOOT_TARGETS = zImage zImage.initrd uImage zImage% dtbImage% treeImage.% >> cuImage.% simpleImage.% >> >> >> Now it's not a regression in the kernel as the same happends with the >> 2.6.34 tree too. >> >> (btw, the host I'm syncing the defconfig with is a x86_64 machine) >> >> >> Now, I dont know if this is "intended breakage" by the make update, or >> if the Makefile needs to be updated.... >> >> Any ideas how to fix ? > > This is in the category "intended breakage". > We had a similar issue in the top-level Makefile which Paul (IIRC) > helped me to fix long time ago. > > To fix popwerpc I suggest something along these lines. > [Note: I did not test it - please do so. > > Sam > > [PATCH] powerpc: fix build with make 3.82 > > Thomas Backlund reported that the powerpc build broke with make 3.82. > It failed with the following message: > > arch/powerpc/Makefile:183: *** mixed implicit and normal rules. Stop. > > The fix is to avoid mixing non-wildcard and wildcard targets. > > Reported-by: Thomas Backlund <t...@mandriva.org> > Cc: Michal Marek <mma...@suse.cz> > Signed-off-by: Sam Ravnborg <s...@ravnborg.org> > --- > diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile > index 77cfe7a..ad88b21 100644 > --- a/arch/powerpc/Makefile > +++ b/arch/powerpc/Makefile > @@ -163,9 +163,11 @@ drivers-$(CONFIG_OPROFILE) += > arch/powerpc/oprofile/ > # Default to zImage, override when needed > all: zImage > > -BOOT_TARGETS = zImage zImage.initrd uImage zImage% dtbImage% treeImage.% > cuImage.% simpleImage.% > +# With make 3.82 we cannot mix normal and wildcard targets > +BOOT_TARGETS1 := zImage zImage.initrd uImaged > +BOOT_TARGETS2 := zImage% dtbImage% treeImage.% cuImage.% simpleImage.% > > -PHONY += $(BOOT_TARGETS) > +PHONY += $(BOOT_TARGETS1) $(BOOT_TARGETS2) > > boot := arch/$(ARCH)/boot > > @@ -180,7 +182,9 @@ relocs_check: arch/powerpc/relocs_check.pl vmlinux > zImage: relocs_check > endif > > -$(BOOT_TARGETS): vmlinux > +$(BOOT_TARGETS1): vmlinux > + $(Q)$(MAKE) ARCH=ppc64 $(build)=$(boot) $(patsubst %,$(boot)/%,$@) > +$(BOOT_TARGETS2): vmlinux > $(Q)$(MAKE) ARCH=ppc64 $(build)=$(boot) $(patsubst %,$(boot)/%,$@) > > bootwrapper_install %.dtb:
Thanks, this seems to fix the first issue, but then I get the same erro on the following line 190: 190: bootwrapper_install %.dtb: 191: $(Q)$(MAKE) ARCH=ppc64 $(build)=$(boot) $(patsubst %,$(boot)/%,$@) -- Thomas _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev