Kconfig - “selecione” uma escolha

2

Estou usando a ferramenta de configuração do kernel do Linux Kconfig para gerenciar a configuração do meu próprio projeto.

(Por favor, alguém com um número suficiente de representantes pode adicionar a tag "Kconfig" ou qualquer tag que seja mais apropriada). Eu não marquei como "linux" ou como "kernel" já que meu projeto atual não é o kernel Linux.

Dada a seguinte configuração:

mainmenu "Select/choice interaction test"

# Selectable menu granting access to multiple potentially independent config vars
menuconfig MULTICHOICE
        bool "Multichoice"

config MULTICHOICE_A
        bool "A"
        depends on MULTICHOICE

config MULTICHOICE_B
        bool "B"
        depends on MULTICHOICE

config MULTICHOICE_C
        bool "C"
        depends on MULTICHOICE

# Choose exactly one item
choice CHOICE
        prompt "Choice"

config CHOICE_A
        bool "A"

config CHOICE_B
        bool "B"

config CHOICE_C
        bool "C"


endchoice

# Booleans which restrict/select other options from the previous sections

config SET_A
        bool "Select A"
        select CHOICE_A
        select MULTICHOICE
        select MULTICHOICE_A

config SET_B
        bool "Select B"
        select CHOICE_B
        select MULTICHOICE
        select MULTICHOICE_B

config SET_C
        bool "Select C"
        select CHOICE_C
        select MULTICHOICE
        select MULTICHOICE_C

A seleção de itens em menuconfig funciona conforme o esperado. Mas definir o valor do choice não funciona.

Eu posso entender um possível problema (conflito) aqui - e se várias opções do choice fossem selecionadas implicitamente por outras variáveis de configuração?

Mas no caso sensato de apenas uma opção de escolha ser implicitamente selecionada por outros, o valor da escolha não muda.

Por exemplo, abra o arquivo de configuração acima com nconfig / menuconfig / gconfig / xconfig e selecione exatamente um dos SET_A / SET_B / SET_C . O valor de CHOICE não muda nada.

Existe alguma outra maneira de garantir que apenas uma opção de um conjunto seja selecionada, mas também forçá-la a um determinado valor se outras variáveis de configuração forem definidas de uma maneira específica?

    
por Mark K Cowan 31.10.2017 / 16:40

0 respostas