[PATCH 3/8] kbuild: move depmod rule to scripts/Makefile.modinst

From: Masahiro Yamada
Date: Wed Aug 23 2023 - 07:51:04 EST


depmod is a part of the module installation.

scripts/Makefile.modinst is a better place to run it.

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

Makefile | 8 --------
scripts/Makefile.modinst | 9 +++++++++
scripts/depmod.sh | 10 ++++++----
3 files changed, 15 insertions(+), 12 deletions(-)

diff --git a/Makefile b/Makefile
index e2dfa3b994f7..c9c8019e4720 100644
--- a/Makefile
+++ b/Makefile
@@ -509,7 +509,6 @@ LEX = flex
YACC = bison
AWK = awk
INSTALLKERNEL := installkernel
-DEPMOD = depmod
PERL = perl
PYTHON3 = python3
CHECK = sparse
@@ -1871,15 +1870,8 @@ PHONY += modules_check
modules_check: $(MODORDER)
$(Q)$(CONFIG_SHELL) $(srctree)/scripts/modules-check.sh $<

-quiet_cmd_depmod = DEPMOD $(MODLIB)
- cmd_depmod = $(CONFIG_SHELL) $(srctree)/scripts/depmod.sh $(DEPMOD) \
- $(KERNELRELEASE)
-
modules_install:
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modinst
-ifndef modules_sign_only
- $(call cmd,depmod)
-endif

else # CONFIG_MODULES

diff --git a/scripts/Makefile.modinst b/scripts/Makefile.modinst
index ab0c5bd1a60f..7a64ece9b826 100644
--- a/scripts/Makefile.modinst
+++ b/scripts/Makefile.modinst
@@ -86,6 +86,15 @@ $(dst)/%.ko: $(extmod_prefix)%.ko FORCE
$(call cmd,strip)
$(call cmd,sign)

+__modinst: depmod
+
+PHONY += depmod
+depmod: $(modules)
+ $(call cmd,depmod)
+
+quiet_cmd_depmod = DEPMOD $(MODLIB)
+ cmd_depmod = $(srctree)/scripts/depmod.sh $(KERNELRELEASE)
+
else

$(dst)/%.ko: FORCE
diff --git a/scripts/depmod.sh b/scripts/depmod.sh
index fca689ba4f21..ee771ccb1f9c 100755
--- a/scripts/depmod.sh
+++ b/scripts/depmod.sh
@@ -3,12 +3,14 @@
#
# A depmod wrapper used by the toplevel Makefile

-if test $# -ne 2; then
- echo "Usage: $0 /sbin/depmod <kernelrelease>" >&2
+if test $# -ne 1; then
+ echo "Usage: $0 <kernelrelease>" >&2
exit 1
fi
-DEPMOD=$1
-KERNELRELEASE=$2
+
+KERNELRELEASE=$1
+
+: ${DEPMOD:=depmod}

if ! test -r System.map ; then
echo "Warning: modules_install: missing 'System.map' file. Skipping depmod." >&2
--
2.39.2