My goal is to change kbuild configs using the command line without messing up dependencies.
For this I've created a 'reference' config by editing my default .config
with make menuconfig
. The 'only' thing I've changed was changing from 64 bit to 32 bit.
Now I took my original config and applied the following command (from the linux kernel root directory)
scripts/kconfig/merge_config.sh original.conf 32bit.conf
The content of 32bit.conf
is simply CONFIG_64=n
.
After diffing the two .config
s from make menuconfig
and my command I see that almost every change from make menuconfig
is also present in the other file. But only almost every change.
$ diff .config.mkmenuconfig .config.command
104d103
< # CONFIG_NO_HZ_FULL is not set
112d110
< # CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
327d324
< # CONFIG_MPSC is not set
330d326
< # CONFIG_GENERIC_CPU is not set
345c341,342
< # CONFIG_HPET_TIMER is not set
---
> CONFIG_HPET_TIMER=y
> CONFIG_HPET_EMULATE_RTC=y
Where are these differences from and is there an official way to manipulate kbuild .config
s via command line?