kbuild: Move depmod call to a separate script
Michal Marek [Thu, 9 Jun 2011 13:35:22 +0000 (15:35 +0200)]
Do not bloat the Makefile with multiline shell statements. No
user-visible change intended.

Signed-off-by: Michal Marek <mmarek@suse.cz>

Makefile
scripts/depmod.sh [new file with mode: 0755]

index 60d4a67..4350937 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1110,11 +1110,6 @@ modules_install: _modinst_ _modinst_post
 
 PHONY += _modinst_
 _modinst_:
-       @if [ -z "`$(DEPMOD) -V 2>/dev/null | grep module-init-tools`" ]; then \
-               echo "Warning: you may need to install module-init-tools"; \
-               echo "See http://www.codemonkey.org.uk/docs/post-halloween-2.6.txt";\
-               sleep 1; \
-       fi
        @rm -rf $(MODLIB)/kernel
        @rm -f $(MODLIB)/source
        @mkdir -p $(MODLIB)/kernel
@@ -1531,12 +1526,7 @@ quiet_cmd_rmfiles = $(if $(wildcard $(rm-files)),CLEAN   $(wildcard $(rm-files))
 
 # Run depmod only if we have System.map and depmod is executable
 quiet_cmd_depmod = DEPMOD  $(KERNELRELEASE)
-      cmd_depmod = \
-       if [ -r System.map -a -x $(DEPMOD) ]; then                              \
-               $(DEPMOD) -ae -F System.map                                     \
-               $(if $(strip $(INSTALL_MOD_PATH)), -b $(INSTALL_MOD_PATH) )     \
-               $(KERNELRELEASE);                                               \
-       fi
+      cmd_depmod = $(srctree)/scripts/depmod.sh $(DEPMOD) $(KERNELRELEASE)
 
 # Create temporary dir for module support files
 # clean it up only when building all modules
diff --git a/scripts/depmod.sh b/scripts/depmod.sh
new file mode 100755 (executable)
index 0000000..9f205da
--- /dev/null
@@ -0,0 +1,25 @@
+#!/bin/sh
+#
+# A depmod wrapper used by the toplevel Makefile
+
+if test $# -ne 2; then
+       echo "Usage: $0 /sbin/depmod <kernelrelease>" >&2
+       exit 1
+fi
+DEPMOD=$1
+KERNELRELEASE=$2
+
+if ! "$DEPMOD" -V 2>/dev/null | grep -q module-init-tools; then
+       echo "Warning: you may need to install module-init-tools" >&2
+       echo "See http://www.codemonkey.org.uk/docs/post-halloween-2.6.txt" >&2
+       sleep 1
+fi
+
+if ! test -r System.map -a -x "$DEPMOD"; then
+       exit 0
+fi
+set -- -ae -F System.map
+if test -n "$INSTALL_MOD_PATH"; then
+       set -- "$@" -b "$INSTALL_MOD_PATH"
+fi
+exec "$DEPMOD" "$@" "$KERNELRELEASE"