+// if we need to define for standard headers, and we're not using Unicode,
+// just define to standard C library routines
+#if !wxUSE_UNICODE
+# ifdef wxNEED_WX_STRING_H
+# define wxStrcat strcat
+# define wxStrchr strchr
+# define wxStrcmp strcmp
+# define wxStrcoll strcoll
+# define wxStrcpy strcpy
+# define wxStrcspn strcspn
+#if !defined(__MWERKS__) || !defined(__WXMAC__)
+# define wxStrdup strdup
+#endif
+# define wxStrlen_ strlen // used in wxStrlen inline function
+# define wxStrncat strncat
+# define wxStrncmp strncmp
+# define wxStrncpy strncpy
+# define wxStrpbrk strpbrk
+# define wxStrrchr strrchr
+# define wxStrspn strspn
+# define wxStrstr strstr
+# define wxStrtod strtod
+# define wxStrtol strtol
+# define wxStrtoul strtoul
+# define wxStrxfrm strxfrm
+# undef wxNEED_WX_STRING_H
+# endif
+
+# ifdef wxNEED_WX_STDIO_H
+# define wxFgetc fgetc
+# define wxFgetchar fgetchar
+# define wxFgets fgets
+# define wxFopen fopen
+# define wxFputc fputc
+# define wxFputchar fputchar
+# define wxFprintf fprintf
+# define wxFreopen freopen
+# define wxFscanf fscanf
+# define wxGetc getc
+# define wxGetchar getchar
+# define wxGets gets
+# define wxPerror perror
+# define wxPrintf printf
+# define wxPutc putc
+# define wxPutchar putchar
+# define wxPuts puts
+# define wxRemove remove
+# define wxRename rename
+# define wxScanf scanf
+# define wxSprintf sprintf
+# define wxSscanf sscanf
+# define wxTmpnam tmpnam
+# define wxUngetc ungetc
+# define wxVfprint vfprintf
+# define wxVprintf vprintf
+# define wxVsscanf vsscanf
+# define wxVsprintf vsprintf
+# undef wxNEED_WX_STDIO_H
+# endif
+
+# ifdef wxNEED_WX_STDLIB_H
+# define wxAtof atof
+# define wxAtoi atoi
+# define wxAtol atol
+# define wxGetenv getenv
+# define wxSystem system
+# undef wxNEED_WX_STDLIB_H
+# endif
+
+# ifdef wxNEED_WX_TIME_H
+# define wxAsctime asctime
+# define wxCtime ctime
+# define wxStrftime strftime
+# undef wxNEED_WX_TIME_H
+# endif
+#endif //!Unicode
+
+// checks whether the passed in pointer is NULL and if the string is empty
+inline bool wxIsEmpty(const wxChar *p) { return !p || !*p; }
+
+#ifndef wxNEED_WX_STRING_H
+// safe version of strlen() (returns 0 if passed NULL pointer)
+inline size_t wxStrlen(const wxChar *psz)
+ { return psz ? wxStrlen_(psz) : 0; }