Lines Matching +full:foo +full:- +full:bar
6 ------------
11 +- Code maturity level options
12 | +- Prompt for development and/or incomplete code/drivers
13 +- General setup
14 | +- Networking support
15 | +- System V IPC
16 | +- BSD Process Accounting
17 | +- Sysctl support
18 +- Loadable module support
19 | +- Enable loadable module support
20 | +- Set version information on all module symbols
21 | +- Kernel module loader
22 +- ...
29 ------------
50 ---------------
55 - type definition: "bool"/"tristate"/"string"/"hex"/"int"
69 - input prompt: "prompt" <prompt> ["if" <expr>]
75 - default value: "default" <expr> ["if" <expr>]
104 c) Sub-driver behavior or similar options for a driver that is
110 - type definition + default value::
117 - dependencies: "depends on" <expr>
124 bool "foo" if BAR
125 default y if BAR
129 depends on BAR
130 bool "foo"
133 - reverse dependencies: "select" <symbol> ["if" <expr>]
146 By abusing select you are able to select a symbol FOO even
147 if FOO depends on BAR that is not set.
148 In general use select only for non-visible symbols
153 - weak reverse dependencies: "imply" <symbol> ["if" <expr>]
161 config FOO
162 tristate "foo"
167 depends on BAR
172 FOO BAR BAZ's default choice for BAZ
187 Note: If the combination of FOO=y and BAR=m causes a link error,
193 baz_register(&foo);
197 Note: If the feature provided by BAZ is highly desirable for FOO,
198 FOO should imply not only BAZ, but also its dependency BAR::
200 config FOO
201 tristate "foo"
202 imply BAR
205 - limiting menu display: "visible if" <expr>
213 - numerical ranges: "range" <symbol> <symbol> ["if" <expr>]
220 - help text: "help"
226 - module attribute: "modules"
232 -----------------
260 (4) If value of <symbol1> is respectively lower, greater, lower-or-equal,
261 or greater-or-equal than value of <symbol2>, it returns 'y',
264 (6) Returns the result of (2-/expr/).
272 There are two types of symbols: constant and non-constant symbols.
273 Non-constant symbols are the most common ones and are defined with the
274 'config' statement. Non-constant symbols consist entirely of alphanumeric
281 --------------
305 - the child entry must become invisible, if the parent is set to 'n'
306 - the child entry must only be visible, if the parent is visible::
324 --------------
330 - config
331 - menuconfig
332 - choice/endchoice
333 - comment
334 - menu/endmenu
335 - if/endif
336 - source
459 This sets the config program's title bar if the config program chooses
471 -------------
491 depends on HAVE_GENERIC_IOMAP && FOO
495 obj-$(CONFIG_GENERIC_IOMAP) += iomap.o
522 depends on $(cc-option,-fstack-protector)
529 def_bool $(success,$(srctree)/scripts/cc-check-foo.sh $(CC))
533 To restrict a component build to module-only, qualify its config symbol
536 config FOO
537 depends on BAR && m
539 limits FOO to module (=m) or disabled (=n).
541 Compile-testing
547 it allows continuous-integration systems to compile-test the code on a more
549 Note that compile-tested code should avoid crashing when run on a system where
557 architectures and platforms. This is especially true for on-SoC IP cores,
569 Such a dependency can be relaxed by combining it with the compile-testing rule
572 config FOO
573 bool "Support for foo hardware"
581 when trying to use that loadable module from a built-in driver.
586 config FOO
587 tristate "Support for foo hardware"
588 depends on BAR || !BAR
590 This means that there is either a dependency on BAR that disallows
591 the combination of FOO=y with BAR=m, or BAR is completely disabled.
595 config FOO
596 tristate "Support for foo hardware"
600 def_tristate BAR || !BAR
622 Read: Documentation/kbuild/Kconfig.recursion-issue-01
626 make KBUILD_KCONFIG=Documentation/kbuild/Kconfig.recursion-issue-01 allnoconfig
631 Read: Documentation/kbuild/Kconfig.recursion-issue-02
635 make KBUILD_KCONFIG=Documentation/kbuild/Kconfig.recursion-issue-02 allnoconfig
644 a) Remove any superfluous "select FOO" or "depends on FOO"
647 b1) Swap all "select FOO" to "depends on FOO" or,
649 b2) Swap all "depends on FOO" to "select FOO"
652 Documentation/kbuild/Kconfig.recursion-issue-01 through the removal
658 Documentation/kbuild/Kconfig.recursion-issue-02.
667 06b718c01208 select A -> depends on A
668 c22eacfe82f9 depends on A -> depends on B
669 6a91e854442c select A -> depends on A
670 118c565a8f2e select A -> select B
671 f004e5594705 select A -> depends on A
672 c7861f37b4c6 depends on A -> (null)
673 80c69915e5fb select A -> (null) (1)
674 c2218e26c0d0 select A -> depends on A (1)
675 d6ae99d04e1c select A -> depends on A
676 95ca19cf8cbf select A -> depends on A
677 8f057d7bca54 depends on A -> (null)
678 8f057d7bca54 depends on A -> select A
679 a0701f04846e select A -> depends on A
680 0c8b92f7f259 depends on A -> (null)
681 e4e9e0540928 select A -> depends on A (2)
683 7b1fff7e4fdf select A -> depends on A
684 86c747d2a4f0 select A -> depends on A
685 d9f9ab51e55e select A -> depends on A
686 0c51a4d8abd6 depends on A -> select A (3)
687 e98062ed6dc4 select A -> depends on A (3)
688 91e5d284a7f1 select A -> (null)
742 .. [1] https://gsd.uwaterloo.ca/sites/default/files/vm-2013-berger.pdf
743 .. [2] https://gsd.uwaterloo.ca/sites/default/files/ase241-berger_0.pdf
756 propositional formula extracted from CPP #ifdefs and build-rules into a SAT
763 https://kernelnewbies.org/KernelProjects/kconfig-sat
765 .. [4] https://www.cs.cornell.edu/~sabhar/chapters/SATSolvers-KR-Handbook.pdf
766 .. [5] https://gsd.uwaterloo.ca/sites/default/files/vm-2013-berger.pdf