diff options
author | Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | 2008-09-29 20:19:45 (GMT) |
---|---|---|
committer | Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | 2008-09-29 20:19:45 (GMT) |
commit | cce0841d9664deb14035fe91615e5eda62a93f07 (patch) | |
tree | 240ed06dd628e1c79c2653b4e7a96d9e7bc8f5d7 /docs/overview.txt | |
parent | fa3f4b4f053ad0c6d04851c86f218a82c4e985b4 (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/overview.txt')
-rw-r--r-- | docs/overview.txt | 47 |
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 | ------------------------------------+ |