Annotation of qemu/roms/seabios/tools/kconfig/lkc.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Copyright (C) 2002 Roman Zippel <[email protected]>
                      3:  * Released under the terms of the GNU GPL v2.0.
                      4:  */
                      5: 
                      6: #ifndef LKC_H
                      7: #define LKC_H
                      8: 
                      9: #include "expr.h"
                     10: 
                     11: #ifndef KBUILD_NO_NLS
                     12: # include <libintl.h>
                     13: #else
                     14: static inline const char *gettext(const char *txt) { return txt; }
                     15: static inline void textdomain(const char *domainname) {}
                     16: static inline void bindtextdomain(const char *name, const char *dir) {}
                     17: static inline char *bind_textdomain_codeset(const char *dn, char *c) { return c; }
                     18: #endif
                     19: 
                     20: #ifdef __cplusplus
                     21: extern "C" {
                     22: #endif
                     23: 
                     24: #ifdef LKC_DIRECT_LINK
                     25: #define P(name,type,arg)       extern type name arg
                     26: #else
                     27: #include "lkc_defs.h"
                     28: #define P(name,type,arg)       extern type (*name ## _p) arg
                     29: #endif
                     30: #include "lkc_proto.h"
                     31: #undef P
                     32: 
                     33: #define SRCTREE "srctree"
                     34: 
                     35: #ifndef PACKAGE
                     36: #define PACKAGE "linux"
                     37: #endif
                     38: 
                     39: #define LOCALEDIR "/usr/share/locale"
                     40: 
                     41: #define _(text) gettext(text)
                     42: #define N_(text) (text)
                     43: 
                     44: #ifndef CONFIG_
                     45: #define CONFIG_ "CONFIG_"
                     46: #endif
                     47: 
                     48: #define TF_COMMAND     0x0001
                     49: #define TF_PARAM       0x0002
                     50: #define TF_OPTION      0x0004
                     51: 
                     52: enum conf_def_mode {
                     53:        def_default,
                     54:        def_yes,
                     55:        def_mod,
                     56:        def_no,
                     57:        def_random
                     58: };
                     59: 
                     60: #define T_OPT_MODULES          1
                     61: #define T_OPT_DEFCONFIG_LIST   2
                     62: #define T_OPT_ENV              3
                     63: 
                     64: struct kconf_id {
                     65:        int name;
                     66:        int token;
                     67:        unsigned int flags;
                     68:        enum symbol_type stype;
                     69: };
                     70: 
                     71: #ifdef YYDEBUG
                     72: extern int zconfdebug;
                     73: #endif
                     74: 
                     75: int zconfparse(void);
                     76: void zconfdump(FILE *out);
                     77: void zconf_starthelp(void);
                     78: FILE *zconf_fopen(const char *name);
                     79: void zconf_initscan(const char *name);
                     80: void zconf_nextfile(const char *name);
                     81: int zconf_lineno(void);
                     82: const char *zconf_curname(void);
                     83: 
                     84: /* conf.c */
                     85: void xfgets(char *str, int size, FILE *in);
                     86: 
                     87: /* confdata.c */
                     88: const char *conf_get_configname(void);
                     89: const char *conf_get_autoconfig_name(void);
                     90: char *conf_get_default_confname(void);
                     91: void sym_set_change_count(int count);
                     92: void sym_add_change_count(int count);
                     93: void conf_set_all_new_symbols(enum conf_def_mode mode);
                     94: 
                     95: /* confdata.c and expr.c */
                     96: static inline void xfwrite(const void *str, size_t len, size_t count, FILE *out)
                     97: {
                     98:        if (fwrite(str, len, count, out) < count)
                     99:                fprintf(stderr, "\nError in writing or end of file.\n");
                    100: }
                    101: 
                    102: /* kconfig_load.c */
                    103: void kconfig_load(void);
                    104: 
                    105: /* menu.c */
                    106: void _menu_init(void);
                    107: void menu_warn(struct menu *menu, const char *fmt, ...);
                    108: struct menu *menu_add_menu(void);
                    109: void menu_end_menu(void);
                    110: void menu_add_entry(struct symbol *sym);
                    111: void menu_end_entry(void);
                    112: void menu_add_dep(struct expr *dep);
                    113: void menu_add_visibility(struct expr *dep);
                    114: struct property *menu_add_prop(enum prop_type type, char *prompt, struct expr *expr, struct expr *dep);
                    115: struct property *menu_add_prompt(enum prop_type type, char *prompt, struct expr *dep);
                    116: void menu_add_expr(enum prop_type type, struct expr *expr, struct expr *dep);
                    117: void menu_add_symbol(enum prop_type type, struct symbol *sym, struct expr *dep);
                    118: void menu_add_option(int token, char *arg);
                    119: void menu_finalize(struct menu *parent);
                    120: void menu_set_type(int type);
                    121: 
                    122: /* util.c */
                    123: struct file *file_lookup(const char *name);
                    124: int file_write_dep(const char *name);
                    125: 
                    126: struct gstr {
                    127:        size_t len;
                    128:        char  *s;
                    129:        /*
                    130:        * when max_width is not zero long lines in string s (if any) get
                    131:        * wrapped not to exceed the max_width value
                    132:        */
                    133:        int max_width;
                    134: };
                    135: struct gstr str_new(void);
                    136: struct gstr str_assign(const char *s);
                    137: void str_free(struct gstr *gs);
                    138: void str_append(struct gstr *gs, const char *s);
                    139: void str_printf(struct gstr *gs, const char *fmt, ...);
                    140: const char *str_get(struct gstr *gs);
                    141: 
                    142: /* symbol.c */
                    143: extern struct expr *sym_env_list;
                    144: 
                    145: void sym_init(void);
                    146: void sym_clear_all_valid(void);
                    147: void sym_set_all_changed(void);
                    148: void sym_set_changed(struct symbol *sym);
                    149: struct symbol *sym_choice_default(struct symbol *sym);
                    150: const char *sym_get_string_default(struct symbol *sym);
                    151: struct symbol *sym_check_deps(struct symbol *sym);
                    152: struct property *prop_alloc(enum prop_type type, struct symbol *sym);
                    153: struct symbol *prop_get_symbol(struct property *prop);
                    154: struct property *sym_get_env_prop(struct symbol *sym);
                    155: 
                    156: static inline tristate sym_get_tristate_value(struct symbol *sym)
                    157: {
                    158:        return sym->curr.tri;
                    159: }
                    160: 
                    161: 
                    162: static inline struct symbol *sym_get_choice_value(struct symbol *sym)
                    163: {
                    164:        return (struct symbol *)sym->curr.val;
                    165: }
                    166: 
                    167: static inline bool sym_set_choice_value(struct symbol *ch, struct symbol *chval)
                    168: {
                    169:        return sym_set_tristate_value(chval, yes);
                    170: }
                    171: 
                    172: static inline bool sym_is_choice(struct symbol *sym)
                    173: {
                    174:        return sym->flags & SYMBOL_CHOICE ? true : false;
                    175: }
                    176: 
                    177: static inline bool sym_is_choice_value(struct symbol *sym)
                    178: {
                    179:        return sym->flags & SYMBOL_CHOICEVAL ? true : false;
                    180: }
                    181: 
                    182: static inline bool sym_is_optional(struct symbol *sym)
                    183: {
                    184:        return sym->flags & SYMBOL_OPTIONAL ? true : false;
                    185: }
                    186: 
                    187: static inline bool sym_has_value(struct symbol *sym)
                    188: {
                    189:        return sym->flags & SYMBOL_DEF_USER ? true : false;
                    190: }
                    191: 
                    192: #ifdef __cplusplus
                    193: }
                    194: #endif
                    195: 
                    196: #endif /* LKC_H */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.