stdcxx-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From far...@apache.org
Subject svn commit: r674069 - in /stdcxx/branches/4.2.x: include/rw/_config-gcc.h tests/localization/22.locale.cons.mt.cpp tests/localization/22.locale.time.put.cpp util/gencat.cpp
Date Fri, 04 Jul 2008 14:36:24 GMT
Author: faridz
Date: Fri Jul  4 07:36:23 2008
New Revision: 674069

URL: http://svn.apache.org/viewvc?rev=674069&view=rev
Log:
2008-07-04  Farid Zaripov  <faridz@apache.com>

	* include/rw/_config-gcc.h [__MINGW32__]: Add MinGW specific defines.
	* tests/localization/22.locale.cons.mt.cpp (test_ctors): Use MSVC
	specific workarounds on MinGW too.
	* tests/localization/22.locale.time.put.cpp (rw_strftime): Ditto.
	* util/gencat.cpp [__MINGW32__] (main): Create message catalog dll's
	independent on cygwin1.dll.

Modified:
    stdcxx/branches/4.2.x/include/rw/_config-gcc.h
    stdcxx/branches/4.2.x/tests/localization/22.locale.cons.mt.cpp
    stdcxx/branches/4.2.x/tests/localization/22.locale.time.put.cpp
    stdcxx/branches/4.2.x/util/gencat.cpp

Modified: stdcxx/branches/4.2.x/include/rw/_config-gcc.h
URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/include/rw/_config-gcc.h?rev=674069&r1=674068&r2=674069&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_config-gcc.h (original)
+++ stdcxx/branches/4.2.x/include/rw/_config-gcc.h Fri Jul  4 07:36:23 2008
@@ -145,6 +145,20 @@
 #  endif
 #endif   // __CYGWIN__
 
+#ifdef __MINGW32__
+#  ifdef _RWSHARED
+     // disabe exporting timeplate instantations in shared builds
+     // see STDCXX-507
+#    define _RWSTD_NO_EXTERN_TEMPLATE
+#  endif
+
+   // operator new and delete is not reliably replaceable across
+   // shared library boundaries, which includes the shared library
+   // version of the language support library
+   // on MinGW the language support library is always shared
+#  define _RWSTD_NO_REPLACEABLE_NEW_DELETE
+#endif   // __MINGW32__
+
 #ifdef _RWSTD_OS_OSF1
       // sizeof (long double) == sizeof (double), 'L' causes SIGSEGV
 #   define _RWSTD_LDBL_PRINTF_PREFIX   ""

Modified: stdcxx/branches/4.2.x/tests/localization/22.locale.cons.mt.cpp
URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/tests/localization/22.locale.cons.mt.cpp?rev=674069&r1=674068&r2=674069&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/tests/localization/22.locale.cons.mt.cpp (original)
+++ stdcxx/branches/4.2.x/tests/localization/22.locale.cons.mt.cpp Fri Jul  4 07:36:23 2008
@@ -126,7 +126,7 @@
 
             // verify that the locales were created correctly
             if (   std::locale::none == cat
-#ifdef _MSC_VER
+#if defined (_MSC_VER) || defined (__MINGW32__)
                 || std::locale::messages == cat
 #endif
                 || first == next) {
@@ -141,7 +141,7 @@
             const std::locale combined_2 (first, next, cat);
 
             if (   std::locale::none == cat
-#ifdef _MSC_VER
+#if defined (_MSC_VER) || defined (__MINGW32__)
                 || std::locale::messages == cat
 #endif
                 || first == next) {

Modified: stdcxx/branches/4.2.x/tests/localization/22.locale.time.put.cpp
URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/tests/localization/22.locale.time.put.cpp?rev=674069&r1=674068&r2=674069&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/tests/localization/22.locale.time.put.cpp (original)
+++ stdcxx/branches/4.2.x/tests/localization/22.locale.time.put.cpp Fri Jul  4 07:36:23 2008
@@ -142,7 +142,7 @@
     if (!tmb)
         tmb = &tmp;
 
-#ifdef _MSC_VER
+#if defined (_MSC_VER) || defined (__MINGW32__)
 
     // ms crt aborts if you use out of range values in debug
     if (tmb->tm_hour < 0 || 24 <= tmb->tm_hour)
@@ -281,11 +281,11 @@
 
     const std::size_t n = std::strftime (buf, bufsize, patbuf, tmb);
 
-#else   // if !defined (_MSC_VER)
+#else   // !_MSC_VER && !__MINGW32__
 
     const std::size_t n = std::strftime (buf, bufsize, pat, tmb);
 
-#endif   // _MSC_VER
+#endif   // _MSC_VER || __MINGW32__
 
     RW_ASSERT (n < bufsize);
 
@@ -298,11 +298,12 @@
 { 
     static const std::tm tmp = std::tm ();
 
-#if !defined (_RWSTD_NO_WCSFTIME_WCHAR_T_FMAT) && !defined (_MSC_VER)
+#if    !defined (_RWSTD_NO_WCSFTIME_WCHAR_T_FMAT) \
+    && !defined (_MSC_VER) && !defined (__MINGW32__)
 
     std::size_t n = std::wcsftime (wbuf, bufsize, wpat, tmb ? tmb : &tmp);
 
-#else   // if defined (_RWSTD_NO_WCSFTIME) || defined (_MSC_VER)
+#else   // _RWSTD_NO_WCSFTIME || _MSC_VER || __MINGW32__
 
     char pat [1024];
     char buf [1024];
@@ -311,7 +312,7 @@
     std::size_t n = rw_strftime (buf, bufsize, pat, tmb ? tmb : &tmp);
     widen (wbuf, buf);
 
-#endif   // _RWSTD_NO_WCSFTIME, _MSC_VER
+#endif   // _RWSTD_NO_WCSFTIME, _MSC_VER, __MINGW32__
 
     RW_ASSERT (n < bufsize);
 

Modified: stdcxx/branches/4.2.x/util/gencat.cpp
URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/util/gencat.cpp?rev=674069&r1=674068&r2=674069&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/util/gencat.cpp (original)
+++ stdcxx/branches/4.2.x/util/gencat.cpp Fri Jul  4 07:36:23 2008
@@ -151,7 +151,7 @@
     cmd += rc_name;
     cmd += " -o ";
     cmd += res_name;
-    cmd += " && gcc -shared -o ";
+    cmd += " && gcc -shared -mno-cygwin -o ";
     cmd += dll_name;
     cmd += ' ';
     cmd += res_name;



Mime
View raw message