Kernel Configuration
Both the command line and the Python API have two
arguments for configuration: --kconfig/kconfig and
--kconfig-add/kconfig_add.
kconfig can only be specified once, and specifies the main kernel configuration. It can be specified in three different ways:
- a named configuration target (
defconfig, etc); - a path to a config file on the local filesystem;
- a (relative) path to a config file in the source tree;
- a URL to a config file, in which case TuxMake will download it.
kconfig_add specifies extra configuration to apply on top of the main configuration specified by kconfig. It can be specified in the following ways:
- an in-tree configuration target (e.g.
kvm_guest.config); - an explicit make target (
make:targetname); TuxMake will callmake targetnameduring the configuration step (e.g.make:kselftest-mergewill causemake kselftest-mergeto be called). - an explicit interactive make target (
imake:targetname); likemake:targetname, but runs interactively (i.e. you can interact with it with the keyboard). Use for interactive targets such asmenuconfig. - a path to a config file on the local filesystem;
- a URL to a config file, in which case TuxMake will download it;
- a config fragment matching one of these:
CONFIG_*=[y|m|n]# CONFIG_* is not set
kconfig_add can be specified multiple times. Any in-tree configuration target
and explicit make targets will be built with make, and then all of the others
will be saved to a local file in the order they were passed. They will be then
merged on top of the existing configuration by calling
scripts/kconfig/merge_config.sh and make olddefconfig.