summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2008-09-29 20:19:45 (GMT)
committerYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2008-09-29 20:19:45 (GMT)
commitcce0841d9664deb14035fe91615e5eda62a93f07 (patch)
tree240ed06dd628e1c79c2653b4e7a96d9e7bc8f5d7 /docs
parentfa3f4b4f053ad0c6d04851c86f218a82c4e985b4 (diff)
Rework the way EXPERIMENTAL kernels are marked as such.
/trunk/kconfig/kconfig.mk | 51 25 26 0 ++++++++++++++++++++++---------------------- /trunk/docs/overview.txt | 47 47 0 0 +++++++++++++++++++++++++++++++++++++++++ /trunk/config/kernel/bare-metal.in | 1 1 0 0 + 3 files changed, 73 insertions(+), 26 deletions(-)
Diffstat (limited to 'docs')
-rw-r--r--docs/overview.txt47
1 files changed, 47 insertions, 0 deletions
diff --git a/docs/overview.txt b/docs/overview.txt
index ae37d67..cd704aa 100644
--- a/docs/overview.txt
+++ b/docs/overview.txt
@@ -659,6 +659,53 @@ The "functions" file API:
- default to:
- all empty
+Kernel specific |
+----------------+
+
+A kernel is defined by:
+
+ - a human-readable name, in lower case letters, with numbers as appropriate.
+ The underscore is allowed; space and special characters are not (although
+ they are internally replaced with underscores.
+ Eg.: linux, bare-metal
+ - a file in "config/kernel/", named after the kernel name, and suffixed with
+ ".in".
+ Eg.: config/kernel/linux.in, config/kernel/bare-metal.in
+
+The kernel's ".in" file must contain:
+ > an optional lines containing exactly "# EXPERIMENTAL", starting on the
+ first column, and without any following space or other character.
+ If this line is present, then this kernel is considered EXPERIMENTAL,
+ and correct dependency on EXPERIMENTAL will be set.
+ > the config option "KERNEL_%kernel_name%" (where %kernel_name% is to be
+ replaced with the actual kernel name, with all special characters and
+ spaces replaced by underscores).
+ That config option must have *neither* a type, *nor* a prompt! Also, it can
+ *not* depends on EXPERIMENTAL.
+ Eg.: KERNEL_linux, KERNEL_bare_metal
+ + mandatory:
+ defines a (terse) help entry for this kernel.
+ Eg.:
+ config KERNEL_bare_metal
+ help
+ Build a compiler for use without any kernel.
+ + optional:
+ selects adequate associated config options.
+ Eg.:
+ config KERNEL_bare_metal
+ select BARE_METAL
+ help
+ Build a compiler for use without any kernel.
+
+ > other kernel specific options, at your discretion. Note however that, to
+ avoid name-clashing, such options should be prefixed with
+ "KERNEL_%kernel_name%", where %kernel_name% is again tp be replaced with
+ the actual kernel name.
+ (Note: due to historical reasons, and lack of time to clean up the code,
+ I may have left some config options that do not completely conform to
+ this, as the kernel name was written all upper case. However, the prefix
+ is unique among kernels, and does not cause harm).
+
Adding a new version of a component |
------------------------------------+