[PATCH 0/3] kbuild: generate modules.builtin without Makefile.modbuiltin or tristate.conf

From: Masahiro Yamada
Date: Thu Dec 19 2019 - 03:34:40 EST



This series re-implements the way of generating modules.builtin

Current approach:
Collect all CONFIG options with 'tristate' type into tristate.conf,
and parse Makefiles to get the list of builtin modules.

New approach:
Use MODULE_LICENSE() tags that compiled into vmlinux.
This information appears in modules.builtin.info,
but trimmed from vmlinux itself. So the image size does
not change.

This slightly speeds up builds because Kbuild no longer needs
to traverse the source tree twice.

Also, the code diff is appealing:
8 files changed, 35 insertions(+), 135 deletions(-)

I think this is OK, but I hope module people can check it.



Masahiro Yamada (3):
kbuild: add stringify helper to quote a string passed to C files
kbuild: pass KBUILD_MODFILE when compiling builtin objects
kbuild: create modules.builtin without Makefile.modbuiltin or
tristate.conf

Documentation/kbuild/kconfig.rst | 5 ---
Makefile | 21 +++---------
include/linux/module.h | 12 ++++++-
scripts/Kbuild.include | 10 +++---
scripts/Makefile.lib | 17 ++++++----
scripts/Makefile.modbuiltin | 57 --------------------------------
scripts/kconfig/confdata.c | 45 ++-----------------------
scripts/link-vmlinux.sh | 4 +++
8 files changed, 36 insertions(+), 135 deletions(-)
delete mode 100644 scripts/Makefile.modbuiltin

--
2.17.1