Я хочу предоставить конфигурацию Kconfig / menuconfig для реализации. Я использую набор инструментов из Espressif ESP-IDF 3.3, но, похоже, он не связан с набором инструментов. Я хочу иметь минимальный результирующий файл sdkconfig без каких-либо дополнительных символов «помощника».
Пользователь должен либо использовать (a) предопределенную опцию конфигурации, либо выбрать (b), чтобы установить все значения самостоятельно.
Вот мой текущий код Kconfig:
menu "Test"
choice PREDEFINED
prompt "Select predefined configuration"
default PREDEF_NONE
config PREDEF_NONE
bool "None"
config PREDEF_OPT_A
bool "Option A"
select BOARD_A
select FEATURE_A
config PREDEF_OPT_B
bool "Option B"
select BOARD_B
select FEATURE_B
endchoice
menu "Submenu"
visible if PREDEF_NONE
choice
prompt "Select Board"
config BOARD_A
bool "Board A"
config BOARD_B
bool "Board B"
endchoice
choice
prompt "Select Feature"
config FEATURE_A
bool "Board A"
config FEATURE_B
bool "Board B"
endchoice
endmenu
endmenu
Если выбрана предопределенная опция A, подменю не должно отображаться (это работает), и результирующий sdkconfig создается командой make menuconfig с использованием этого файла Kconfig должен выглядеть так:
#
# Test
#
CONFIG_PREDEF_NONE=
CONFIG_PREDEF_OPT_A=y
CONFIG_PREDEF_OPT_B=
#
# Submenu
#
CONFIG_BOARD_A=y
CONFIG_BOARD_B=
CONFIG_FEATURE_A=y
CONFIG_FEATURE_B=
но я получаю только первые три строки
#
# Test
#
CONFIG_PREDEF_NONE=
CONFIG_PREDEF_OPT_A=y
CONFIG_PREDEF_OPT_B=
Когда я выбираю PREDEF_NONE и устанавливаю значения в Подменю вручную, все в порядке.
Есть идеи, как поступить или что здесь не так?
С уважением, Андреас