4 * Copyright (c) 1998-2003, Darren Hiebert
6 * This source code is released for free distribution under the terms of the
7 * GNU General Public License.
9 * Provides the general (non-ctags-specific) environment assumed by all.
17 #if defined (HAVE_CONFIG_H)
23 #elif defined (macintosh)
25 #elif defined (MSDOS) || defined (WIN32)
31 #elif defined (RISCOS)
32 # include "e_riscos.h"
33 #elif defined (__vms) || defined (VMS)
45 /* Define standard error destination
48 # define errout stderr
51 /* Define regex if supported */
52 #if (defined (HAVE_REGCOMP) && !defined (REGCOMP_BROKEN))
56 /* This is a helpful internal feature of later versions (> 2.7) of GCC
57 * to prevent warnings about unused variables.
59 #if (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)) && !(defined (__APPLE_CC__) || defined (__GNUG__))
60 # define __unused__ __attribute__((unused))
61 # define __printf__(s,f) __attribute__((format (printf, s, f)))
64 # define __printf__(s,f)
70 #if !defined(HAVE_STRCASECMP) && !defined(strcasecmp)
72 # define strcasecmp(s1,s2) stricmp(s1,s2)
74 # define strcasecmp(s1,s2) struppercmp(s1,s2)
78 #if !defined(HAVE_STRNCASECMP) && !defined(strncasecmp)
80 # define strncasecmp(s1,s2,n) strnicmp(s1,s2,n)
82 # define strncasecmp(s1,s2,n) strnuppercmp(s1,s2,n)
93 typedef enum { FALSE
, TRUE
} booleanType
;
101 typedef enum { FALSE
, TRUE
} boolean
;
105 #if ! defined (HAVE_FGETPOS) && ! defined (fpos_t)
110 * FUNCTION PROTOTYPES
113 #if defined (NEED_PROTO_REMOVE) && defined (HAVE_REMOVE)
114 extern int remove (const char *);
117 #if defined (NEED_PROTO_UNLINK) && ! defined (HAVE_REMOVE)
118 extern void *unlink (const char *);
121 #ifdef NEED_PROTO_GETENV
122 extern char *getenv (const char *);
125 #endif /* _GENERAL_H */
127 /* vi:set tabstop=4 shiftwidth=4: */