]> git.saurik.com Git - wxWidgets.git/commitdiff
Test for wcsftime() in configure as it's not available everywhere.
authorVadim Zeitlin <vadim@wxwidgets.org>
Sat, 25 Dec 2010 14:18:58 +0000 (14:18 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Sat, 25 Dec 2010 14:18:58 +0000 (14:18 +0000)
Contrary to the comment in wx/wxcrtbase.h, wcsftime() doesn't seem to be
available under quite all the systems, notably it doesn't seem to be present
in OpenBSD at all, even in the very latest version.

Add a configure test for this function and fall back to our own implementation
if the system doesn't have it.

Closes #12766.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

configure
configure.in
include/wx/wxcrtbase.h
setup.h.in
setup.h_vms

index 2eeddda8aff387531ac033204963185f094726d8..30b551597247f05ba9994aebb142a7ea458e6481 100755 (executable)
--- a/configure
+++ b/configure
@@ -36144,7 +36144,8 @@ fi
 
 
 
-for ac_func in wcsdup strnlen wcsnlen wcscasecmp wcsncasecmp
+
+for ac_func in wcsdup wcsftime strnlen wcsnlen wcscasecmp wcsncasecmp
 do
 as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
 { echo "$as_me:$LINENO: checking for $ac_func" >&5
index b16249083ad784b9bde4acce8a7b9acd1b89e4a8..599d996d535fdbff4ae5153369205ffb3326fd44 100644 (file)
@@ -4249,7 +4249,7 @@ if test "$WCSLEN_FOUND" = 1; then
     AC_DEFINE(HAVE_WCSLEN)
 fi
 
-AC_CHECK_FUNCS([wcsdup strnlen wcsnlen wcscasecmp wcsncasecmp])
+AC_CHECK_FUNCS([wcsdup wcsftime strnlen wcsnlen wcscasecmp wcsncasecmp])
 
 dnl On HP-UX aCC need this define to find mbstrtowcs() &c
 dnl Can't be used for g++ since the mbstate_t in wchar.h can conflict
index dd6428c32288feee3a9b49ff1c86779361cf87b8..d9ee66261ac3754d30c960eba3c2db0a24eefac8 100644 (file)
@@ -664,8 +664,11 @@ WXDLLIMPEXP_BASE wchar_t * wxCRT_GetenvW(const wchar_t *name);
     _xpg5_wcsftime(wchar_t *, size_t, const wchar_t *, const struct tm * );
     #define wxCRT_StrftimeW _xpg5_wcsftime
 #else
-    #ifndef __WXPALMOS__
-        // assume it's always available, this does seem to be the case for now
+    // Assume it's always available under non-Unix systems with the exception
+    // of Palm OS, this does seem to be the case for now. And under Unix we
+    // trust configure to detect it (except for SGI special case above).
+    #if defined(HAVE_WCSFTIME) || \
+        !(defined(__UNIX__) || defined(__WXPALMOS__))
         #define wxCRT_StrftimeW  wcsftime
     #endif /* ! __WXPALMOS__ */
 #endif
index 1a7de3353dfb80e524a2a20eb0c5311123b65d89..cf2a0e390936bbc0900f261069ad5804c0a4fb6c 100644 (file)
 /* Define if you have wcsdup function  */
 #undef HAVE_WCSDUP
 
+/* Define if you have wcsftime() function  */
+#undef HAVE_WCSFTIME
+
 /* Define if you have strnlen() function */
 #undef HAVE_STRNLEN
 
index a1f602d29071db6bf072e6ab503bd32818fa9731..8f3095a6ce0183462c24b347becb44070cd45f1d 100644 (file)
@@ -1068,6 +1068,9 @@ typedef pid_t GPid;
 /* Define if you have wcsdup function  */
 #undef HAVE_WCSDUP
 
+/* Define if you have wcsftime() function  */
+#define HAVE_WCSFTIME 1
+
 /* Define if you have strnlen() function */
 #define HAVE_STRNLEN 1