mirror of https://gitee.com/openkylin/linux.git
kconfig: save location of config symbols
When we add a new config symbol save the file/line so we later can refer to their location. The information is saved as a property to a config symbol because we may have multiple definitions of the same symbol. This has the side-effect that a symbol always has at least one property. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Cc: Roman Zippel <zippel@linux-m68k.org> Signed-off-by: Michal Marek <mmarek@suse.cz>
This commit is contained in:
parent
861b4ea4cc
commit
59e89e3ddf
|
@ -132,6 +132,7 @@ enum prop_type {
|
||||||
P_SELECT, /* select BAR */
|
P_SELECT, /* select BAR */
|
||||||
P_RANGE, /* range 7..100 (for a symbol) */
|
P_RANGE, /* range 7..100 (for a symbol) */
|
||||||
P_ENV, /* value from environment variable */
|
P_ENV, /* value from environment variable */
|
||||||
|
P_SYMBOL, /* where a symbol is defined */
|
||||||
};
|
};
|
||||||
|
|
||||||
struct property {
|
struct property {
|
||||||
|
|
|
@ -58,6 +58,8 @@ void menu_add_entry(struct symbol *sym)
|
||||||
*last_entry_ptr = menu;
|
*last_entry_ptr = menu;
|
||||||
last_entry_ptr = &menu->next;
|
last_entry_ptr = &menu->next;
|
||||||
current_entry = menu;
|
current_entry = menu;
|
||||||
|
if (sym)
|
||||||
|
menu_add_symbol(P_SYMBOL, sym, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
void menu_end_entry(void)
|
void menu_end_entry(void)
|
||||||
|
|
|
@ -961,6 +961,8 @@ const char *prop_get_type_name(enum prop_type type)
|
||||||
return "select";
|
return "select";
|
||||||
case P_RANGE:
|
case P_RANGE:
|
||||||
return "range";
|
return "range";
|
||||||
|
case P_SYMBOL:
|
||||||
|
return "symbol";
|
||||||
case P_UNKNOWN:
|
case P_UNKNOWN:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue