On 2019-02-11 17:38, Paolo Bonzini wrote: > Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> > --- > docs/devel/kconfig.rst | 284 +++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 284 insertions(+) > create mode 100644 docs/devel/kconfig.rst
Thanks for writing this up - that's a really helpful text! > diff --git a/docs/devel/kconfig.rst b/docs/devel/kconfig.rst > new file mode 100644 > index 0000000000..b653c43b12 > --- /dev/null > +++ b/docs/devel/kconfig.rst > @@ -0,0 +1,284 @@ [...] > +Unlike Linux, there is no user interface to edit the configuration, which is > instead > +specified in per-target files under the ``default-configs/`` directory of the > +QEMU source tree. This is because, unlike Linux, configuration and > dependencies can be > +treated as a black box when building QEMU; the default configuration that > QEMU > +ships with should be okay in almost all cases. I'd like to suggest to replace "Linux" with "Linux-Kconfig". [...] > +**reverse dependencies**: ``select <symbol> [if <expr>]`` > + > + While ``depends on`` forces a symbol to false, reverse dependencies can be > + used to force another symbol to true. In the following example, > + ``CONFIG_BAZ`` will be true whenever ``CONFIG_FOO`` is true:: > + > + config FOO > + select BAZ > + > + The optional expression will prevent ``select`` from having any effect > + unless it is true. > + > + Note that unlike Linux, QEMU will detect contradictions between ``depends > on`` and dito Thomas