Se você precisar fazer isso de forma não interativa, poderá usar o oldconfig ou o olddefconfig. O make * config corrigirá as dependências e elas não são tão detalhadas quanto, digamos, o menuconfig. (Senão o menuconfig está perfeitamente bem para habilitar recursos um a um, inclusive inclui os textos de ajuda!)
make oldconfig irá pedir qualquer 'nova' opção de configuração, então você precisaria inserir comentários como este para qualquer opção desativada se você quiser trabalhar de forma não interativa:
# CONFIG_KERNEL_GZIP is not set
O olddefconfig, por outro lado, parece não perguntar, mas usa um valor padrão. Há também o silentoldconfig, mas também é solicitado em alguns casos, então não é tão silencioso.
da ajuda:
oldconfig - Update current config utilising a provided .config as base
silentoldconfig - Same as oldconfig, but quietly, additionally update deps
olddefconfig - Same as silentoldconfig but sets new symbols to their default value
Disclaimer: Eu só tentei o teste trivial de remover as opções para algumas bibliotecas que eu sei que eram necessárias. Eles foram adicionados novamente pelo olddefconfig e oldconfig. Eu não sei como isso se aplica a fazer uma configuração maior.
De qualquer forma, suponho que você já considerou usar make localmodconfig ou algo parecido antes de começar isso? Eu não tentei fazer uma configuração mínima em anos, mas pareço lembrar que havia algumas maneiras não óbvias de criar kernels totalmente inutilizáveis. :)