X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=config%2Flkc_proto.h;h=f9ab98238aeff1974ebe917bc0eba7f0f32e1be9;hb=2391e7e514785584c32defb9a15d82c1dab837fa;hp=c46929fab7d97401dd7d88c0207c9fdbd7e366c4;hpb=e8ba5aaead7057988bb1a7d8df008acfa0695354;p=carl9170fw.git diff --git a/config/lkc_proto.h b/config/lkc_proto.h index c46929f..f9ab982 100644 --- a/config/lkc_proto.h +++ b/config/lkc_proto.h @@ -7,10 +7,10 @@ int conf_read(const char *name); int conf_read_simple(const char *name, int); int conf_write_defconfig(const char *name); int conf_write(const char *name); -int conf_write_autoconf(void); +int conf_write_autoconf(int overwrite); bool conf_get_changed(void); void conf_set_changed_callback(void (*fn)(void)); -void conf_set_message_callback(void (*fn)(const char *fmt, va_list ap)); +void conf_set_message_callback(void (*fn)(const char *s)); /* menu.c */ extern struct menu rootmenu; @@ -42,15 +42,22 @@ tristate sym_toggle_tristate_value(struct symbol *sym); bool sym_string_valid(struct symbol *sym, const char *newval); bool sym_string_within_range(struct symbol *sym, const char *str); bool sym_set_string_value(struct symbol *sym, const char *newval); -bool sym_is_changable(struct symbol *sym); +bool sym_is_changeable(struct symbol *sym); struct property * sym_get_choice_prop(struct symbol *sym); const char * sym_get_string_value(struct symbol *sym); const char * prop_get_type_name(enum prop_type type); /* preprocess.c */ +enum variable_flavor { + VAR_SIMPLE, + VAR_RECURSIVE, + VAR_APPEND, +}; void env_write_dep(FILE *f, const char *auto_conf_name); -char *expand_string(const char *in); +void variable_add(const char *name, const char *value, + enum variable_flavor flavor); +void variable_all_del(void); char *expand_dollar(const char **str); char *expand_one_token(const char **str);