kbuild: fix modules_install after a 'make vmlinux'
authorSam Ravnborg <sam@ravnborg.org>
Mon, 22 Oct 2007 09:23:07 +0000 (11:23 +0200)
committerSam Ravnborg <sam@ravnborg.org>
Mon, 22 Oct 2007 18:04:37 +0000 (20:04 +0200)
make vmlinux would delete the content of $(MODVERDIR)
equals .tmp_versions. This caused a subsequent
make modules_install to fail.

Fix it so we clean the directory only for the
modules build - but we still unconditionally create it so
we can do:
make dir/file.ko
without a preceeding make modules.

Reported by David Miller <davem@davemloft.net>

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Cc: David Miller <davem@davemloft.net>
Makefile

index 50bb50d..f4238b2 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1512,8 +1512,9 @@ quiet_cmd_depmod = DEPMOD  $(KERNELRELEASE)
        fi
 
 # Create temporary dir for module support files
-cmd_crmodverdir = $(Q)mkdir -p $(MODVERDIR); rm -f $(MODVERDIR)/*
-
+# clean it up only when building all modules
+cmd_crmodverdir = $(Q)mkdir -p $(MODVERDIR) \
+                  $(if $(KBUILD_MODULES),; rm -f $(MODVERDIR)/*)
 
 a_flags = -Wp,-MD,$(depfile) $(KBUILD_AFLAGS) $(AFLAGS_KERNEL) \
          $(NOSTDINC_FLAGS) $(KBUILD_CPPFLAGS) \