kbuild: add real-prereqs shorthand for $(filter-out FORCE,$^)
authorMasahiro Yamada <yamada.masahiro@socionext.com>
Thu, 17 Jan 2019 10:02:43 +0000 (19:02 +0900)
committerMasahiro Yamada <yamada.masahiro@socionext.com>
Mon, 28 Jan 2019 00:11:17 +0000 (09:11 +0900)
commitafa974b771281fd89e8fdcb71152152f17fb8303
treeb6a3de04148c2207d3cd094b70820160e24d0420
parent5d680056cb6de18f0221e321ee51d60ccd700781
kbuild: add real-prereqs shorthand for $(filter-out FORCE,$^)

In Kbuild, if_changed and friends must have FORCE as a prerequisite.

Hence, $(filter-out FORCE,$^) or $(filter-out $(PHONY),$^) is a common
idiom to get the names of all the prerequisites except phony targets.

Add real-prereqs as a shorthand.

Note:
We cannot replace $(filter %.o,$^) in cmd_link_multi-m because $^ may
include auto-generated dependencies from the .*.cmd file when a single
object module is changed into a multi object module. Refer to commit
69ea912fda74 ("kbuild: remove unneeded link_multi_deps"). I added some
comment to avoid accidental breakage.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Acked-by: Rob Herring <robh@kernel.org>
Documentation/devicetree/bindings/Makefile
arch/mips/boot/Makefile
arch/powerpc/boot/Makefile
arch/s390/boot/Makefile
arch/x86/realmode/rm/Makefile
scripts/Kbuild.include
scripts/Makefile.build
scripts/Makefile.lib
scripts/Makefile.modpost