]>
Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | |
2 | In this document you will find information about: | |
3 | - how to build external modules | |
4 | - how to make your module use kbuild infrastructure | |
5 | - how kbuild will install a kernel | |
6 | - how to install modules in a non-standard location | |
7 | ||
8 | === Table of Contents | |
9 | ||
10 | === 1 Introduction | |
11 | === 2 How to build external modules | |
12 | --- 2.1 Building external modules | |
13 | --- 2.2 Available targets | |
14 | --- 2.3 Available options | |
15 | --- 2.4 Preparing the kernel tree for module build | |
06300b21 | 16 | --- 2.5 Building separate files for a module |
1da177e4 LT |
17 | === 3. Example commands |
18 | === 4. Creating a kbuild file for an external module | |
19 | === 5. Include files | |
20 | --- 5.1 How to include files from the kernel include dir | |
21 | --- 5.2 External modules using an include/ dir | |
253dfa6e | 22 | --- 5.3 External modules using several directories |
1da177e4 LT |
23 | === 6. Module installation |
24 | --- 6.1 INSTALL_MOD_PATH | |
25 | --- 6.2 INSTALL_MOD_DIR | |
040fcc81 SR |
26 | === 7. Module versioning & Module.symvers |
27 | --- 7.1 Symbols fron the kernel (vmlinux + modules) | |
28 | --- 7.2 Symbols and external modules | |
29 | --- 7.3 Symbols from another external module | |
1da177e4 LT |
30 | === 8. Tips & Tricks |
31 | --- 8.1 Testing for CONFIG_FOO_BAR | |
32 | ||
33 | ||
34 | ||
35 | === 1. Introduction | |
36 | ||
37 | kbuild includes functionality for building modules both | |
38 | within the kernel source tree and outside the kernel source tree. | |
39 | The latter is usually referred to as external modules and is used | |
40 | both during development and for modules that are not planned to be | |
41 | included in the kernel tree. | |
42 | ||
43 | What is covered within this file is mainly information to authors | |
44 | of modules. The author of an external modules should supply | |
45 | a makefile that hides most of the complexity so one only has to type | |
98a1e444 | 46 | 'make' to build the module. A complete example will be present in |
1da177e4 LT |
47 |