summary refs log tree commit diff
path: root/Makefile
diff options
context:
space:
mode:
authorSam Ravnborg <sam@ravnborg.org>2005-07-07 17:56:08 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2005-07-07 18:23:36 -0700
commit155ad605b3c9c5874ff068f23c6ea8537190e0a8 (patch)
tree29de329925f9d7238f7d38c699a794ee39d672dc /Makefile
parentf182ae626189d8a346aae142e7b8b182663dac44 (diff)
downloadlinux-155ad605b3c9c5874ff068f23c6ea8537190e0a8.tar.gz
[PATCH] kbuild: build a single module using 'make dir/module.ko'
Using the syntax:
make dir/module.ko

kbuild now allows one to build a module including the final link stage.
This is usefull when one only wants to compile a single module and thus do
not have to wait until a full kernel has finished compiling.  Tested by:
randy_dunlap <rdunlap@xenotime.net>

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile4
1 files changed, 4 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index 2717223d8666..9cf07e7b9f88 100644
--- a/Makefile
+++ b/Makefile
@@ -792,6 +792,9 @@ export CPPFLAGS_vmlinux.lds += -P -C -U$(ARCH)
 	$(Q)$(MAKE) $(build)=$(@D) $@
 %.o: %.c scripts FORCE
 	$(Q)$(MAKE) $(build)=$(@D) $@
+%.ko: scripts FORCE
+	$(Q)$(MAKE) KBUILD_MODULES=$(if $(CONFIG_MODULES),1) $(build)=$(@D) $(@:.ko=.o)
+	$(Q)$(MAKE) -rR -f $(srctree)/scripts/Makefile.modpost
 %/:      scripts prepare FORCE
 	$(Q)$(MAKE) KBUILD_MODULES=$(if $(CONFIG_MODULES),1) $(build)=$(@D)
 %.lst: %.c scripts FORCE
@@ -1033,6 +1036,7 @@ help:
 	@echo  '  modules_install - Install all modules'
 	@echo  '  dir/            - Build all files in dir and below'
 	@echo  '  dir/file.[ois]  - Build specified target only'
+	@echo  '  dir/file.ko     - Build module including final link'
 	@echo  '  rpm		  - Build a kernel as an RPM package'
 	@echo  '  tags/TAGS	  - Generate tags file for editors'
 	@echo  '  cscope	  - Generate cscope index'