Ignore:
Timestamp:
Dec 30, 2013, 1:58:43 AM (12 years ago)
Author:
bird
Message:

kmk: Hacking kBuild-define-*.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kmk/kbuild.h

    r2549 r2717  
    3939const char *get_default_kbuild_shell(void);
    4040
     41/** @name kBuild objects
     42 * @{ */
    4143struct kbuild_eval_data;
    42 extern struct kbuild_eval_data *g_pTopKbDef;
    43 struct variable_set *get_top_kbuild_variable_set(void);
    44 char *kbuild_prefix_variable(const char *pszName, unsigned int *pcchName);
     44struct kbuild_object;
    4545
    46 int eval_kbuild_define(struct kbuild_eval_data **kdata, const struct floc *flocp,
    47                        const char *word, unsigned int wlen, const char *line, const char *eos, int ignoring);
    48 int eval_kbuild_endef(struct kbuild_eval_data **kdata, const struct floc *flocp,
    49                       const char *word, unsigned int wlen, const char *line, const char *eos, int ignoring);
     46extern struct kbuild_eval_data *g_pTopKbEvalData;
    5047
    51 void print_kbuild_data_base(void);
    52 void print_kbuild_define_stats(void);
     48
     49/** Special return value indicating variable name isn't an accessor. */
     50#define KOBJ_NOT_KBUILD_ACCESSOR    ( (struct kbuild_object *)~(size_t)0 )
     51
     52/** Special lookup_kbuild_object_variable return value. */
     53#define VAR_NOT_KBUILD_ACCESSOR     ( (struct variable *)~(size_t)0 )
     54
     55struct variable    *lookup_kbuild_object_variable_accessor(const char *pchName, size_t cchName);
     56int                 is_kbuild_object_variable_accessor(const char *pchName, size_t cchName);
     57struct variable    *try_define_kbuild_object_variable_via_accessor(const char *pszName, size_t cchName,
     58                                                                   const char *pszValue, size_t cchValue, int fDuplicateValue,
     59                                                                   enum variable_origin enmOrigin, int fRecursive,
     60                                                                   struct floc const *pFileLoc);
     61struct variable    *define_kbuild_object_variable_in_top_obj(const char *pszName, size_t cchName,
     62                                                             const char *pszValue, size_t cchValue, int fDuplicateValue,
     63                                                             enum variable_origin enmOrigin, int fRecursive,
     64                                                             struct floc const *pFileLoc);
     65struct variable    *kbuild_object_variable_pre_append(const char *pchName, size_t cchName,
     66                                                      const char *pchValue, size_t cchValue, int fSimpleValue,
     67                                                      enum variable_origin enmOrigin, int fAppend,
     68                                                      const struct floc *pFileLoc);
     69int                 eval_kbuild_read_hook(struct kbuild_eval_data **kdata, const struct floc *flocp,
     70                                          const char *word, size_t wlen, const char *line, const char *eos, int ignoring);
     71void                print_kbuild_data_base(void);
     72void                print_kbuild_define_stats(void);
     73void                init_kbuild_object(void);
     74/** @} */
    5375
    5476#endif
Note: See TracChangeset for help on using the changeset viewer.