#include <stdlib.h>
#include <string.h>
#include <locale.h>
+#include <time.h>
#ifndef WX_PRECOMP
#include "wx/defs.h"
return ret;
}
+WXDLLEXPORT int wxStrncmp(const wxChar *s1, const wxChar *s2, size_t n)
+{
+ while (n && (*s1 == *s2) && *s1) n--, s1++, s2++;
+ if (n) {
+ if ((wxUChar)*s1 < (wxUChar)*s2) return -1;
+ if ((wxUChar)*s1 > (wxUChar)*s2) return 1;
+ }
+ return 0;
+}
+
WXDLLEXPORT wxChar * wxStrncpy(wxChar *dest, const wxChar *src, size_t n)
{
wxChar *ret = dest;
#endif
#ifdef wxNEED_WX_STDIO_H
+WXDLLEXPORT FILE * wxFopen(const wxChar *path, const wxChar *mode)
+{
+ return fopen(wxConvFile.cWX2MB(path), wxConvLibc.cWX2MB(mode));
+}
+
+WXDLLEXPORT FILE * wxFreopen(const wxChar *path, const wxChar *mode, FILE *stream)
+{
+ return freopen(wxConvFile.cWX2MB(path), wxConvLibc.cWX2MB(mode), stream);
+}
+
int WXDLLEXPORT wxPrintf(const wxChar *fmt, ...)
{
va_list argptr;
}
#endif
+
+#ifdef wxNEED_WX_TIME_H
+WXDLLEXPORT size_t wxStrftime(wxChar *s, size_t max, const wxChar *fmt, const struct tm *tm)
+{
+ if (!max) return 0;
+ char *buf = (char *)malloc(max);
+ size_t ret = strftime(buf, max, wxConvLibc.cWX2MB(fmt), tm);
+ if (ret) {
+ wxStrcpy(s, wxConvLibc.cMB2WX(buf));
+ free(buf);
+ return wxStrlen(s);
+ } else {
+ free(buf);
+ *s = 0;
+ return 0;
+ }
+}
+#endif