kconfig/lkc_proto.h
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Jun 08 23:26:54 2010 +0200 (2010-06-08)
changeset 1976 2d90ec981ba3
parent 39 af42eec9d383
child 2448 a103abae1560
permissions -rw-r--r--
config: add support for a second part of the generated choices

Some components have configuration options that can depend on
generic options, so they should go below those.

uClibc for example:
- has its own options (wchar...)
- uses the generic options (threads...)
- if linuxthreads chosen, offers two impls

So we need to be able to split the components options in 2,
one part that is above the generic options, and one part that
ends up below the generic options.
yann@1
     1
yann@1
     2
/* confdata.c */
yann@1
     3
P(conf_parse,void,(const char *name));
yann@1
     4
P(conf_read,int,(const char *name));
yann@1
     5
P(conf_read_simple,int,(const char *name, int));
yann@1
     6
P(conf_write,int,(const char *name));
yann@1
     7
P(conf_write_autoconf,int,(void));
yann@39
     8
P(conf_get_changed,bool,(void));
yann@39
     9
P(conf_set_changed_callback, void,(void (*fn)(void)));
yann@1
    10
yann@1
    11
/* menu.c */
yann@1
    12
P(rootmenu,struct menu,);
yann@1
    13
yann@1
    14
P(menu_is_visible,bool,(struct menu *menu));
yann@1
    15
P(menu_get_prompt,const char *,(struct menu *menu));
yann@1
    16
P(menu_get_root_menu,struct menu *,(struct menu *menu));
yann@1
    17
P(menu_get_parent_menu,struct menu *,(struct menu *menu));
yann@943
    18
P(menu_has_help,bool,(struct menu *menu));
yann@943
    19
P(menu_get_help,const char *,(struct menu *menu));
yann@1
    20
yann@1
    21
/* symbol.c */
yann@1
    22
P(symbol_hash,struct symbol *,[SYMBOL_HASHSIZE]);
yann@1
    23
yann@943
    24
P(sym_lookup,struct symbol *,(const char *name, int flags));
yann@1
    25
P(sym_find,struct symbol *,(const char *name));
yann@1
    26
P(sym_re_search,struct symbol **,(const char *pattern));
yann@1
    27
P(sym_type_name,const char *,(enum symbol_type type));
yann@1
    28
P(sym_calc_value,void,(struct symbol *sym));
yann@1
    29
P(sym_get_type,enum symbol_type,(struct symbol *sym));
yann@1
    30
P(sym_tristate_within_range,bool,(struct symbol *sym,tristate tri));
yann@1
    31
P(sym_set_tristate_value,bool,(struct symbol *sym,tristate tri));
yann@1
    32
P(sym_toggle_tristate_value,tristate,(struct symbol *sym));
yann@1
    33
P(sym_string_valid,bool,(struct symbol *sym, const char *newval));
yann@1
    34
P(sym_string_within_range,bool,(struct symbol *sym, const char *str));
yann@1
    35
P(sym_set_string_value,bool,(struct symbol *sym, const char *newval));
yann@1
    36
P(sym_is_changable,bool,(struct symbol *sym));
yann@1
    37
P(sym_get_choice_prop,struct property *,(struct symbol *sym));
yann@1
    38
P(sym_get_default_prop,struct property *,(struct symbol *sym));
yann@1
    39
P(sym_get_string_value,const char *,(struct symbol *sym));
yann@1
    40
yann@1
    41
P(prop_get_type_name,const char *,(enum prop_type type));
yann@1
    42
yann@1
    43
/* expr.c */
yann@1
    44
P(expr_compare_type,int,(enum expr_type t1, enum expr_type t2));
yann@1
    45
P(expr_print,void,(struct expr *e, void (*fn)(void *, struct symbol *, const char *), void *data, int prevtoken));