kbuild: patch to Documentation/kbuild/modules.txt
First off, thanks for the kbuild docs, they are very useful! Second, I've attached a patch to modules.txt (from 2.6.14.2) with a "compile" fix to a Makefile example, and some trivial spelling/grammar nits. Please let me know if you want the patch in some other format (eg not MIME), or if I should go bother someone else about it. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
This commit is contained in:
parent
cb1a7b4df7
commit
98a1e44411
|
@ -38,7 +38,7 @@ included in the kernel tree.
|
||||||
What is covered within this file is mainly information to authors
|
What is covered within this file is mainly information to authors
|
||||||
of modules. The author of an external modules should supply
|
of modules. The author of an external modules should supply
|
||||||
a makefile that hides most of the complexity so one only has to type
|
a makefile that hides most of the complexity so one only has to type
|
||||||
'make' to buld the module. A complete example will be present in
|
'make' to build the module. A complete example will be present in
|
||||||
chapter ¤. Creating a kbuild file for an external module".
|
chapter ¤. Creating a kbuild file for an external module".
|
||||||
|
|
||||||
|
|
||||||
|
@ -69,7 +69,7 @@ when building an external module.
|
||||||
|
|
||||||
--- 2.2 Available targets
|
--- 2.2 Available targets
|
||||||
|
|
||||||
$KDIR refers to path to kernel source top-level directory
|
$KDIR refers to the path to the kernel source top-level directory
|
||||||
|
|
||||||
make -C $KDIR M=`pwd`
|
make -C $KDIR M=`pwd`
|
||||||
Will build the module(s) located in current directory.
|
Will build the module(s) located in current directory.
|
||||||
|
@ -87,11 +87,11 @@ when building an external module.
|
||||||
make -C $KDIR M=$PWD modules_install
|
make -C $KDIR M=$PWD modules_install
|
||||||
Install the external module(s).
|
Install the external module(s).
|
||||||
Installation default is in /lib/modules/<kernel-version>/extra,
|
Installation default is in /lib/modules/<kernel-version>/extra,
|
||||||
but may be prefixed with INSTALL_MOD_PATH - see separate chater.
|
but may be prefixed with INSTALL_MOD_PATH - see separate chapter.
|
||||||
|
|
||||||
make -C $KDIR M=$PWD clean
|
make -C $KDIR M=$PWD clean
|
||||||
Remove all generated files for the module - the kernel
|
Remove all generated files for the module - the kernel
|
||||||
source directory is not moddified.
|
source directory is not modified.
|
||||||
|
|
||||||
make -C $KDIR M=`pwd` help
|
make -C $KDIR M=`pwd` help
|
||||||
help will list the available target when building external
|
help will list the available target when building external
|
||||||
|
@ -99,7 +99,7 @@ when building an external module.
|
||||||
|
|
||||||
--- 2.3 Available options:
|
--- 2.3 Available options:
|
||||||
|
|
||||||
$KDIR refer to path to kernel src
|
$KDIR refers to the path to the kernel source top-level directory
|
||||||
|
|
||||||
make -C $KDIR
|
make -C $KDIR
|
||||||
Used to specify where to find the kernel source.
|
Used to specify where to find the kernel source.
|
||||||
|
@ -206,11 +206,11 @@ following files:
|
||||||
|
|
||||||
KERNELDIR := /lib/modules/`uname -r`/build
|
KERNELDIR := /lib/modules/`uname -r`/build
|
||||||
all::
|
all::
|
||||||
$(MAKE) -C $KERNELDIR M=`pwd` $@
|
$(MAKE) -C $(KERNELDIR) M=`pwd` $@
|
||||||
|
|
||||||
# Module specific targets
|
# Module specific targets
|
||||||
genbin:
|
genbin:
|
||||||
echo "X" > 8123_bini.o_shipped
|
echo "X" > 8123_bin.o_shipped
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -341,13 +341,13 @@ directory and therefore needs to deal with this in their kbuild file.
|
||||||
EXTRA_CFLAGS := -Iinclude
|
EXTRA_CFLAGS := -Iinclude
|
||||||
8123-y := 8123_if.o 8123_pci.o 8123_bin.o
|
8123-y := 8123_if.o 8123_pci.o 8123_bin.o
|
||||||
|
|
||||||
Note that in the assingment there is no space between -I and the path.
|
Note that in the assignment there is no space between -I and the path.
|
||||||
This is a kbuild limitation and no space must be present.
|
This is a kbuild limitation: there must be no space present.
|
||||||
|
|
||||||
|
|
||||||
=== 6. Module installation
|
=== 6. Module installation
|
||||||
|
|
||||||
Modules which are included in the kernel is installed in the directory:
|
Modules which are included in the kernel are installed in the directory:
|
||||||
|
|
||||||
/lib/modules/$(KERNELRELEASE)/kernel
|
/lib/modules/$(KERNELRELEASE)/kernel
|
||||||
|
|
||||||
|
@ -365,7 +365,7 @@ External modules are installed in the directory:
|
||||||
=> Install dir: /frodo/lib/modules/$(KERNELRELEASE)/kernel
|
=> Install dir: /frodo/lib/modules/$(KERNELRELEASE)/kernel
|
||||||
|
|
||||||
INSTALL_MOD_PATH may be set as an ordinary shell variable or as in the
|
INSTALL_MOD_PATH may be set as an ordinary shell variable or as in the
|
||||||
example above be specified on the commandline when calling make.
|
example above be specified on the command line when calling make.
|
||||||
INSTALL_MOD_PATH has effect both when installing modules included in
|
INSTALL_MOD_PATH has effect both when installing modules included in
|
||||||
the kernel as well as when installing external modules.
|
the kernel as well as when installing external modules.
|
||||||
|
|
||||||
|
@ -384,7 +384,7 @@ External modules are installed in the directory:
|
||||||
|
|
||||||
=== 7. Module versioning
|
=== 7. Module versioning
|
||||||
|
|
||||||
Module versioning are enabled by the CONFIG_MODVERSIONS tag.
|
Module versioning is enabled by the CONFIG_MODVERSIONS tag.
|
||||||
|
|
||||||
Module versioning is used as a simple ABI consistency check. The Module
|
Module versioning is used as a simple ABI consistency check. The Module
|
||||||
versioning creates a CRC value of the full prototype for an exported symbol and
|
versioning creates a CRC value of the full prototype for an exported symbol and
|
||||||
|
|
Loading…
Reference in New Issue