blob: 91def0a05bb8270226743df2a1973a335e552e06 [file] [log] [blame]
config MODULES
bool "MODULES"
option modules
#
# Symbol visibility
#
config NO_PROMPT
bool
# Not rewritten, so MOD will have the value 'y' when running without modules
config MOD
def_tristate m
config BOOL_N
bool "bool n" if n
config BOOL_M
# Rewritten to m && MODULES
bool "bool m" if m
config BOOL_MOD
bool "bool MOD"
# Not rewritten
depends on MOD
config BOOL_Y
bool "bool y"
# Rewritten to m && MODULES
depends on y || m
config TRISTATE_N
tristate "tristate n" if n
config TRISTATE_M
# Rewritten to m && MODULES
tristate "tristate m" if m
config TRISTATE_MOD
tristate "tristate MOD"
# Not rewritten
depends on MOD
config TRISTATE_Y
bool "tristate y"
# Rewritten to m && MODULES
depends on y || m
# Symbols nested in 'if'
if n
config BOOL_IF_N
bool "bool if n"
config TRISTATE_IF_N
tristate "tristate if n"
endif
if m
config BOOL_IF_M
bool "bool if m"
config TRISTATE_IF_M
tristate "tristate if n"
endif
if y
config BOOL_IF_Y
bool "bool if y"
config TRISTATE_IF_Y
tristate "tristate if y"
endif
# Symbols nested in 'menu'
menu "menu 1"
depends on n
config BOOL_MENU_N
bool "bool menu n"
config TRISTATE_MENU_N
tristate "tristate menu n"
endmenu
menu "menu 2"
depends on m
config BOOL_MENU_M
bool "bool menu m"
config TRISTATE_MENU_M
tristate "tristate menu n"
endmenu
menu "menu 3"
depends on y
config BOOL_MENU_Y
bool "bool menu y"
config TRISTATE_MENU_Y
tristate "tristate menu y"
endmenu
# Symbols nested in choices
choice C1
tristate "choice n" if n
config BOOL_CHOICE_N
bool "bool choice n"
config TRISTATE_CHOICE_N
tristate "tristate choice n"
endchoice
choice C2
tristate "choice m" if m
config BOOL_CHOICE_M
bool "bool choice m"
config TRISTATE_CHOICE_M
tristate "tristate choice n"
endchoice
choice C3
tristate "choice y" if y
config BOOL_CHOICE_Y
bool "bool choice y"
config TRISTATE_CHOICE_Y
tristate "tristate choice y"
endchoice
#
# Choice visibility
#
choice BOOL_CHOICE_N
bool "bool choice n" if n
endchoice
choice BOOL_CHOICE_M
bool "bool choice m" if m
endchoice
choice BOOL_CHOICE_Y
bool "bool choice y" if y
endchoice
choice TRISTATE_CHOICE_N
tristate "tristate choice n" if n
endchoice
choice TRISTATE_CHOICE_M
tristate "tristate choice m" if m
endchoice
choice TRISTATE_CHOICE_Y
tristate "tristate choice y" if y
config K
tristate "K"
config L
tristate "L"
endchoice
if m
choice TRISTATE_CHOICE_IF_M_AND_Y
tristate "tristate choice if m and y" if y
config M
bool "M"
config N
bool "N"
endchoice
endif
menu "choice-containing menu"
depends on n && y
choice TRISTATE_CHOICE_MENU_N_AND_Y
tristate "tristate choice if n and y"
config O
tristate "O"
config P
tristate "P"
endchoice
endmenu
#
# Menu visibility
#
menu "menu n"
depends on n
endmenu
menu "menu m"
depends on m
endmenu
menu "menu y"
depends on y
endmenu
if n
menu "menu if n"
endmenu
endif
if m
menu "menu if m"
endmenu
endif
if y
menu "menu if y"
endmenu
endif
if m
menu "menu if m and y"
depends on y
endmenu
endif
#
# Comment visibility
#
comment "comment n"
depends on n
comment "comment m"
depends on m
comment "comment y"
depends on y
if n
comment "comment if n"
endif
if m
comment "comment if m"
endif
if y
comment "comment if y"
endif
if "y"
menu "menu with comment"
depends on m
comment "double-nested m comment"
depends on y
endmenu
endif
# Used to verify that string/int/hex symbols with m visibility accept a user
# value
if m
config STRING_m
string "string"
config INT_m
int "int"
config HEX_m
hex "hex"
endif
# Menu 'visible if' visibility
menu "n-visible menu"
visible if n
config VISIBLE_IF_N
tristate "visible if n"
endmenu
menu "m-visible menu"
visible if m
config VISIBLE_IF_M
tristate "visible if m"
endmenu
menu "y-visible menu"
visible if y
config VISIBLE_IF_Y
tristate "visible if m"
endmenu
menu "m-visible menu 2"
visible if y || n
visible if m && y
visible if y
if y
config VISIBLE_IF_M_2
tristate "visible if m 2"
endif
endmenu