Loading...
1#include <stdarg.h>
2
3/* confdata.c */
4P(conf_parse,void,(const char *name));
5P(conf_read,int,(const char *name));
6P(conf_read_simple,int,(const char *name, int));
7P(conf_write_defconfig,int,(const char *name));
8P(conf_write,int,(const char *name));
9P(conf_write_autoconf,int,(void));
10P(conf_get_changed,bool,(void));
11P(conf_set_changed_callback, void,(void (*fn)(void)));
12P(conf_set_message_callback, void,(void (*fn)(const char *fmt, va_list ap)));
13
14/* menu.c */
15P(rootmenu,struct menu,);
16
17P(menu_is_visible, bool, (struct menu *menu));
18P(menu_has_prompt, bool, (struct menu *menu));
19P(menu_get_prompt,const char *,(struct menu *menu));
20P(menu_get_root_menu,struct menu *,(struct menu *menu));
21P(menu_get_parent_menu,struct menu *,(struct menu *menu));
22P(menu_has_help,bool,(struct menu *menu));
23P(menu_get_help,const char *,(struct menu *menu));
24P(get_symbol_str, void, (struct gstr *r, struct symbol *sym));
25P(get_relations_str, struct gstr, (struct symbol **sym_arr));
26P(menu_get_ext_help,void,(struct menu *menu, struct gstr *help));
27
28/* symbol.c */
29P(symbol_hash,struct symbol *,[SYMBOL_HASHSIZE]);
30
31P(sym_lookup,struct symbol *,(const char *name, int flags));
32P(sym_find,struct symbol *,(const char *name));
33P(sym_expand_string_value,const char *,(const char *in));
34P(sym_escape_string_value, const char *,(const char *in));
35P(sym_re_search,struct symbol **,(const char *pattern));
36P(sym_type_name,const char *,(enum symbol_type type));
37P(sym_calc_value,void,(struct symbol *sym));
38P(sym_get_type,enum symbol_type,(struct symbol *sym));
39P(sym_tristate_within_range,bool,(struct symbol *sym,tristate tri));
40P(sym_set_tristate_value,bool,(struct symbol *sym,tristate tri));
41P(sym_toggle_tristate_value,tristate,(struct symbol *sym));
42P(sym_string_valid,bool,(struct symbol *sym, const char *newval));
43P(sym_string_within_range,bool,(struct symbol *sym, const char *str));
44P(sym_set_string_value,bool,(struct symbol *sym, const char *newval));
45P(sym_is_changable,bool,(struct symbol *sym));
46P(sym_get_choice_prop,struct property *,(struct symbol *sym));
47P(sym_get_default_prop,struct property *,(struct symbol *sym));
48P(sym_get_string_value,const char *,(struct symbol *sym));
49
50P(prop_get_type_name,const char *,(enum prop_type type));
51
52/* expr.c */
53P(expr_compare_type,int,(enum expr_type t1, enum expr_type t2));
54P(expr_print,void,(struct expr *e, void (*fn)(void *, struct symbol *, const char *), void *data, int prevtoken));
1/* SPDX-License-Identifier: GPL-2.0 */
2#include <stdarg.h>
3
4/* confdata.c */
5void conf_parse(const char *name);
6int conf_read(const char *name);
7int conf_read_simple(const char *name, int);
8int conf_write_defconfig(const char *name);
9int conf_write(const char *name);
10int conf_write_autoconf(int overwrite);
11bool conf_get_changed(void);
12void conf_set_changed_callback(void (*fn)(void));
13void conf_set_message_callback(void (*fn)(const char *s));
14
15/* symbol.c */
16extern struct symbol * symbol_hash[SYMBOL_HASHSIZE];
17
18struct symbol * sym_lookup(const char *name, int flags);
19struct symbol * sym_find(const char *name);
20const char * sym_escape_string_value(const char *in);
21struct symbol ** sym_re_search(const char *pattern);
22const char * sym_type_name(enum symbol_type type);
23void sym_calc_value(struct symbol *sym);
24enum symbol_type sym_get_type(struct symbol *sym);
25bool sym_tristate_within_range(struct symbol *sym,tristate tri);
26bool sym_set_tristate_value(struct symbol *sym,tristate tri);
27tristate sym_toggle_tristate_value(struct symbol *sym);
28bool sym_string_valid(struct symbol *sym, const char *newval);
29bool sym_string_within_range(struct symbol *sym, const char *str);
30bool sym_set_string_value(struct symbol *sym, const char *newval);
31bool sym_is_changeable(struct symbol *sym);
32struct property * sym_get_choice_prop(struct symbol *sym);
33const char * sym_get_string_value(struct symbol *sym);
34
35const char * prop_get_type_name(enum prop_type type);
36
37/* preprocess.c */
38enum variable_flavor {
39 VAR_SIMPLE,
40 VAR_RECURSIVE,
41 VAR_APPEND,
42};
43void env_write_dep(FILE *f, const char *auto_conf_name);
44void variable_add(const char *name, const char *value,
45 enum variable_flavor flavor);
46void variable_all_del(void);
47char *expand_dollar(const char **str);
48char *expand_one_token(const char **str);
49
50/* expr.c */
51void expr_print(struct expr *e, void (*fn)(void *, struct symbol *, const char *), void *data, int prevtoken);