aboutsummaryrefslogtreecommitdiff
path: root/scripts/config/lkc.h
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2003-08-05 02:18:25 +0000
committerEric Andersen <andersen@codepoet.org>2003-08-05 02:18:25 +0000
commit72d8e444f0e9e002b16328e73464ef9015979048 (patch)
treed1d99e668617e95836a1f767257e1263963feaa5 /scripts/config/lkc.h
parent461c279ac176a28dec40d1e40ebaffe4f0ac688d (diff)
downloadbusybox-w32-72d8e444f0e9e002b16328e73464ef9015979048.tar.gz
busybox-w32-72d8e444f0e9e002b16328e73464ef9015979048.tar.bz2
busybox-w32-72d8e444f0e9e002b16328e73464ef9015979048.zip
Merge/rework config system per the latest from linux-2.6.0-test2.
Fix the config bugs revealed by the updated config system. -Erik
Diffstat (limited to 'scripts/config/lkc.h')
-rw-r--r--scripts/config/lkc.h19
1 files changed, 13 insertions, 6 deletions
diff --git a/scripts/config/lkc.h b/scripts/config/lkc.h
index 688945b87..dd040f7a8 100644
--- a/scripts/config/lkc.h
+++ b/scripts/config/lkc.h
@@ -21,12 +21,14 @@ extern "C" {
21#include "lkc_proto.h" 21#include "lkc_proto.h"
22#undef P 22#undef P
23 23
24void symbol_end(char *help); 24#define SRCTREE "srctree"
25
25int zconfparse(void); 26int zconfparse(void);
26void zconfdump(FILE *out); 27void zconfdump(FILE *out);
27 28
28extern int zconfdebug; 29extern int zconfdebug;
29void zconf_starthelp(void); 30void zconf_starthelp(void);
31FILE *zconf_fopen(const char *name);
30void zconf_initscan(const char *name); 32void zconf_initscan(const char *name);
31void zconf_nextfile(const char *name); 33void zconf_nextfile(const char *name);
32int zconf_lineno(void); 34int zconf_lineno(void);
@@ -47,9 +49,11 @@ void menu_add_menu(void);
47void menu_end_menu(void); 49void menu_end_menu(void);
48void menu_add_entry(struct symbol *sym); 50void menu_add_entry(struct symbol *sym);
49void menu_end_entry(void); 51void menu_end_entry(void);
50struct property *create_prop(enum prop_type type);
51void menu_add_dep(struct expr *dep); 52void menu_add_dep(struct expr *dep);
52struct property *menu_add_prop(int token, char *prompt, struct symbol *def, struct expr *dep); 53struct property *menu_add_prop(enum prop_type type, char *prompt, struct expr *expr, struct expr *dep);
54void menu_add_prompt(enum prop_type type, char *prompt, struct expr *dep);
55void menu_add_expr(enum prop_type type, struct expr *expr, struct expr *dep);
56void menu_add_symbol(enum prop_type type, struct symbol *sym, struct expr *dep);
53void menu_finalize(struct menu *parent); 57void menu_finalize(struct menu *parent);
54void menu_set_type(int type); 58void menu_set_type(int type);
55struct file *file_lookup(const char *name); 59struct file *file_lookup(const char *name);
@@ -61,16 +65,20 @@ extern struct menu *current_menu;
61/* symbol.c */ 65/* symbol.c */
62void sym_init(void); 66void sym_init(void);
63void sym_clear_all_valid(void); 67void sym_clear_all_valid(void);
68void sym_set_changed(struct symbol *sym);
69struct symbol *sym_check_deps(struct symbol *sym);
70struct property *prop_alloc(enum prop_type type, struct symbol *sym);
71struct symbol *prop_get_symbol(struct property *prop);
64 72
65static inline tristate sym_get_tristate_value(struct symbol *sym) 73static inline tristate sym_get_tristate_value(struct symbol *sym)
66{ 74{
67 return S_TRI(sym->curr); 75 return sym->curr.tri;
68} 76}
69 77
70 78
71static inline struct symbol *sym_get_choice_value(struct symbol *sym) 79static inline struct symbol *sym_get_choice_value(struct symbol *sym)
72{ 80{
73 return (struct symbol *)S_VAL(sym->curr); 81 return (struct symbol *)sym->curr.val;
74} 82}
75 83
76static inline bool sym_set_choice_value(struct symbol *ch, struct symbol *chval) 84static inline bool sym_set_choice_value(struct symbol *ch, struct symbol *chval)
@@ -95,7 +103,6 @@ static inline bool sym_is_optional(struct symbol *sym)
95 103
96static inline bool sym_has_value(struct symbol *sym) 104static inline bool sym_has_value(struct symbol *sym)
97{ 105{
98 //return S_VAL(sym->def) != NULL;
99 return sym->flags & SYMBOL_NEW ? false : true; 106 return sym->flags & SYMBOL_NEW ? false : true;
100} 107}
101 108