#include <stdio.h>
#include <stdlib.h>
#include <string.h>
-#include <locale.h>
+
+#ifndef __WXWINCE__
#include <time.h>
+#include <locale.h>
+#else
+#include "wx/msw/wince/time.h"
+#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#ifndef wxAtof
double WXDLLEXPORT wxAtof(const wxChar *psz)
{
- return atof(wxConvLocal.cWX2MB(psz));
+#ifdef __WXWINCE__
+ double d;
+ wxString str(psz);
+ if (str.ToDouble(& d))
+ return d;
+ else
+ return 0.0;
+#else
+ return atof(wxConvLocal.cWX2MB(psz));
+#endif
}
#endif
// missing C RTL functions
// ----------------------------------------------------------------------------
-#if defined( __MWERKS__ ) && !defined(__MACH__)
-#if __MSL__ < 0x00008000
+#if (defined(__MWERKS__) && !defined(__MACH__) && (__MSL__ < 0x00008000)) || \
+ defined(__WXWINCE__)
char *strdup(const char *s)
{
- return strcpy( (char*) malloc( strlen( s ) + 1 ) , s ) ;
+ char *dest = (char*) malloc( strlen( s ) + 1 ) ;
+ if ( dest )
+ strcpy( dest , s ) ;
+ return dest ;
}
#endif
+
+#if (defined(__MWERKS__) && !defined(__MACH__)) || (defined(__WXWINCE__) && _WIN32_WCE <= 211)
+
int isascii( int c )
{
- return ( c >= 0 && c < 128 ) ;
+ return ( c >= 0 && c < 128 );
}
-#endif // __MWERKS__
+#endif
+#if defined(__WXWINCE__)
+void *calloc( size_t num, size_t size )
+{
+ void** ptr = (void **)malloc(num * size);
+ memset( ptr, 0, num * size);
+ return ptr;
+}
+
+#if (_WIN32_WCE <= 211)
+int isspace(int c)
+{
+ return (c == ' ');
+}
+#endif
+
+#endif