summaryrefslogtreecommitdiffstats
path: root/Documentation/kbuild
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2011-05-26 01:54:01 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2011-05-26 01:54:01 +0200
commitf3ae1c75203535f65448517e46c8dd70a56b6c71 (patch)
tree58f719cb97666dcfb3392c6c0547d6cbce2e68c8 /Documentation/kbuild
parentMerge branch 'for-2.6.40' of git://git.kernel.org/pub/scm/linux/kernel/git/ol... (diff)
parentxconfig: merge code path to conf_write() (diff)
downloadlinux-f3ae1c75203535f65448517e46c8dd70a56b6c71.tar.xz
linux-f3ae1c75203535f65448517e46c8dd70a56b6c71.zip
Merge branch 'kconfig-for-40' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6
* 'kconfig-for-40' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: xconfig: merge code path to conf_write() kconfig: do not record timestamp in .config gconfig: Hide unused left treeview when start up the interface gconfig: enable rules hint for main treeviews MAINTAINERS: Update KCONFIG entry kconfig-language: add to hints kconfig: Document the new "visible if" syntax kconfig: quiet commands when V=0 kconfig: change update-po-config to reflect new layout of arch/um kconfig: make update-po-config work in KBUILD_OUTPUT kconfig: rearrange clean-files kconfig: change gconf to modify hostprogs-y like nconf and mconf kconfig: change qconf to modify hostprogs-y like nconf and mconf kconfig: only build kxgettext when needed nconfig: Silence unused return values from wattrset kconfig: Do not record timestamp in auto.conf and autoconf.h kconfig: get rid of unused flags kconfig: allow multiple inclusion of the same file kconfig: Avoid buffer underrun in choice input
Diffstat (limited to 'Documentation/kbuild')
-rw-r--r--Documentation/kbuild/kconfig-language.txt32
-rw-r--r--Documentation/kbuild/kconfig.txt5
2 files changed, 31 insertions, 6 deletions
diff --git a/Documentation/kbuild/kconfig-language.txt b/Documentation/kbuild/kconfig-language.txt
index b507d61fd41c..44e2649fbb29 100644
--- a/Documentation/kbuild/kconfig-language.txt
+++ b/Documentation/kbuild/kconfig-language.txt
@@ -113,6 +113,13 @@ applicable everywhere (see syntax).
That will limit the usefulness but on the other hand avoid
the illegal configurations all over.
+- limiting menu display: "visible if" <expr>
+ This attribute is only applicable to menu blocks, if the condition is
+ false, the menu block is not displayed to the user (the symbols
+ contained there can still be selected by other symbols, though). It is
+ similar to a conditional "prompt" attribude for individual menu
+ entries. Default value of "visible" is true.
+
- numerical ranges: "range" <symbol> <symbol> ["if" <expr>]
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
@@ -303,7 +310,8 @@ menu:
"endmenu"
This defines a menu block, see "Menu structure" above for more
-information. The only possible options are dependencies.
+information. The only possible options are dependencies and "visible"
+attributes.
if:
@@ -381,3 +389,25 @@ config FOO
limits FOO to module (=m) or disabled (=n).
+Kconfig symbol existence
+~~~~~~~~~~~~~~~~~~~~~~~~
+The following two methods produce the same kconfig symbol dependencies
+but differ greatly in kconfig symbol existence (production) in the
+generated config file.
+
+case 1:
+
+config FOO
+ tristate "about foo"
+ depends on BAR
+
+vs. case 2:
+
+if BAR
+config FOO
+ tristate "about foo"
+endif
+
+In case 1, the symbol FOO will always exist in the config file (given
+no other dependencies). In case 2, the symbol FOO will only exist in
+the config file if BAR is enabled.
diff --git a/Documentation/kbuild/kconfig.txt b/Documentation/kbuild/kconfig.txt
index cca46b1a0f6c..c313d71324b4 100644
--- a/Documentation/kbuild/kconfig.txt
+++ b/Documentation/kbuild/kconfig.txt
@@ -48,11 +48,6 @@ KCONFIG_OVERWRITECONFIG
If you set KCONFIG_OVERWRITECONFIG in the environment, Kconfig will not
break symlinks when .config is a symlink to somewhere else.
-KCONFIG_NOTIMESTAMP
---------------------------------------------------
-If this environment variable exists and is non-null, the timestamp line
-in generated .config files is omitted.
-
______________________________________________________________________
Environment variables for '{allyes/allmod/allno/rand}config'