[PATCH 02/15] kbuild: refactor single builds of *.ko

From: Masahiro Yamada
Date: Sat Aug 27 2022 - 22:41:47 EST


Remove the potentially invalid modules.order instead of using
the temporary file.

Also, KBUILD_MODULES is don't care for single builds. No need to
cancel it.

Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx>
---

Makefile | 16 ++++------------
1 file changed, 4 insertions(+), 12 deletions(-)

diff --git a/Makefile b/Makefile
index f04126181885..badd318c5524 100644
--- a/Makefile
+++ b/Makefile
@@ -1787,6 +1787,8 @@ modules modules_install:
@echo >&2 '***'
@exit 1

+KBUILD_MODULES :=
+
endif # CONFIG_MODULES

# Single targets
@@ -1813,18 +1815,12 @@ $(single-ko): single_modpost
$(single-no-ko): descend
@:

-ifeq ($(KBUILD_EXTMOD),)
-# For the single build of in-tree modules, use a temporary file to avoid
-# the situation of modules_install installing an invalid modules.order.
-MODORDER := .modules.tmp
-endif
-
+# Remove MODORDER when done because it is not the real one.
PHONY += single_modpost
single_modpost: $(single-no-ko) modules_prepare
$(Q){ $(foreach m, $(single-ko), echo $(extmod_prefix)$m;) } > $(MODORDER)
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
-
-KBUILD_MODULES := 1
+ $(Q)rm -f $(MODORDER)

export KBUILD_SINGLE_TARGETS := $(addprefix $(extmod_prefix), $(single-no-ko))

@@ -1834,10 +1830,6 @@ build-dirs := $(foreach d, $(build-dirs), \

endif

-ifndef CONFIG_MODULES
-KBUILD_MODULES :=
-endif
-
# Handle descending into subdirectories listed in $(build-dirs)
# Preset locale variables to speed up the build process. Limit locale
# tweaks to this spot to avoid wrong language settings when running
--
2.34.1