summaryrefslogtreecommitdiff
path: root/sources/gcc-810-libstd++-locale.patch
diff options
context:
space:
mode:
Diffstat (limited to 'sources/gcc-810-libstd++-locale.patch')
-rw-r--r--sources/gcc-810-libstd++-locale.patch283
1 files changed, 0 insertions, 283 deletions
diff --git a/sources/gcc-810-libstd++-locale.patch b/sources/gcc-810-libstd++-locale.patch
deleted file mode 100644
index d43b950e5..000000000
--- a/sources/gcc-810-libstd++-locale.patch
+++ /dev/null
@@ -1,283 +0,0 @@
-diff -urN gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/c_locale.cc gcc-3.3.1/libstdc++-v3/config/locale/gnu/c_locale.cc
---- gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/c_locale.cc 2003-02-28 00:09:52.000000000 -0600
-+++ gcc-3.3.1/libstdc++-v3/config/locale/gnu/c_locale.cc 2003-08-31 10:55:17.000000000 -0500
-@@ -195,12 +195,15 @@
- "LC_TIME",
- "LC_COLLATE",
- "LC_MONETARY",
-- "LC_MESSAGES",
-+ "LC_MESSAGES"
-+#if _GLIBCPP_NUM_CATEGORIES != 0
-+ ,
- "LC_PAPER",
- "LC_NAME",
- "LC_ADDRESS",
- "LC_TELEPHONE",
- "LC_MEASUREMENT",
- "LC_IDENTIFICATION"
-+#endif
- };
- } // namespace std
-diff -urN gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/c_locale.h gcc-3.3.1/libstdc++-v3/config/locale/gnu/c_locale.h
---- gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/c_locale.h 2003-01-23 12:56:16.000000000 -0600
-+++ gcc-3.3.1/libstdc++-v3/config/locale/gnu/c_locale.h 2003-08-31 10:55:17.000000000 -0500
-@@ -46,6 +46,10 @@
- #define _GLIBCPP_C_LOCALE_GNU 1
-
- #define _GLIBCPP_NUM_CATEGORIES 6
-+#ifdef __UCLIBC__
-+#undef _GLIBCPP_NUM_CATEGORIES
-+#define _GLIBCPP_NUM_CATEGORIES 0
-+#endif
-
- #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
- namespace __gnu_cxx
-diff -urN gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/c++locale_internal.h gcc-3.3.1/libstdc++-v3/config/locale/gnu/c++locale_internal.h
---- gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/c++locale_internal.h 2002-09-05 02:46:16.000000000 -0500
-+++ gcc-3.3.1/libstdc++-v3/config/locale/gnu/c++locale_internal.h 2003-08-31 10:55:17.000000000 -0500
-@@ -48,7 +48,9 @@
- extern "C" __typeof(towlower_l) __towlower_l;
- extern "C" __typeof(towupper_l) __towupper_l;
- extern "C" __typeof(wcscoll_l) __wcscoll_l;
-+#ifdef HAVE_WCSFTIME
- extern "C" __typeof(wcsftime_l) __wcsftime_l;
-+#endif
- extern "C" __typeof(wcsxfrm_l) __wcsxfrm_l;
- extern "C" __typeof(wctype_l) __wctype_l;
- extern "C" __typeof(newlocale) __newlocale;
-diff -urN gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/messages_members.cc gcc-3.3.1/libstdc++-v3/config/locale/gnu/messages_members.cc
---- gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/messages_members.cc 2003-02-28 00:09:52.000000000 -0600
-+++ gcc-3.3.1/libstdc++-v3/config/locale/gnu/messages_members.cc 2003-08-31 10:55:17.000000000 -0500
-@@ -36,6 +36,13 @@
- #include <locale>
- #include <bits/c++locale_internal.h>
-
-+#ifdef __UCLIBC__
-+extern "C" char *__dcgettext(const char *domainname,
-+ const char *msgid, int category);
-+#undef gettext
-+#define gettext(msgid) __dcgettext(NULL, msgid, LC_MESSAGES)
-+#endif
-+
- namespace std
- {
- // Specializations.
-diff -urN gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/messages_members.h gcc-3.3.1/libstdc++-v3/config/locale/gnu/messages_members.h
---- gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/messages_members.h 2003-01-06 16:20:03.000000000 -0600
-+++ gcc-3.3.1/libstdc++-v3/config/locale/gnu/messages_members.h 2003-08-31 10:55:17.000000000 -0500
-@@ -33,6 +33,12 @@
-
- // Written by Benjamin Kosnik <bkoz@redhat.com>
-
-+#ifdef __UCLIBC__
-+extern "C" char *__textdomain(const char *domainname);
-+extern "C" char *__bindtextdomain(const char *domainname,
-+ const char *dirname);
-+#endif
-+
- // Non-virtual member functions.
- template<typename _CharT>
- messages<_CharT>::messages(size_t __refs)
-@@ -61,7 +67,11 @@
- messages<_CharT>::open(const basic_string<char>& __s, const locale& __loc,
- const char* __dir) const
- {
-+#ifdef __UCLIBC__
-+ __bindtextdomain(__s.c_str(), __dir);
-+#else
- bindtextdomain(__s.c_str(), __dir);
-+#endif
- return this->do_open(__s, __loc);
- }
-
-@@ -83,7 +93,11 @@
- {
- // No error checking is done, assume the catalog exists and can
- // be used.
-+#ifdef __UCLIBC__
-+ __textdomain(__s.c_str());
-+#else
- textdomain(__s.c_str());
-+#endif
- return 0;
- }
-
-diff -urN gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/numeric_members.cc gcc-3.3.1/libstdc++-v3/config/locale/gnu/numeric_members.cc
---- gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/numeric_members.cc 2003-02-28 00:09:52.000000000 -0600
-+++ gcc-3.3.1/libstdc++-v3/config/locale/gnu/numeric_members.cc 2003-08-31 10:55:18.000000000 -0500
-@@ -86,8 +86,13 @@
- else
- {
- // Named locale.
-+#ifdef __UCLIBC__
-+ _M_decimal_point = static_cast<wchar_t>(((union { const char *__s; unsigned int __w; }){ __s: __cloc->decimal_point_wc }).__w);
-+ _M_thousands_sep = static_cast<wchar_t>(((union { const char *__s; unsigned int __w; }){ __s: __cloc->thousands_sep_wc }).__w);
-+#else
- _M_decimal_point = static_cast<wchar_t>(((union { const char *__s; unsigned int __w; }){ __s: __nl_langinfo_l(_NL_NUMERIC_DECIMAL_POINT_WC, __cloc)}).__w);
- _M_thousands_sep = static_cast<wchar_t>(((union { const char *__s; unsigned int __w; }){ __s: __nl_langinfo_l(_NL_NUMERIC_THOUSANDS_SEP_WC, __cloc)}).__w);
-+#endif
- if (_M_thousands_sep == L'\0')
- _M_grouping = "";
- else
-diff -urN gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/time_members.cc gcc-3.3.1/libstdc++-v3/config/locale/gnu/time_members.cc
---- gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/time_members.cc 2003-02-28 00:09:52.000000000 -0600
-+++ gcc-3.3.1/libstdc++-v3/config/locale/gnu/time_members.cc 2003-08-31 10:55:18.000000000 -0500
-@@ -183,6 +183,7 @@
- }
- }
-
-+#ifndef __UCLIBC__
- #ifdef _GLIBCPP_USE_WCHAR_T
- template<>
- void
-@@ -328,4 +329,5 @@
- }
- }
- #endif
-+#endif
- }
-diff -urN gcc-3.3.1-old/libstdc++-v3/config/os/gnu-linux/ctype_base.h gcc-3.3.1/libstdc++-v3/config/os/gnu-linux/ctype_base.h
---- gcc-3.3.1-old/libstdc++-v3/config/os/gnu-linux/ctype_base.h 2002-09-09 15:26:41.000000000 -0500
-+++ gcc-3.3.1/libstdc++-v3/config/os/gnu-linux/ctype_base.h 2003-08-31 10:55:18.000000000 -0500
-@@ -36,11 +36,18 @@
- struct ctype_base
- {
- // Non-standard typedefs.
-+#ifdef __UCLIBC__
-+ typedef const __ctype_touplow_t* __to_type;
-+ // NB: Offsets into ctype<char>::_M_table force a particular size
-+ // on the mask type. Because of this, we don't use an enum.
-+ typedef __ctype_mask_t mask;
-+#else
- typedef const int* __to_type;
--
- // NB: Offsets into ctype<char>::_M_table force a particular size
- // on the mask type. Because of this, we don't use an enum.
- typedef unsigned short mask;
-+#endif
-+
- static const mask upper = _ISupper;
- static const mask lower = _ISlower;
- static const mask alpha = _ISalpha;
-diff -urN gcc-3.3.1-old/libstdc++-v3/include/c_std/std_cstdlib.h gcc-3.3.1/libstdc++-v3/include/c_std/std_cstdlib.h
---- gcc-3.3.1-old/libstdc++-v3/include/c_std/std_cstdlib.h 2003-04-18 05:08:05.000000000 -0500
-+++ gcc-3.3.1/libstdc++-v3/include/c_std/std_cstdlib.h 2003-08-31 10:55:18.000000000 -0500
-@@ -101,9 +101,11 @@
- using ::labs;
- using ::ldiv;
- using ::malloc;
-+#if _GLIBCPP_USE_WCHAR_T
- using ::mblen;
- using ::mbstowcs;
- using ::mbtowc;
-+#endif
- using ::qsort;
- using ::rand;
- using ::realloc;
-@@ -112,8 +114,10 @@
- using ::strtol;
- using ::strtoul;
- using ::system;
-+#if _GLIBCPP_USE_WCHAR_T
- using ::wcstombs;
- using ::wctomb;
-+#endif
-
- inline long
- abs(long __i) { return labs(__i); }
-diff -urN gcc-3.3.1-old/libstdc++-v3/include/c_std/std_cwchar.h gcc-3.3.1/libstdc++-v3/include/c_std/std_cwchar.h
---- gcc-3.3.1-old/libstdc++-v3/include/c_std/std_cwchar.h 2003-04-18 05:08:05.000000000 -0500
-+++ gcc-3.3.1/libstdc++-v3/include/c_std/std_cwchar.h 2003-08-31 10:55:18.000000000 -0500
-@@ -165,7 +165,9 @@
- using ::wcscoll;
- using ::wcscpy;
- using ::wcscspn;
-+#ifdef HAVE_WCSFTIME
- using ::wcsftime;
-+#endif
- using ::wcslen;
- using ::wcsncat;
- using ::wcsncmp;
-diff -urN gcc-3.3.2-old/libstdc++-v3/config/locale/gnu/ctype_members.cc gcc-3.3.2/libstdc++-v3/config/locale/gnu/ctype_members.cc
---- gcc-3.3.2-old/libstdc++-v3/config/locale/gnu/ctype_members.cc 2003-10-07 03:40:58.000000000 -0500
-+++ gcc-3.3.2/libstdc++-v3/config/locale/gnu/ctype_members.cc 2003-11-10 14:21:45.000000000 -0600
-@@ -36,6 +36,14 @@
- #include <locale>
- #include <bits/c++locale_internal.h>
-
-+#ifdef __UCLIBC_HAS_XLOCALE__
-+struct __uclibc_locale_struct_header {
-+ const __ctype_mask_t *__ctype_b;
-+ const __ctype_touplow_t *__ctype_tolower;
-+ const __ctype_touplow_t *__ctype_toupper;
-+};
-+#endif
-+
- namespace std
- {
- // NB: The other ctype<char> specializations are in src/locale.cc and
-@@ -46,9 +54,9 @@
- {
- _S_destroy_c_locale(_M_c_locale_ctype);
- _S_create_c_locale(_M_c_locale_ctype, __s);
-- _M_toupper = _M_c_locale_ctype->__ctype_toupper;
-- _M_tolower = _M_c_locale_ctype->__ctype_tolower;
-- _M_table = _M_c_locale_ctype->__ctype_b;
-+ _M_toupper = ((struct __uclibc_locale_struct_header *)_M_c_locale_ctype)->__ctype_toupper;
-+ _M_tolower = ((struct __uclibc_locale_struct_header *)_M_c_locale_ctype)->__ctype_tolower;
-+ _M_table = ((struct __uclibc_locale_struct_header *)_M_c_locale_ctype)->__ctype_b;
- }
-
- #ifdef _GLIBCPP_USE_WCHAR_T
-diff -urN gcc-3.3.2-old/libstdc++-v3/config/os/gnu-linux/ctype_noninline.h gcc-3.3.2/libstdc++-v3/config/os/gnu-linux/ctype_noninline.h
---- gcc-3.3.2-old/libstdc++-v3/config/os/gnu-linux/ctype_noninline.h 2002-10-08 18:32:22.000000000 -0500
-+++ gcc-3.3.2/libstdc++-v3/config/os/gnu-linux/ctype_noninline.h 2003-11-10 14:20:37.000000000 -0600
-@@ -35,11 +35,21 @@
- // Information as gleaned from /usr/include/ctype.h
-
- #if _GLIBCPP_C_LOCALE_GNU
-+#ifdef __UCLIBC_HAS_XLOCALE__
-+struct __uclibc_locale_struct_header {
-+ const __ctype_mask_t *__ctype_b;
-+ const __ctype_touplow_t *__ctype_tolower;
-+ const __ctype_touplow_t *__ctype_toupper;
-+};
-+#endif
-+#endif
-+
-+#if _GLIBCPP_C_LOCALE_GNU
- const ctype_base::mask*
- ctype<char>::classic_table() throw()
- {
- locale::classic();
-- return _S_c_locale->__ctype_b;
-+ return ((struct __uclibc_locale_struct_header *)_S_c_locale)->__ctype_b;
- }
- #else
- const ctype_base::mask*
-@@ -65,9 +75,9 @@
- : __ctype_abstract_base<char>(__refs), _M_del(__table != 0 && __del)
- {
- _M_c_locale_ctype = _S_clone_c_locale(__cloc);
-- _M_toupper = _M_c_locale_ctype->__ctype_toupper;
-- _M_tolower = _M_c_locale_ctype->__ctype_tolower;
-- _M_table = __table ? __table : _M_c_locale_ctype->__ctype_b;
-+ _M_toupper = ((struct __uclibc_locale_struct_header *)_M_c_locale_ctype)->__ctype_toupper;
-+ _M_tolower = ((struct __uclibc_locale_struct_header *)_M_c_locale_ctype)->__ctype_tolower;
-+ _M_table = __table ? __table : ((struct __uclibc_locale_struct_header *)_M_c_locale_ctype)->__ctype_b;
- }
- #else
- ctype<char>::ctype(__c_locale, const mask* __table, bool __del,
-@@ -96,9 +106,9 @@
- __ctype_abstract_base<char>(__refs), _M_del(__table != 0 && __del)
- {
- _M_c_locale_ctype = _S_c_locale;
-- _M_toupper = _M_c_locale_ctype->__ctype_toupper;
-- _M_tolower = _M_c_locale_ctype->__ctype_tolower;
-- _M_table = __table ? __table : _M_c_locale_ctype->__ctype_b;
-+ _M_toupper = ((struct __uclibc_locale_struct_header *)_M_c_locale_ctype)->__ctype_toupper;
-+ _M_tolower = ((struct __uclibc_locale_struct_header *)_M_c_locale_ctype)->__ctype_tolower;
-+ _M_table = __table ? __table : ((struct __uclibc_locale_struct_header *)_M_c_locale_ctype)->__ctype_b;
- }
- #else
- ctype<char>::ctype(const mask* __table, bool __del, size_t __refs) :