Adding Support for Menuconfig/Kconfig in My Project

Why isn't my Kconfig entry appearing in menuconfig?

ARCH_OMAP34XX is not defined it seems. If it were, you would see ARCH_OMAP34XX [=y] or [=n]. But not [=ARCH_OMAP34XX].

How does lxdialog and kconfig (menuconfig) work together?

Kconfig consists of:

  • a parser of the Kconfig files, which is generated by flex/bison;
  • an internal model of the parsed files + the business logic of dependencies etc., which you can find in symbol.c, expr.c, etc.
  • several front-ends using several UI libraries, each of which has its own source file, e.g. mconf.c for the lxdialog front-end;
  • the lxdialog library itself is distributed as part of kconfig.

kconfiglib.py is an alternative implementation of the parser, internal model and business logic, which makes it possible to read the Kconfig files and to read and write .config files from python. As far as I know, however, there are no front-ends based on kconfiglib. It's also not distributed as part of the kernel.

kconfig-frontends, finally, is a stand-alone clone of the Kconfig implementation that is part of the kernel. It makes it possible to use Kconfig in other projects without having to copy it and maintain it separately.

Kconfig: How to prevent a specific CONFIG_* switch, when this leads to an issue?

The documentation states you can use depends on <expr>, so you can do:

depends on !OTHER_DRIVER


Related Topics



Leave a reply



Submit