Mixing implicit and pattern rules in one line works for make 3.81 as a 'hole' in the parser for certain specific cases. In 3.82, the parser was tightened in this respect and that "hole" was closed, hence the mixing of rules "dtbs %.dtb:" causes the following error.
[path]/arch/arm/Makefile:292: *** mixed implicit and normal rules. Stop.
The patch is to fix the error by writing the mixing rules into two.
Reported-by: Andy Green andy.green@linaro.org Signed-off-by: Shawn Guo shawn.guo@linaro.org --- arch/arm/Makefile | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/arch/arm/Makefile b/arch/arm/Makefile index 1be856a..bb797e4 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -289,7 +289,10 @@ zImage Image xipImage bootpImage uImage: vmlinux zinstall uinstall install: vmlinux $(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $@
-dtbs %.dtb: +%.dtb: + $(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@ + +dtbs: $(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@
# We use MRPROPER_FILES and CLEAN_FILES now