kbuild: warn redundant generic-y

The generic-y is redundant under the following condition:

- arch has its own implementation

- the same header is added to generated-y

- the same header is added to mandatory-y

If a redundant generic-y is found, the warning like follows is displayed:

scripts/Makefile.asm-generic:20: redundant generic-y found in arch/arm/include/asm/Kbuild: timex.h

I fixed up arch Kbuild files found by this.

Suggested-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>

+6 -13
-1
arch/arm/include/asm/Kbuild
··· 18 generic-y += serial.h 19 generic-y += simd.h 20 generic-y += sizes.h 21 - generic-y += timex.h 22 generic-y += trace_clock.h 23 24 generated-y += mach-types.h
··· 18 generic-y += serial.h 19 generic-y += simd.h 20 generic-y += sizes.h 21 generic-y += trace_clock.h 22 23 generated-y += mach-types.h
-1
arch/h8300/include/asm/Kbuild
··· 17 generic-y += ftrace.h 18 generic-y += futex.h 19 generic-y += hardirq.h 20 - generic-y += hash.h 21 generic-y += hw_irq.h 22 generic-y += irq_regs.h 23 generic-y += irq_work.h
··· 17 generic-y += ftrace.h 18 generic-y += futex.h 19 generic-y += hardirq.h 20 generic-y += hw_irq.h 21 generic-y += irq_regs.h 22 generic-y += irq_work.h
-1
arch/ia64/include/uapi/asm/Kbuild
··· 2 3 generated-y += unistd_64.h 4 generic-y += kvm_para.h 5 - generic-y += socket.h
··· 2 3 generated-y += unistd_64.h 4 generic-y += kvm_para.h
-2
arch/openrisc/include/asm/Kbuild
··· 15 generic-y += ftrace.h 16 generic-y += hardirq.h 17 generic-y += hw_irq.h 18 - generic-y += irq.h 19 generic-y += irq_regs.h 20 generic-y += irq_work.h 21 generic-y += kdebug.h ··· 34 generic-y += sections.h 35 generic-y += segment.h 36 generic-y += shmparam.h 37 - generic-y += string.h 38 generic-y += switch_to.h 39 generic-y += topology.h 40 generic-y += trace_clock.h
··· 15 generic-y += ftrace.h 16 generic-y += hardirq.h 17 generic-y += hw_irq.h 18 generic-y += irq_regs.h 19 generic-y += irq_work.h 20 generic-y += kdebug.h ··· 35 generic-y += sections.h 36 generic-y += segment.h 37 generic-y += shmparam.h 38 generic-y += switch_to.h 39 generic-y += topology.h 40 generic-y += trace_clock.h
-2
arch/parisc/include/asm/Kbuild
··· 1 generated-y += syscall_table_32.h 2 generated-y += syscall_table_64.h 3 generated-y += syscall_table_c32.h 4 - generic-y += barrier.h 5 generic-y += current.h 6 generic-y += device.h 7 generic-y += div64.h ··· 19 generic-y += preempt.h 20 generic-y += seccomp.h 21 generic-y += segment.h 22 - generic-y += topology.h 23 generic-y += trace_clock.h 24 generic-y += user.h 25 generic-y += vga.h
··· 1 generated-y += syscall_table_32.h 2 generated-y += syscall_table_64.h 3 generated-y += syscall_table_c32.h 4 generic-y += current.h 5 generic-y += device.h 6 generic-y += div64.h ··· 20 generic-y += preempt.h 21 generic-y += seccomp.h 22 generic-y += segment.h 23 generic-y += trace_clock.h 24 generic-y += user.h 25 generic-y += vga.h
-1
arch/powerpc/include/asm/Kbuild
··· 5 generic-y += div64.h 6 generic-y += export.h 7 generic-y += irq_regs.h 8 - generic-y += irq_work.h 9 generic-y += local64.h 10 generic-y += mcs_spinlock.h 11 generic-y += preempt.h
··· 5 generic-y += div64.h 6 generic-y += export.h 7 generic-y += irq_regs.h 8 generic-y += local64.h 9 generic-y += mcs_spinlock.h 10 generic-y += preempt.h
-1
arch/s390/include/asm/Kbuild
··· 20 generic-y += local64.h 21 generic-y += mcs_spinlock.h 22 generic-y += mm-arch-hooks.h 23 - generic-y += preempt.h 24 generic-y += rwsem.h 25 generic-y += trace_clock.h 26 generic-y += unaligned.h
··· 20 generic-y += local64.h 21 generic-y += mcs_spinlock.h 22 generic-y += mm-arch-hooks.h 23 generic-y += rwsem.h 24 generic-y += trace_clock.h 25 generic-y += unaligned.h
-1
arch/s390/include/uapi/asm/Kbuild
··· 3 4 generated-y += unistd_32.h 5 generated-y += unistd_64.h 6 - generic-y += socket.h
··· 3 4 generated-y += unistd_32.h 5 generated-y += unistd_64.h
-1
arch/x86/include/uapi/asm/Kbuild
··· 3 generated-y += unistd_32.h 4 generated-y += unistd_64.h 5 generated-y += unistd_x32.h 6 - generic-y += socket.h
··· 3 generated-y += unistd_32.h 4 generated-y += unistd_64.h 5 generated-y += unistd_x32.h
-1
arch/xtensa/include/asm/Kbuild
··· 15 generic-y += kdebug.h 16 generic-y += kmap_types.h 17 generic-y += kprobes.h 18 - generic-y += linkage.h 19 generic-y += local.h 20 generic-y += local64.h 21 generic-y += mcs_spinlock.h
··· 15 generic-y += kdebug.h 16 generic-y += kmap_types.h 17 generic-y += kprobes.h 18 generic-y += local.h 19 generic-y += local64.h 20 generic-y += mcs_spinlock.h
-1
arch/xtensa/include/uapi/asm/Kbuild
··· 2 3 generated-y += unistd_32.h 4 generic-y += kvm_para.h 5 - generic-y += socket.h
··· 2 3 generated-y += unistd_32.h 4 generic-y += kvm_para.h
+6
scripts/Makefile.asm-generic
··· 14 15 include scripts/Kbuild.include 16 17 # If arch does not implement mandatory headers, fallback to asm-generic ones. 18 mandatory-y := $(filter-out $(generated-y), $(mandatory-y)) 19 generic-y += $(foreach f, $(mandatory-y), $(if $(wildcard $(srctree)/$(src)/$(f)),,$(f)))
··· 14 15 include scripts/Kbuild.include 16 17 + redundant := $(filter $(mandatory-y) $(generated-y), $(generic-y)) 18 + redundant += $(foreach f, $(generic-y), $(if $(wildcard $(srctree)/$(src)/$(f)),$(f))) 19 + redundant := $(sort $(redundant)) 20 + $(if $(redundant),\ 21 + $(warning redundant generic-y found in $(src)/Kbuild: $(redundant))) 22 + 23 # If arch does not implement mandatory headers, fallback to asm-generic ones. 24 mandatory-y := $(filter-out $(generated-y), $(mandatory-y)) 25 generic-y += $(foreach f, $(mandatory-y), $(if $(wildcard $(srctree)/$(src)/$(f)),,$(f)))