Commit 16886949 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab

docs: kbuild: fix build with pdf and fix some minor issues

The tag ".. include" should be replaced by ".. literalinclude" at
issues.rst, otherwise it causes TeX to crash due to excessive usage
of stack with Sphinx 2.0.

While here, solve a few minor issues at the kbuild book output by
adding extra blank lines.
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+samsung@kernel.org>
parent 8bb0776b
Recursion issue #1 ================
------------------ Recursion issues
================
.. include:: Kconfig.recursion-issue-01 issue #1
:literal: --------
Recursion issue #2 .. literalinclude:: Kconfig.recursion-issue-01
------------------ :language: kconfig
.. include:: Kconfig.recursion-issue-02 issue #2
:literal: --------
.. literalinclude:: Kconfig.recursion-issue-02
:language: kconfig
...@@ -18,7 +18,7 @@ This file lists all modules that are built into the kernel. This is used ...@@ -18,7 +18,7 @@ This file lists all modules that are built into the kernel. This is used
by modprobe to not fail when trying to load something builtin. by modprobe to not fail when trying to load something builtin.
modules.builtin.modinfo modules.builtin.modinfo
-------------------------------------------------- -----------------------
This file contains modinfo from all modules that are built into the kernel. This file contains modinfo from all modules that are built into the kernel.
Unlike modinfo of a separate module, all fields are prefixed with module name. Unlike modinfo of a separate module, all fields are prefixed with module name.
...@@ -153,6 +153,7 @@ Install script called when using "make install". ...@@ -153,6 +153,7 @@ Install script called when using "make install".
The default name is "installkernel". The default name is "installkernel".
The script will be called with the following arguments: The script will be called with the following arguments:
- $1 - kernel version - $1 - kernel version
- $2 - kernel image file - $2 - kernel image file
- $3 - kernel map file - $3 - kernel map file
......
...@@ -53,6 +53,7 @@ A menu entry can have a number of attributes. Not all of them are ...@@ -53,6 +53,7 @@ A menu entry can have a number of attributes. Not all of them are
applicable everywhere (see syntax). applicable everywhere (see syntax).
- type definition: "bool"/"tristate"/"string"/"hex"/"int" - type definition: "bool"/"tristate"/"string"/"hex"/"int"
Every config option must have a type. There are only two basic types: Every config option must have a type. There are only two basic types:
tristate and string; the other types are based on these two. The type tristate and string; the other types are based on these two. The type
definition optionally accepts an input prompt, so these two examples definition optionally accepts an input prompt, so these two examples
...@@ -66,11 +67,13 @@ applicable everywhere (see syntax). ...@@ -66,11 +67,13 @@ applicable everywhere (see syntax).
prompt "Networking support" prompt "Networking support"
- input prompt: "prompt" <prompt> ["if" <expr>] - input prompt: "prompt" <prompt> ["if" <expr>]
Every menu entry can have at most one prompt, which is used to display Every menu entry can have at most one prompt, which is used to display
to the user. Optionally dependencies only for this prompt can be added to the user. Optionally dependencies only for this prompt can be added
with "if". with "if".
- default value: "default" <expr> ["if" <expr>] - default value: "default" <expr> ["if" <expr>]
A config option can have any number of default values. If multiple A config option can have any number of default values. If multiple
default values are visible, only the first defined one is active. default values are visible, only the first defined one is active.
Default values are not limited to the menu entry where they are Default values are not limited to the menu entry where they are
...@@ -112,6 +115,7 @@ applicable everywhere (see syntax). ...@@ -112,6 +115,7 @@ applicable everywhere (see syntax).
Optionally dependencies for this default value can be added with "if". Optionally dependencies for this default value can be added with "if".
- dependencies: "depends on" <expr> - dependencies: "depends on" <expr>
This defines a dependency for this menu entry. If multiple This defines a dependency for this menu entry. If multiple
dependencies are defined, they are connected with '&&'. Dependencies dependencies are defined, they are connected with '&&'. Dependencies
are applied to all other options within this menu entry (which also are applied to all other options within this menu entry (which also
...@@ -127,6 +131,7 @@ applicable everywhere (see syntax). ...@@ -127,6 +131,7 @@ applicable everywhere (see syntax).
default y default y
- reverse dependencies: "select" <symbol> ["if" <expr>] - reverse dependencies: "select" <symbol> ["if" <expr>]
While normal dependencies reduce the upper limit of a symbol (see While normal dependencies reduce the upper limit of a symbol (see
below), reverse dependencies can be used to force a lower limit of below), reverse dependencies can be used to force a lower limit of
another symbol. The value of the current menu symbol is used as the another symbol. The value of the current menu symbol is used as the
...@@ -146,6 +151,7 @@ applicable everywhere (see syntax). ...@@ -146,6 +151,7 @@ applicable everywhere (see syntax).
the illegal configurations all over. the illegal configurations all over.
- weak reverse dependencies: "imply" <symbol> ["if" <expr>] - weak reverse dependencies: "imply" <symbol> ["if" <expr>]
This is similar to "select" as it enforces a lower limit on another This is similar to "select" as it enforces a lower limit on another
symbol except that the "implied" symbol's value may still be set to n symbol except that the "implied" symbol's value may still be set to n
from a direct dependency or with a visible prompt. from a direct dependency or with a visible prompt.
...@@ -176,6 +182,7 @@ applicable everywhere (see syntax). ...@@ -176,6 +182,7 @@ applicable everywhere (see syntax).
configure that subsystem out without also having to unset these drivers. configure that subsystem out without also having to unset these drivers.
- limiting menu display: "visible if" <expr> - limiting menu display: "visible if" <expr>
This attribute is only applicable to menu blocks, if the condition is This attribute is only applicable to menu blocks, if the condition is
false, the menu block is not displayed to the user (the symbols false, the menu block is not displayed to the user (the symbols
contained there can still be selected by other symbols, though). It is contained there can still be selected by other symbols, though). It is
...@@ -183,12 +190,14 @@ applicable everywhere (see syntax). ...@@ -183,12 +190,14 @@ applicable everywhere (see syntax).
entries. Default value of "visible" is true. entries. Default value of "visible" is true.
- numerical ranges: "range" <symbol> <symbol> ["if" <expr>] - numerical ranges: "range" <symbol> <symbol> ["if" <expr>]
This allows to limit the range of possible input values for int This allows to limit the range of possible input values for int
and hex symbols. The user can only input a value which is larger than and hex symbols. The user can only input a value which is larger than
or equal to the first symbol and smaller than or equal to the second or equal to the first symbol and smaller than or equal to the second
symbol. symbol.
- help text: "help" or "---help---" - help text: "help" or "---help---"
This defines a help text. The end of the help text is determined by This defines a help text. The end of the help text is determined by
the indentation level, this means it ends at the first line which has the indentation level, this means it ends at the first line which has
a smaller indentation than the first line of the help text. a smaller indentation than the first line of the help text.
...@@ -197,6 +206,7 @@ applicable everywhere (see syntax). ...@@ -197,6 +206,7 @@ applicable everywhere (see syntax).
the file as an aid to developers. the file as an aid to developers.
- misc options: "option" <symbol>[=<value>] - misc options: "option" <symbol>[=<value>]
Various less common options can be defined via this option syntax, Various less common options can be defined via this option syntax,
which can modify the behaviour of the menu entry and its config which can modify the behaviour of the menu entry and its config
symbol. These options are currently possible: symbol. These options are currently possible:
...@@ -325,6 +335,7 @@ end a menu entry: ...@@ -325,6 +335,7 @@ end a menu entry:
The first five also start the definition of a menu entry. The first five also start the definition of a menu entry.
config:: config::
"config" <symbol> "config" <symbol>
<config options> <config options>
...@@ -332,6 +343,7 @@ This defines a config symbol <symbol> and accepts any of above ...@@ -332,6 +343,7 @@ This defines a config symbol <symbol> and accepts any of above
attributes as options. attributes as options.
menuconfig:: menuconfig::
"menuconfig" <symbol> "menuconfig" <symbol>
<config options> <config options>
......
...@@ -264,6 +264,7 @@ NCONFIG_MODE ...@@ -264,6 +264,7 @@ NCONFIG_MODE
This mode shows all sub-menus in one large tree. This mode shows all sub-menus in one large tree.
Example:: Example::
make NCONFIG_MODE=single_menu nconfig make NCONFIG_MODE=single_menu nconfig
---------------------------------------------------------------------- ----------------------------------------------------------------------
...@@ -277,9 +278,12 @@ Searching in xconfig: ...@@ -277,9 +278,12 @@ Searching in xconfig:
names, so you have to know something close to what you are names, so you have to know something close to what you are
looking for. looking for.
Example: Example::
Ctrl-F hotplug Ctrl-F hotplug
or
or::
Menu: File, Search, hotplug Menu: File, Search, hotplug
lists all config symbol entries that contain "hotplug" in lists all config symbol entries that contain "hotplug" in
......
...@@ -384,6 +384,7 @@ more details, with real examples. ...@@ -384,6 +384,7 @@ more details, with real examples.
----------------------- -----------------------
Kbuild tracks dependencies on the following: Kbuild tracks dependencies on the following:
1) All prerequisite files (both `*.c` and `*.h`) 1) All prerequisite files (both `*.c` and `*.h`)
2) `CONFIG_` options used in all prerequisite files 2) `CONFIG_` options used in all prerequisite files
3) Command-line used to compile target 3) Command-line used to compile target
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment