]> git.baikalelectronics.ru Git - kernel.git/commit
kbuild: do not read $(KBUILD_EXTMOD)/Module.symvers
authorMasahiro Yamada <yamada.masahiro@socionext.com>
Thu, 3 Oct 2019 10:29:14 +0000 (19:29 +0900)
committerMasahiro Yamada <yamada.masahiro@socionext.com>
Mon, 11 Nov 2019 11:07:03 +0000 (20:07 +0900)
commit57d7c0c9191b8b1655ca3bd7e522f15ecdcb67fb
tree8d527ecd64d4f181f7da81211e1348c609e1c9a2
parenta9a4ca45eab63376ed14671f8ca37d8b16816f2f
kbuild: do not read $(KBUILD_EXTMOD)/Module.symvers

Since commit ecc2647c7c68 ("kbuild: improved modversioning support for
external modules"), the external module build reads Module.symvers in
the directory of the module itself, then dumps symbols back into it.
It accumulates stale symbols in the file when you build an external
module incrementally.

The idea behind it was, as the commit log explained, you can copy
Modules.symvers from one module to another when you need to pass symbol
information between two modules. However, the manual copy of the file
sounds questionable to me, and containing stale symbols is a downside.

Some time later, commit 98fd2d00a554 ("kbuild: Add new Kbuild variable
KBUILD_EXTRA_SYMBOLS") introduced a saner approach.

So, this commit removes the former one. Going forward, the external
module build dumps symbols into Module.symvers to be carried via
KBUILD_EXTRA_SYMBOLS, but never reads it automatically.

With the -I option removed, there is no one to set the external_module
flag unless KBUILD_EXTRA_SYMBOLS is passed. Now the -i option does it
instead.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Documentation/kbuild/modules.rst
scripts/Makefile.modpost
scripts/mod/modpost.c