aboutsummaryrefslogtreecommitdiffstats
path: root/packages/gcc/gcc-4.3.1/203-uclibc-locale-no__x.patch
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2008-08-20 23:12:27 +0000
committerKhem Raj <raj.khem@gmail.com>2008-08-20 23:12:27 +0000
commit347f41f1c6caef14cd1a30315a6ce8dd2692da76 (patch)
tree8a0f0163926067e2543ad286f0e9add8daee29f5 /packages/gcc/gcc-4.3.1/203-uclibc-locale-no__x.patch
parent77a319c9b302cd96ad7419c80a4334ae5a71b275 (diff)
downloadopenembedded-347f41f1c6caef14cd1a30315a6ce8dd2692da76.tar.gz
Enable gcc 4.3.1 to build for uclibc.
Revive the uclibc locale support. Fix gcc native breakage for 4.3.1.
Diffstat (limited to 'packages/gcc/gcc-4.3.1/203-uclibc-locale-no__x.patch')
-rw-r--r--packages/gcc/gcc-4.3.1/203-uclibc-locale-no__x.patch74
1 files changed, 47 insertions, 27 deletions
diff --git a/packages/gcc/gcc-4.3.1/203-uclibc-locale-no__x.patch b/packages/gcc/gcc-4.3.1/203-uclibc-locale-no__x.patch
index 6ba47003b3..f39e65220c 100644
--- a/packages/gcc/gcc-4.3.1/203-uclibc-locale-no__x.patch
+++ b/packages/gcc/gcc-4.3.1/203-uclibc-locale-no__x.patch
@@ -1,8 +1,10 @@
---- gcc/libstdc++-v3/config/locale/uclibc/c++locale_internal.h.uclibc200no__x~ 2006-03-10 15:06:17 +0100
-+++ gcc/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 2006-03-10 15:32:37 +0100
+Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
+===================================================================
+--- gcc-4.3.1.orig/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 2008-08-16 01:29:20.000000000 -0700
++++ gcc-4.3.1/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 2008-08-16 01:33:23.000000000 -0700
@@ -60,4 +60,49 @@
extern "C" __typeof(wctype_l) __wctype_l;
- #endif
+ #endif
+# define __nl_langinfo_l nl_langinfo_l
+# define __strcoll_l strcoll_l
@@ -44,14 +46,16 @@
+# define __towlower_l(C, L) towlower((C))
+# define __towupper_l(C, L) towupper((C))
+# define __wcscoll_l(S1, S2, L) wcscoll((S1), (S2))
-+//# define __wcsftime_l(S, M, F, T, L) wcsftime((S), (M), (F), (T))
++//# define __wcsftime_l(S, M, F, T, L) wcsftime((S), (M), (F), (T))
+# define __wcsxfrm_l(S1, S2, N, L) wcsxfrm((S1), (S2), (N))
+# define __wctype_l(S, L) wctype((S))
+# endif
+
#endif // GLIBC 2.3 and later
---- gcc/libstdc++-v3/config/locale/uclibc/c_locale.cc.uclibc200no__x~ 2006-03-10 15:06:17 +0100
-+++ gcc/libstdc++-v3/config/locale/uclibc/c_locale.cc 2006-03-10 15:32:37 +0100
+Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/c_locale.cc
+===================================================================
+--- gcc-4.3.1.orig/libstdc++-v3/config/locale/uclibc/c_locale.cc 2008-08-16 01:29:20.000000000 -0700
++++ gcc-4.3.1/libstdc++-v3/config/locale/uclibc/c_locale.cc 2008-08-16 01:33:00.000000000 -0700
@@ -39,20 +39,6 @@
#include <langinfo.h>
#include <bits/c++locale_internal.h>
@@ -70,11 +74,13 @@
-#define __duplocale(a) __c_locale()
-#endif
-
- namespace std
+ namespace std
{
template<>
---- gcc/libstdc++-v3/config/locale/uclibc/collate_members.cc.uclibc200no__x~ 2006-03-10 15:06:17 +0100
-+++ gcc/libstdc++-v3/config/locale/uclibc/collate_members.cc 2006-03-10 15:32:37 +0100
+Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/collate_members.cc
+===================================================================
+--- gcc-4.3.1.orig/libstdc++-v3/config/locale/uclibc/collate_members.cc 2008-08-16 01:29:20.000000000 -0700
++++ gcc-4.3.1/libstdc++-v3/config/locale/uclibc/collate_members.cc 2008-08-16 01:30:31.000000000 -0700
@@ -36,13 +36,6 @@
#include <locale>
#include <bits/c++locale_internal.h>
@@ -89,8 +95,10 @@
namespace std
{
// These are basically extensions to char_traits, and perhaps should
---- gcc/libstdc++-v3/config/locale/uclibc/monetary_members.cc.uclibc200no__x~ 2006-03-10 15:06:17 +0100
-+++ gcc/libstdc++-v3/config/locale/uclibc/monetary_members.cc 2006-03-10 15:32:37 +0100
+Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/monetary_members.cc
+===================================================================
+--- gcc-4.3.1.orig/libstdc++-v3/config/locale/uclibc/monetary_members.cc 2008-08-16 01:29:20.000000000 -0700
++++ gcc-4.3.1/libstdc++-v3/config/locale/uclibc/monetary_members.cc 2008-08-16 01:30:31.000000000 -0700
@@ -43,10 +43,6 @@
#warning tailor for stub locale support
#endif
@@ -102,8 +110,10 @@
namespace std
{
// Construct and return valid pattern consisting of some combination of:
---- gcc/libstdc++-v3/config/locale/uclibc/numeric_members.cc.uclibc200no__x~ 2006-03-10 15:06:17 +0100
-+++ gcc/libstdc++-v3/config/locale/uclibc/numeric_members.cc 2006-03-10 15:32:37 +0100
+Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/numeric_members.cc
+===================================================================
+--- gcc-4.3.1.orig/libstdc++-v3/config/locale/uclibc/numeric_members.cc 2008-08-16 01:29:20.000000000 -0700
++++ gcc-4.3.1/libstdc++-v3/config/locale/uclibc/numeric_members.cc 2008-08-16 01:30:31.000000000 -0700
@@ -41,9 +41,6 @@
#ifdef __UCLIBC_MJN3_ONLY__
#warning tailor for stub locale support
@@ -114,8 +124,10 @@
namespace std
{
---- gcc/libstdc++-v3/config/locale/uclibc/time_members.cc.uclibc200no__x~ 2006-03-10 15:06:17 +0100
-+++ gcc/libstdc++-v3/config/locale/uclibc/time_members.cc 2006-03-10 15:32:37 +0100
+Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/time_members.cc
+===================================================================
+--- gcc-4.3.1.orig/libstdc++-v3/config/locale/uclibc/time_members.cc 2008-08-16 01:29:20.000000000 -0700
++++ gcc-4.3.1/libstdc++-v3/config/locale/uclibc/time_members.cc 2008-08-16 01:30:31.000000000 -0700
@@ -40,9 +40,6 @@
#ifdef __UCLIBC_MJN3_ONLY__
#warning tailor for stub locale support
@@ -126,8 +138,10 @@
namespace std
{
---- gcc/libstdc++-v3/config/locale/uclibc/ctype_members.cc.uclibc200no__x~ 2006-03-10 15:06:17 +0100
-+++ gcc/libstdc++-v3/config/locale/uclibc/ctype_members.cc 2006-03-10 15:32:37 +0100
+Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/ctype_members.cc
+===================================================================
+--- gcc-4.3.1.orig/libstdc++-v3/config/locale/uclibc/ctype_members.cc 2008-08-16 01:29:20.000000000 -0700
++++ gcc-4.3.1/libstdc++-v3/config/locale/uclibc/ctype_members.cc 2008-08-16 01:30:31.000000000 -0700
@@ -38,13 +38,6 @@
#undef _LIBC
#include <bits/c++locale_internal.h>
@@ -142,8 +156,10 @@
namespace std
{
// NB: The other ctype<char> specializations are in src/locale.cc and
---- gcc/libstdc++-v3/config/locale/uclibc/messages_members.cc.uclibc200no__x~ 2006-03-10 15:06:17 +0100
-+++ gcc/libstdc++-v3/config/locale/uclibc/messages_members.cc 2006-03-10 15:32:37 +0100
+Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/messages_members.cc
+===================================================================
+--- gcc-4.3.1.orig/libstdc++-v3/config/locale/uclibc/messages_members.cc 2008-08-16 01:27:18.000000000 -0700
++++ gcc-4.3.1/libstdc++-v3/config/locale/uclibc/messages_members.cc 2008-08-16 01:30:31.000000000 -0700
@@ -39,13 +39,10 @@
#ifdef __UCLIBC_MJN3_ONLY__
#warning fix gettext stuff
@@ -160,8 +176,10 @@
#define gettext(msgid) (msgid)
#endif
---- gcc/libstdc++-v3/config/locale/uclibc/messages_members.h.uclibc200no__x~ 2006-03-10 15:06:17 +0100
-+++ gcc/libstdc++-v3/config/locale/uclibc/messages_members.h 2006-03-10 15:32:37 +0100
+Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/messages_members.h
+===================================================================
+--- gcc-4.3.1.orig/libstdc++-v3/config/locale/uclibc/messages_members.h 2008-08-16 01:29:20.000000000 -0700
++++ gcc-4.3.1/libstdc++-v3/config/locale/uclibc/messages_members.h 2008-08-16 01:31:43.000000000 -0700
@@ -36,15 +36,11 @@
#ifdef __UCLIBC_MJN3_ONLY__
#warning fix prototypes for *textdomain funcs
@@ -184,16 +202,16 @@
// Non-virtual member functions.
@@ -70,7 +66,7 @@
- messages<_CharT>::open(const basic_string<char>& __s, const locale& __loc,
+ messages<_CharT>::open(const basic_string<char>& __s, const locale& __loc,
const char* __dir) const
- {
+ {
- __bindtextdomain(__s.c_str(), __dir);
+ bindtextdomain(__s.c_str(), __dir);
- return this->do_open(__s, __loc);
+ return this->do_open(__s, __loc);
}
@@ -90,7 +86,7 @@
- {
+ {
// No error checking is done, assume the catalog exists and can
// be used.
- __textdomain(__s.c_str());
@@ -201,8 +219,10 @@
return 0;
}
---- gcc/libstdc++-v3/config/locale/uclibc/c_locale.h.uclibc200no__x~ 2006-03-10 15:06:17 +0100
-+++ gcc/libstdc++-v3/config/locale/uclibc/c_locale.h 2006-03-10 15:32:37 +0100
+Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/c_locale.h
+===================================================================
+--- gcc-4.3.1.orig/libstdc++-v3/config/locale/uclibc/c_locale.h 2008-08-16 01:29:20.000000000 -0700
++++ gcc-4.3.1/libstdc++-v3/config/locale/uclibc/c_locale.h 2008-08-16 01:30:31.000000000 -0700
@@ -68,6 +68,7 @@
{
extern "C" __typeof(uselocale) __uselocale;