#define wxHAVE_TCHAR_FUNCTIONS
#elif defined(__BORLANDC__) && (__BORLANDC__ >= 0x520)
#define wxHAVE_TCHAR_FUNCTIONS
- #elif defined(__GNUWIN32__) && wxCHECK_W32API_VERSION( 0, 6 )
+ // w32api isn't yet tchar safe, will be soon, this is a placeholder
+ #elif defined(__GNUWIN32__) && wxCHECK_W32API_VERSION( 10, 0 )
#define wxHAVE_TCHAR_FUNCTIONS
#include <stddef.h>
#include <string.h>
# define wxStrcspn _tcscspn
# define wxStrftime _tcsftime
# define wxStricmp _tcsicmp
+# define wxStrnicmp _tcsnicmp
# define wxStrlen_ _tcslen // used in wxStrlen inline function
# define wxStrncat _tcsncat
# define wxStrncmp _tcsncmp
# if defined(__VISUALC__) && (__VISUALC__ < 900)
# define wxUSE_WCHAR_T 0 // wchar_t is not available for MSVC++ 1.5
# elif defined(__UNIX__)
-# if defined(HAVE_WCSTR_H) || defined(HAVE_WCHAR_H) || defined(__FreeBSD__)
+# if defined(HAVE_WCSTR_H) || defined(HAVE_WCHAR_H) || defined(__FreeBSD__) || (defined(__APPLE__) && defined(__UNIX__))
# define wxUSE_WCHAR_T 1
# else
# define wxUSE_WCHAR_T 0
# ifdef HAVE_WCSTR_H
# include <wcstr.h>
# else
-# ifndef __FreeBSD__
-# include <wchar.h>
-# else
+# if defined(__FreeBSD__) || (defined(__APPLE__) && defined(__UNIX__))
# include <stdlib.h>
# define wxNEED_WCSLEN
+# else
+# include <wchar.h>
# endif
# endif
# endif