/* -*- mode: c; tabs: 4; -*- ************************************************ * Module name : cmdfile.h * Module type : CMDFILE source file * Environment(s): n/a * * Version Who Date Description APY 12/99 Created * * $Source: /cvsroot/device/DEVL/UTILS/CMDFILE/cmdfile.h,v $ * $Revision: 1.9 $ $Date: 2004/11/05 07:51:39 $ $State: Exp $ * $Author: ayoung $ $Locker: $ *.........................................................................*/ #include #include #include #include #include /* PATH_MAX */ #include #if defined(linux) #include #elif defined(MSDOS) || defined(WIN32) #include #endif #ifndef TRUE #define FALSE 0 #define TRUE 1 /*!FALSE*/ #endif #define MACRO_MAX 4096 #define TMPNAME "cmdfile.XXX" /*see mktemp*/ #if !defined(PATH_MAX) #if defined(linux) #define PATH_MAX 1024 #else #error Unknown target OS ... #endif #endif #define WS_UNKNOWN 0 /*embedded space handling*/ #define WS_IGNORE 1 #define WS_ESCAPE 2 #define WS_QUOTE 3 #define WS_JUNK 4 #define WS_URL 5 typedef struct { char * s_data; char * s_ptr; unsigned s_left; unsigned s_len; } String_t; extern const char * version_string; extern char * program_name; extern FILE * output; extern int cflg; extern char mflg; extern char dflg[2]; #define MACROCHAR mflg #define LDELIMITOR dflg[0] #define RDELIMITOR dflg[1] extern int eflg; extern int kflg; extern int k2flg; extern int Mflg; extern int nflg; extern int nlflg; extern const char * oflg; extern int rflg; extern char rtags[10]; extern int tflg; extern int vflg; extern int wflg; extern int whitespace; extern void fatalerr(const char *msg, ...); extern void warning(const char *msg, ...); extern void verbose(const char *msg, ...); extern void message(const char *msg, ...); extern int mkstemp(char *path); extern int StringInit(String_t *, char *, unsigned); extern int StringZero(String_t *); extern int StringCat(String_t *, const char *); extern int StringPath(String_t *, const char *); extern int StringCatn(String_t *, const char *, unsigned); extern int StringPut(String_t *, char); extern char * StringData(String_t *pStr); extern int expected(const char *s, char c); extern int token(const char *s, char *buffer, int len); extern int argument(const char *s, char *buffer, int len); extern int pathargument(const char *s, char *buffer, int len); #define VFLAG_PATH 0x00 #define VFLAG_LIBRARY 0x01 #define VFLAG_GLOB 0x02 #define VFLAG_LINT 0x04 #define VFLAG_MUSTRESOLVE 0x10 #define VFLAG_OPTIONAL 0x20 extern int vpath(String_t *str, const char *s, int flags); extern int do_vhost(const char *s); extern int do_vsep(const char *s); extern int macro(String_t *str, const char *s); extern int dosify(String_t *str, const char *s); extern int do_realpath(String_t *str, const char *s); extern int do_shortpath(String_t *str, const char *s); extern int do_url2path(String_t *str, const char *s); extern int do_path2url(String_t *str, const char *s); extern const char * Realpath(const char *name, char *buf); extern int do_vlibgcc( String_t *str, const char *s ); extern int from_env(String_t *str, const char *s); extern int do_clean_sep ( String_t *str, const char *s ); extern void process_string (register char *s );