|
@@ -1,70 +1,29 @@
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/acinclude.m4 gcc-4.1.0-patched/libstdc++-v3/acinclude.m4
|
|
|
---- gcc-4.1.0/libstdc++-v3/acinclude.m4 2005-04-11 19:13:06.000000000 -0500
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/acinclude.m4 2005-04-30 19:36:16.917899167 -0500
|
|
|
-@@ -1047,7 +1047,7 @@
|
|
|
- AC_MSG_CHECKING([for C locale to use])
|
|
|
- GLIBCXX_ENABLE(clocale,auto,[@<:@=MODEL@:>@],
|
|
|
- [use MODEL for target locale package],
|
|
|
-- [permit generic|gnu|ieee_1003.1-2001|yes|no|auto])
|
|
|
-+ [permit generic|gnu|ieee_1003.1-2001|uclibc|yes|no|auto])
|
|
|
-
|
|
|
- # If they didn't use this option switch, or if they specified --enable
|
|
|
- # with no specific model, we'll have to look for one. If they
|
|
|
-@@ -1063,6 +1063,9 @@
|
|
|
- # Default to "generic".
|
|
|
- if test $enable_clocale_flag = auto; then
|
|
|
- case ${target_os} in
|
|
|
-+ *-uclibc*)
|
|
|
-+ enable_clocale_flag=uclibc
|
|
|
-+ ;;
|
|
|
- linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu)
|
|
|
- AC_EGREP_CPP([_GLIBCXX_ok], [
|
|
|
- #include <features.h>
|
|
|
-@@ -1206,6 +1209,41 @@
|
|
|
- CTIME_CC=config/locale/generic/time_members.cc
|
|
|
- CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h
|
|
|
- ;;
|
|
|
-+ uclibc)
|
|
|
-+ AC_MSG_RESULT(uclibc)
|
|
|
-+
|
|
|
-+ # Declare intention to use gettext, and add support for specific
|
|
|
-+ # languages.
|
|
|
-+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT
|
|
|
-+ ALL_LINGUAS="de fr"
|
|
|
-+
|
|
|
-+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc.
|
|
|
-+ AC_CHECK_PROG(check_msgfmt, msgfmt, yes, no)
|
|
|
-+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then
|
|
|
-+ USE_NLS=yes
|
|
|
-+ fi
|
|
|
-+ # Export the build objects.
|
|
|
-+ for ling in $ALL_LINGUAS; do \
|
|
|
-+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \
|
|
|
-+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \
|
|
|
-+ done
|
|
|
-+ AC_SUBST(glibcxx_MOFILES)
|
|
|
-+ AC_SUBST(glibcxx_POFILES)
|
|
|
-+
|
|
|
-+ CLOCALE_H=config/locale/uclibc/c_locale.h
|
|
|
-+ CLOCALE_CC=config/locale/uclibc/c_locale.cc
|
|
|
-+ CCODECVT_H=config/locale/ieee_1003.1-2001/codecvt_specializations.h
|
|
|
-+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc
|
|
|
-+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc
|
|
|
-+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc
|
|
|
-+ CMESSAGES_H=config/locale/uclibc/messages_members.h
|
|
|
-+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc
|
|
|
-+ CMONEY_CC=config/locale/uclibc/monetary_members.cc
|
|
|
-+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc
|
|
|
-+ CTIME_H=config/locale/uclibc/time_members.h
|
|
|
-+ CTIME_CC=config/locale/uclibc/time_members.cc
|
|
|
-+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h
|
|
|
-+ ;;
|
|
|
- esac
|
|
|
+--- gcc/libstdc++-v3/include/c_compatibility/wchar.h.uclibc200~ 2006-03-06 20:52:07 +0100
|
|
|
++++ gcc/libstdc++-v3/include/c_compatibility/wchar.h 2006-03-10 15:06:17 +0100
|
|
|
+@@ -101,7 +101,9 @@
|
|
|
+ using std::wmemcpy;
|
|
|
+ using std::wmemmove;
|
|
|
+ using std::wmemset;
|
|
|
++#if _GLIBCXX_HAVE_WCSFTIME
|
|
|
+ using std::wcsftime;
|
|
|
++#endif
|
|
|
|
|
|
- # This is where the testsuite looks for locale catalogs, using the
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 2005-04-30 19:36:16.918898999 -0500
|
|
|
+ #if _GLIBCXX_USE_C99
|
|
|
+ using std::wcstold;
|
|
|
+--- gcc/libstdc++-v3/include/c_std/std_cwchar.h.uclibc200~ 2006-03-06 20:52:14 +0100
|
|
|
++++ gcc/libstdc++-v3/include/c_std/std_cwchar.h 2006-03-10 15:06:17 +0100
|
|
|
+@@ -182,7 +182,9 @@
|
|
|
+ using ::wcscoll;
|
|
|
+ using ::wcscpy;
|
|
|
+ using ::wcscspn;
|
|
|
++#if _GLIBCXX_HAVE_WCSFTIME
|
|
|
+ using ::wcsftime;
|
|
|
++#endif
|
|
|
+ using ::wcslen;
|
|
|
+ using ::wcsncat;
|
|
|
+ using ::wcsncmp;
|
|
|
+--- gcc/libstdc++-v3/config/locale/uclibc/c++locale_internal.h.uclibc200~ 2006-03-10 15:06:17 +0100
|
|
|
++++ gcc/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 2006-03-10 15:06:17 +0100
|
|
|
@@ -0,0 +1,63 @@
|
|
|
+// Prototypes for GLIBC thread locale __-prefixed functions -*- C++ -*-
|
|
|
+
|
|
@@ -129,9 +88,8 @@ diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h gcc-4
|
|
|
+#endif
|
|
|
+
|
|
|
+#endif // GLIBC 2.3 and later
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c_locale.cc
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.cc 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c_locale.cc 2005-04-30 19:36:16.919898830 -0500
|
|
|
+--- gcc/libstdc++-v3/config/locale/uclibc/c_locale.cc.uclibc200~ 2006-03-10 15:06:17 +0100
|
|
|
++++ gcc/libstdc++-v3/config/locale/uclibc/c_locale.cc 2006-03-10 15:06:17 +0100
|
|
|
@@ -0,0 +1,160 @@
|
|
|
+// Wrapper for underlying C-language localization -*- C++ -*-
|
|
|
+
|
|
@@ -293,9 +251,8 @@ diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.cc gcc-4.1.0-patc
|
|
|
+{
|
|
|
+ const char* const* const locale::_S_categories = __gnu_cxx::category_names;
|
|
|
+} // namespace std
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.h gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c_locale.h
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.h 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c_locale.h 2005-04-30 19:36:16.920898661 -0500
|
|
|
+--- gcc/libstdc++-v3/config/locale/uclibc/c_locale.h.uclibc200~ 2006-03-10 15:06:17 +0100
|
|
|
++++ gcc/libstdc++-v3/config/locale/uclibc/c_locale.h 2006-03-10 15:06:17 +0100
|
|
|
@@ -0,0 +1,117 @@
|
|
|
+// Wrapper for underlying C-language localization -*- C++ -*-
|
|
|
+
|
|
@@ -414,9 +371,8 @@ diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.h gcc-4.1.0-patch
|
|
|
+}
|
|
|
+
|
|
|
+#endif
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/codecvt_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/codecvt_members.cc
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/codecvt_members.cc 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/codecvt_members.cc 2005-04-30 19:36:16.921898492 -0500
|
|
|
+--- gcc/libstdc++-v3/config/locale/uclibc/codecvt_members.cc.uclibc200~ 2006-03-10 15:06:17 +0100
|
|
|
++++ gcc/libstdc++-v3/config/locale/uclibc/codecvt_members.cc 2006-03-10 15:06:17 +0100
|
|
|
@@ -0,0 +1,306 @@
|
|
|
+// std::codecvt implementation details, GNU version -*- C++ -*-
|
|
|
+
|
|
@@ -724,9 +680,8 @@ diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/codecvt_members.cc gcc-4.1
|
|
|
+ }
|
|
|
+#endif
|
|
|
+}
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/collate_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/collate_members.cc
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/collate_members.cc 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/collate_members.cc 2005-04-30 19:36:16.922898323 -0500
|
|
|
+--- gcc/libstdc++-v3/config/locale/uclibc/collate_members.cc.uclibc200~ 2006-03-10 15:06:17 +0100
|
|
|
++++ gcc/libstdc++-v3/config/locale/uclibc/collate_members.cc 2006-03-10 15:06:17 +0100
|
|
|
@@ -0,0 +1,80 @@
|
|
|
+// std::collate implementation details, GNU version -*- C++ -*-
|
|
|
+
|
|
@@ -808,9 +763,8 @@ diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/collate_members.cc gcc-4.1
|
|
|
+ { return __wcsxfrm_l(__to, __from, __n, _M_c_locale_collate); }
|
|
|
+#endif
|
|
|
+}
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/ctype_members.cc
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/ctype_members.cc 2005-04-30 19:36:16.923898155 -0500
|
|
|
+--- gcc/libstdc++-v3/config/locale/uclibc/ctype_members.cc.uclibc200~ 2006-03-10 15:06:17 +0100
|
|
|
++++ gcc/libstdc++-v3/config/locale/uclibc/ctype_members.cc 2006-03-10 15:06:17 +0100
|
|
|
@@ -0,0 +1,300 @@
|
|
|
+// std::ctype implementation details, GNU version -*- C++ -*-
|
|
|
+
|
|
@@ -1112,9 +1066,8 @@ diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc gcc-4.1.0
|
|
|
+ }
|
|
|
+#endif // _GLIBCXX_USE_WCHAR_T
|
|
|
+}
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/messages_members.cc
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.cc 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/messages_members.cc 2005-04-30 19:36:16.925897817 -0500
|
|
|
+--- gcc/libstdc++-v3/config/locale/uclibc/messages_members.cc.uclibc200~ 2006-03-10 15:06:17 +0100
|
|
|
++++ gcc/libstdc++-v3/config/locale/uclibc/messages_members.cc 2006-03-10 15:06:17 +0100
|
|
|
@@ -0,0 +1,100 @@
|
|
|
+// std::messages implementation details, GNU version -*- C++ -*-
|
|
|
+
|
|
@@ -1216,9 +1169,8 @@ diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.cc gcc-4.
|
|
|
+ }
|
|
|
+#endif
|
|
|
+}
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.h gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/messages_members.h
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.h 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/messages_members.h 2005-04-30 19:36:16.925897817 -0500
|
|
|
+--- gcc/libstdc++-v3/config/locale/uclibc/messages_members.h.uclibc200~ 2006-03-10 15:06:17 +0100
|
|
|
++++ gcc/libstdc++-v3/config/locale/uclibc/messages_members.h 2006-03-10 15:06:17 +0100
|
|
|
@@ -0,0 +1,118 @@
|
|
|
+// std::messages implementation details, GNU version -*- C++ -*-
|
|
|
+
|
|
@@ -1338,9 +1290,8 @@ diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.h gcc-4.1
|
|
|
+ this->_S_create_c_locale(this->_M_c_locale_messages, __s);
|
|
|
+ }
|
|
|
+ }
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/monetary_members.cc
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/monetary_members.cc 2005-04-30 19:36:16.927897479 -0500
|
|
|
+--- gcc/libstdc++-v3/config/locale/uclibc/monetary_members.cc.uclibc200~ 2006-03-10 15:06:17 +0100
|
|
|
++++ gcc/libstdc++-v3/config/locale/uclibc/monetary_members.cc 2006-03-10 15:06:17 +0100
|
|
|
@@ -0,0 +1,692 @@
|
|
|
+// std::moneypunct implementation details, GNU version -*- C++ -*-
|
|
|
+
|
|
@@ -2034,9 +1985,8 @@ diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc gcc-4.
|
|
|
+ }
|
|
|
+#endif
|
|
|
+}
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/numeric_members.cc
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/numeric_members.cc 2005-04-30 19:36:38.467261324 -0500
|
|
|
+--- gcc/libstdc++-v3/config/locale/uclibc/numeric_members.cc.uclibc200~ 2006-03-10 15:06:17 +0100
|
|
|
++++ gcc/libstdc++-v3/config/locale/uclibc/numeric_members.cc 2006-03-10 15:06:17 +0100
|
|
|
@@ -0,0 +1,160 @@
|
|
|
+// std::numpunct implementation details, GNU version -*- C++ -*-
|
|
|
+
|
|
@@ -2198,9 +2148,8 @@ diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc gcc-4.1
|
|
|
+ { delete _M_data; }
|
|
|
+ #endif
|
|
|
+}
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/time_members.cc
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.cc 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/time_members.cc 2005-04-30 19:36:16.929897142 -0500
|
|
|
+--- gcc/libstdc++-v3/config/locale/uclibc/time_members.cc.uclibc200~ 2006-03-10 15:06:17 +0100
|
|
|
++++ gcc/libstdc++-v3/config/locale/uclibc/time_members.cc 2006-03-10 15:06:17 +0100
|
|
|
@@ -0,0 +1,406 @@
|
|
|
+// std::time_get, std::time_put implementation, GNU version -*- C++ -*-
|
|
|
+
|
|
@@ -2608,9 +2557,8 @@ diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.cc gcc-4.1.0-
|
|
|
+ }
|
|
|
+#endif
|
|
|
+}
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.h gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/time_members.h
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.h 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/time_members.h 2005-04-30 19:36:16.929897142 -0500
|
|
|
+--- gcc/libstdc++-v3/config/locale/uclibc/time_members.h.uclibc200~ 2006-03-10 15:06:17 +0100
|
|
|
++++ gcc/libstdc++-v3/config/locale/uclibc/time_members.h 2006-03-10 15:06:17 +0100
|
|
|
@@ -0,0 +1,68 @@
|
|
|
+// std::time_get, std::time_put implementation, GNU version -*- C++ -*-
|
|
|
+
|
|
@@ -2680,307 +2628,80 @@ diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.h gcc-4.1.0-p
|
|
|
+ delete _M_data;
|
|
|
+ _S_destroy_c_locale(_M_c_locale_timepunct);
|
|
|
+ }
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_base.h gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_base.h
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_base.h 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_base.h 2005-04-30 19:36:16.930896973 -0500
|
|
|
-@@ -0,0 +1,64 @@
|
|
|
-+// Locale support -*- C++ -*-
|
|
|
-+
|
|
|
-+// Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004
|
|
|
-+// Free Software Foundation, Inc.
|
|
|
-+//
|
|
|
-+// This file is part of the GNU ISO C++ Library. This library is free
|
|
|
-+// software; you can redistribute it and/or modify it under the
|
|
|
-+// terms of the GNU General Public License as published by the
|
|
|
-+// Free Software Foundation; either version 2, or (at your option)
|
|
|
-+// any later version.
|
|
|
-+
|
|
|
-+// This library is distributed in the hope that it will be useful,
|
|
|
-+// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
-+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
-+// GNU General Public License for more details.
|
|
|
-+
|
|
|
-+// You should have received a copy of the GNU General Public License along
|
|
|
-+// with this library; see the file COPYING. If not, write to the Free
|
|
|
-+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
|
|
|
-+// USA.
|
|
|
-+
|
|
|
-+// As a special exception, you may use this file as part of a free software
|
|
|
-+// library without restriction. Specifically, if other files instantiate
|
|
|
-+// templates or use macros or inline functions from this file, or you compile
|
|
|
-+// this file and link it with other files to produce an executable, this
|
|
|
-+// file does not by itself cause the resulting executable to be covered by
|
|
|
-+// the GNU General Public License. This exception does not however
|
|
|
-+// invalidate any other reasons why the executable file might be covered by
|
|
|
-+// the GNU General Public License.
|
|
|
-+
|
|
|
-+//
|
|
|
-+// ISO C++ 14882: 22.1 Locales
|
|
|
-+//
|
|
|
-+
|
|
|
-+/** @file ctype_base.h
|
|
|
-+ * This is an internal header file, included by other library headers.
|
|
|
-+ * You should not attempt to use it directly.
|
|
|
-+ */
|
|
|
-+
|
|
|
-+// Information as gleaned from /usr/include/ctype.h
|
|
|
-+
|
|
|
-+ /// @brief Base class for ctype.
|
|
|
-+ struct ctype_base
|
|
|
-+ {
|
|
|
-+ // Note: In uClibc, the following two types depend on configuration.
|
|
|
-+
|
|
|
-+ // Non-standard typedefs.
|
|
|
-+ 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;
|
|
|
-+ static const mask upper = _ISupper;
|
|
|
-+ static const mask lower = _ISlower;
|
|
|
-+ static const mask alpha = _ISalpha;
|
|
|
-+ static const mask digit = _ISdigit;
|
|
|
-+ static const mask xdigit = _ISxdigit;
|
|
|
-+ static const mask space = _ISspace;
|
|
|
-+ static const mask print = _ISprint;
|
|
|
-+ static const mask graph = _ISalpha | _ISdigit | _ISpunct;
|
|
|
-+ static const mask cntrl = _IScntrl;
|
|
|
-+ static const mask punct = _ISpunct;
|
|
|
-+ static const mask alnum = _ISalpha | _ISdigit;
|
|
|
-+ };
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_inline.h gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_inline.h
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_inline.h 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_inline.h 2005-04-30 19:36:16.931896804 -0500
|
|
|
-@@ -0,0 +1,69 @@
|
|
|
-+// Locale support -*- C++ -*-
|
|
|
-+
|
|
|
-+// Copyright (C) 2000, 2002 Free Software Foundation, Inc.
|
|
|
-+//
|
|
|
-+// This file is part of the GNU ISO C++ Library. This library is free
|
|
|
-+// software; you can redistribute it and/or modify it under the
|
|
|
-+// terms of the GNU General Public License as published by the
|
|
|
-+// Free Software Foundation; either version 2, or (at your option)
|
|
|
-+// any later version.
|
|
|
-+
|
|
|
-+// This library is distributed in the hope that it will be useful,
|
|
|
-+// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
-+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
-+// GNU General Public License for more details.
|
|
|
-+
|
|
|
-+// You should have received a copy of the GNU General Public License along
|
|
|
-+// with this library; see the file COPYING. If not, write to the Free
|
|
|
-+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
|
|
|
-+// USA.
|
|
|
-+
|
|
|
-+// As a special exception, you may use this file as part of a free software
|
|
|
-+// library without restriction. Specifically, if other files instantiate
|
|
|
-+// templates or use macros or inline functions from this file, or you compile
|
|
|
-+// this file and link it with other files to produce an executable, this
|
|
|
-+// file does not by itself cause the resulting executable to be covered by
|
|
|
-+// the GNU General Public License. This exception does not however
|
|
|
-+// invalidate any other reasons why the executable file might be covered by
|
|
|
-+// the GNU General Public License.
|
|
|
-+
|
|
|
-+//
|
|
|
-+// ISO C++ 14882: 22.1 Locales
|
|
|
-+//
|
|
|
-+
|
|
|
-+// ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
|
|
|
-+// functions go in ctype.cc
|
|
|
-+
|
|
|
-+ bool
|
|
|
-+ ctype<char>::
|
|
|
-+ is(mask __m, char __c) const
|
|
|
-+ { return _M_table[static_cast<unsigned char>(__c)] & __m; }
|
|
|
-+
|
|
|
-+ const char*
|
|
|
-+ ctype<char>::
|
|
|
-+ is(const char* __low, const char* __high, mask* __vec) const
|
|
|
-+ {
|
|
|
-+ while (__low < __high)
|
|
|
-+ *__vec++ = _M_table[static_cast<unsigned char>(*__low++)];
|
|
|
-+ return __high;
|
|
|
-+ }
|
|
|
-+
|
|
|
-+ const char*
|
|
|
-+ ctype<char>::
|
|
|
-+ scan_is(mask __m, const char* __low, const char* __high) const
|
|
|
-+ {
|
|
|
-+ while (__low < __high
|
|
|
-+ && !(_M_table[static_cast<unsigned char>(*__low)] & __m))
|
|
|
-+ ++__low;
|
|
|
-+ return __low;
|
|
|
-+ }
|
|
|
-+
|
|
|
-+ const char*
|
|
|
-+ ctype<char>::
|
|
|
-+ scan_not(mask __m, const char* __low, const char* __high) const
|
|
|
-+ {
|
|
|
-+ while (__low < __high
|
|
|
-+ && (_M_table[static_cast<unsigned char>(*__low)] & __m) != 0)
|
|
|
-+ ++__low;
|
|
|
-+ return __low;
|
|
|
-+ }
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_noninline.h gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_noninline.h
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_noninline.h 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_noninline.h 2005-04-30 19:36:16.931896804 -0500
|
|
|
-@@ -0,0 +1,92 @@
|
|
|
-+// Locale support -*- C++ -*-
|
|
|
-+
|
|
|
-+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004
|
|
|
-+// Free Software Foundation, Inc.
|
|
|
-+//
|
|
|
-+// This file is part of the GNU ISO C++ Library. This library is free
|
|
|
-+// software; you can redistribute it and/or modify it under the
|
|
|
-+// terms of the GNU General Public License as published by the
|
|
|
-+// Free Software Foundation; either version 2, or (at your option)
|
|
|
-+// any later version.
|
|
|
-+
|
|
|
-+// This library is distributed in the hope that it will be useful,
|
|
|
-+// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
-+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
-+// GNU General Public License for more details.
|
|
|
-+
|
|
|
-+// You should have received a copy of the GNU General Public License along
|
|
|
-+// with this library; see the file COPYING. If not, write to the Free
|
|
|
-+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
|
|
|
-+// USA.
|
|
|
-+
|
|
|
-+// As a special exception, you may use this file as part of a free software
|
|
|
-+// library without restriction. Specifically, if other files instantiate
|
|
|
-+// templates or use macros or inline functions from this file, or you compile
|
|
|
-+// this file and link it with other files to produce an executable, this
|
|
|
-+// file does not by itself cause the resulting executable to be covered by
|
|
|
-+// the GNU General Public License. This exception does not however
|
|
|
-+// invalidate any other reasons why the executable file might be covered by
|
|
|
-+// the GNU General Public License.
|
|
|
-+
|
|
|
-+//
|
|
|
-+// ISO C++ 14882: 22.1 Locales
|
|
|
-+//
|
|
|
-+
|
|
|
-+// Information as gleaned from /usr/include/ctype.h
|
|
|
-+
|
|
|
-+ const ctype_base::mask*
|
|
|
-+ ctype<char>::classic_table() throw()
|
|
|
-+ { return __C_ctype_b; }
|
|
|
-+
|
|
|
-+ ctype<char>::ctype(__c_locale, const mask* __table, bool __del,
|
|
|
-+ size_t __refs)
|
|
|
-+ : facet(__refs), _M_c_locale_ctype(_S_get_c_locale()),
|
|
|
-+ _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0)
|
|
|
-+ {
|
|
|
-+ _M_toupper = __C_ctype_toupper;
|
|
|
-+ _M_tolower = __C_ctype_tolower;
|
|
|
-+ _M_table = __table ? __table : __C_ctype_b;
|
|
|
-+ memset(_M_widen, 0, sizeof(_M_widen));
|
|
|
-+ memset(_M_narrow, 0, sizeof(_M_narrow));
|
|
|
-+ }
|
|
|
-+
|
|
|
-+ ctype<char>::ctype(const mask* __table, bool __del, size_t __refs)
|
|
|
-+ : facet(__refs), _M_c_locale_ctype(_S_get_c_locale()),
|
|
|
-+ _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0)
|
|
|
-+ {
|
|
|
-+ _M_toupper = __C_ctype_toupper;
|
|
|
-+ _M_tolower = __C_ctype_tolower;
|
|
|
-+ _M_table = __table ? __table : __C_ctype_b;
|
|
|
-+ memset(_M_widen, 0, sizeof(_M_widen));
|
|
|
-+ memset(_M_narrow, 0, sizeof(_M_narrow));
|
|
|
-+ }
|
|
|
-+
|
|
|
-+ char
|
|
|
-+ ctype<char>::do_toupper(char __c) const
|
|
|
-+ { return _M_toupper[static_cast<unsigned char>(__c)]; }
|
|
|
-+
|
|
|
-+ const char*
|
|
|
-+ ctype<char>::do_toupper(char* __low, const char* __high) const
|
|
|
-+ {
|
|
|
-+ while (__low < __high)
|
|
|
-+ {
|
|
|
-+ *__low = _M_toupper[static_cast<unsigned char>(*__low)];
|
|
|
-+ ++__low;
|
|
|
-+ }
|
|
|
-+ return __high;
|
|
|
-+ }
|
|
|
-+
|
|
|
-+ char
|
|
|
-+ ctype<char>::do_tolower(char __c) const
|
|
|
-+ { return _M_tolower[static_cast<unsigned char>(__c)]; }
|
|
|
-+
|
|
|
-+ const char*
|
|
|
-+ ctype<char>::do_tolower(char* __low, const char* __high) const
|
|
|
-+ {
|
|
|
-+ while (__low < __high)
|
|
|
-+ {
|
|
|
-+ *__low = _M_tolower[static_cast<unsigned char>(*__low)];
|
|
|
-+ ++__low;
|
|
|
-+ }
|
|
|
-+ return __high;
|
|
|
-+ }
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/config/os/uclibc/os_defines.h gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/os_defines.h
|
|
|
---- gcc-4.1.0/libstdc++-v3/config/os/uclibc/os_defines.h 1969-12-31 18:00:00.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/os_defines.h 2005-04-30 19:36:16.932896635 -0500
|
|
|
-@@ -0,0 +1,44 @@
|
|
|
-+// Specific definitions for GNU/Linux -*- C++ -*-
|
|
|
-+
|
|
|
-+// Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
|
|
|
-+//
|
|
|
-+// This file is part of the GNU ISO C++ Library. This library is free
|
|
|
-+// software; you can redistribute it and/or modify it under the
|
|
|
-+// terms of the GNU General Public License as published by the
|
|
|
-+// Free Software Foundation; either version 2, or (at your option)
|
|
|
-+// any later version.
|
|
|
-+
|
|
|
-+// This library is distributed in the hope that it will be useful,
|
|
|
-+// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
-+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
-+// GNU General Public License for more details.
|
|
|
-+
|
|
|
-+// You should have received a copy of the GNU General Public License along
|
|
|
-+// with this library; see the file COPYING. If not, write to the Free
|
|
|
-+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
|
|
|
-+// USA.
|
|
|
-+
|
|
|
-+// As a special exception, you may use this file as part of a free software
|
|
|
-+// library without restriction. Specifically, if other files instantiate
|
|
|
-+// templates or use macros or inline functions from this file, or you compile
|
|
|
-+// this file and link it with other files to produce an executable, this
|
|
|
-+// file does not by itself cause the resulting executable to be covered by
|
|
|
-+// the GNU General Public License. This exception does not however
|
|
|
-+// invalidate any other reasons why the executable file might be covered by
|
|
|
-+// the GNU General Public License.
|
|
|
-+
|
|
|
-+#ifndef _GLIBCXX_OS_DEFINES
|
|
|
-+#define _GLIBCXX_OS_DEFINES 1
|
|
|
-+
|
|
|
-+// System-specific #define, typedefs, corrections, etc, go here. This
|
|
|
-+// file will come before all others.
|
|
|
-+
|
|
|
-+// This keeps isanum, et al from being propagated as macros.
|
|
|
-+#define __NO_CTYPE 1
|
|
|
+--- gcc/libstdc++-v3/acinclude.m4.uclibc200~ 2006-03-06 21:23:58 +0100
|
|
|
++++ gcc/libstdc++-v3/acinclude.m4 2006-03-10 15:06:17 +0100
|
|
|
+@@ -1369,7 +1369,7 @@
|
|
|
+ AC_MSG_CHECKING([for C locale to use])
|
|
|
+ GLIBCXX_ENABLE(clocale,auto,[@<:@=MODEL@:>@],
|
|
|
+ [use MODEL for target locale package],
|
|
|
+- [permit generic|gnu|ieee_1003.1-2001|yes|no|auto])
|
|
|
++ [permit generic|gnu|ieee_1003.1-2001|uclibc|yes|no|auto])
|
|
|
+
|
|
|
+ # If they didn't use this option switch, or if they specified --enable
|
|
|
+ # with no specific model, we'll have to look for one. If they
|
|
|
+@@ -1385,6 +1385,9 @@
|
|
|
+ # Default to "generic".
|
|
|
+ if test $enable_clocale_flag = auto; then
|
|
|
+ case ${target_os} in
|
|
|
++ *-uclibc*)
|
|
|
++ enable_clocale_flag=uclibc
|
|
|
++ ;;
|
|
|
+ linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu)
|
|
|
+ AC_EGREP_CPP([_GLIBCXX_ok], [
|
|
|
+ #include <features.h>
|
|
|
+@@ -1528,6 +1531,40 @@
|
|
|
+ CTIME_CC=config/locale/generic/time_members.cc
|
|
|
+ CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h
|
|
|
+ ;;
|
|
|
++ uclibc)
|
|
|
++ AC_MSG_RESULT(uclibc)
|
|
|
+
|
|
|
-+#include <features.h>
|
|
|
++ # Declare intention to use gettext, and add support for specific
|
|
|
++ # languages.
|
|
|
++ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT
|
|
|
++ ALL_LINGUAS="de fr"
|
|
|
+
|
|
|
-+// We must not see the optimized string functions GNU libc defines.
|
|
|
-+#define __NO_STRING_INLINES
|
|
|
++ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc.
|
|
|
++ AC_CHECK_PROG(check_msgfmt, msgfmt, yes, no)
|
|
|
++ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then
|
|
|
++ USE_NLS=yes
|
|
|
++ fi
|
|
|
++ # Export the build objects.
|
|
|
++ for ling in $ALL_LINGUAS; do \
|
|
|
++ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \
|
|
|
++ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \
|
|
|
++ done
|
|
|
++ AC_SUBST(glibcxx_MOFILES)
|
|
|
++ AC_SUBST(glibcxx_POFILES)
|
|
|
+
|
|
|
-+#endif
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/configure gcc-4.1.0-patched/libstdc++-v3/configure
|
|
|
---- gcc-4.1.0/libstdc++-v3/configure 2005-04-13 19:31:43.000000000 -0500
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/configure 2005-04-30 19:36:16.993886339 -0500
|
|
|
-@@ -3986,6 +3986,11 @@
|
|
|
- lt_cv_deplibs_check_method=pass_all
|
|
|
- ;;
|
|
|
++ CLOCALE_H=config/locale/uclibc/c_locale.h
|
|
|
++ CLOCALE_CC=config/locale/uclibc/c_locale.cc
|
|
|
++ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc
|
|
|
++ CCOLLATE_CC=config/locale/uclibc/collate_members.cc
|
|
|
++ CCTYPE_CC=config/locale/uclibc/ctype_members.cc
|
|
|
++ CMESSAGES_H=config/locale/uclibc/messages_members.h
|
|
|
++ CMESSAGES_CC=config/locale/uclibc/messages_members.cc
|
|
|
++ CMONEY_CC=config/locale/uclibc/monetary_members.cc
|
|
|
++ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc
|
|
|
++ CTIME_H=config/locale/uclibc/time_members.h
|
|
|
++ CTIME_CC=config/locale/uclibc/time_members.cc
|
|
|
++ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h
|
|
|
++ ;;
|
|
|
+ esac
|
|
|
+
|
|
|
+ # This is where the testsuite looks for locale catalogs, using the
|
|
|
+--- gcc/libstdc++-v3/configure.uclibc200~ 2006-03-10 14:40:13 +0100
|
|
|
++++ gcc/libstdc++-v3/configure 2006-03-10 15:06:17 +0100
|
|
|
+@@ -5764,7 +5764,7 @@
|
|
|
+ enableval="$enable_clocale"
|
|
|
|
|
|
-+linux-uclibc*)
|
|
|
-+ lt_cv_deplibs_check_method=pass_all
|
|
|
-+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
|
|
|
-+ ;;
|
|
|
-+
|
|
|
- netbsd* | knetbsd*-gnu)
|
|
|
- if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
|
|
|
- lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
|
|
|
-@@ -5744,6 +5749,9 @@
|
|
|
+ case "$enableval" in
|
|
|
+- generic|gnu|ieee_1003.1-2001|yes|no|auto) ;;
|
|
|
++ generic|gnu|ieee_1003.1-2001|uclibc|yes|no|auto) ;;
|
|
|
+ *) { { echo "$as_me:$LINENO: error: Unknown argument to enable/disable clocale" >&5
|
|
|
+ echo "$as_me: error: Unknown argument to enable/disable clocale" >&2;}
|
|
|
+ { (exit 1); exit 1; }; } ;;
|
|
|
+@@ -5789,6 +5789,9 @@
|
|
|
# Default to "generic".
|
|
|
if test $enable_clocale_flag = auto; then
|
|
|
case ${target_os} in
|
|
@@ -2990,7 +2711,7 @@ diff -urN gcc-4.1.0/libstdc++-v3/configure gcc-4.1.0-patched/libstdc++-v3/config
|
|
|
linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu)
|
|
|
cat >conftest.$ac_ext <<_ACEOF
|
|
|
/* confdefs.h. */
|
|
|
-@@ -5974,6 +5982,77 @@
|
|
|
+@@ -6019,6 +6022,76 @@
|
|
|
CTIME_CC=config/locale/generic/time_members.cc
|
|
|
CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h
|
|
|
;;
|
|
@@ -3053,7 +2774,6 @@ diff -urN gcc-4.1.0/libstdc++-v3/configure gcc-4.1.0-patched/libstdc++-v3/config
|
|
|
+
|
|
|
+ CLOCALE_H=config/locale/uclibc/c_locale.h
|
|
|
+ CLOCALE_CC=config/locale/uclibc/c_locale.cc
|
|
|
-+ CCODECVT_H=config/locale/ieee_1003.1-2001/codecvt_specializations.h
|
|
|
+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc
|
|
|
+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc
|
|
|
+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc
|
|
@@ -3068,179 +2788,3 @@ diff -urN gcc-4.1.0/libstdc++-v3/configure gcc-4.1.0-patched/libstdc++-v3/config
|
|
|
esac
|
|
|
|
|
|
# This is where the testsuite looks for locale catalogs, using the
|
|
|
-@@ -7686,21 +7765,6 @@
|
|
|
- echo "${ECHO_T}$enable_long_long" >&6
|
|
|
-
|
|
|
-
|
|
|
-- # Check whether --enable-wchar_t or --disable-wchar_t was given.
|
|
|
--if test "${enable_wchar_t+set}" = set; then
|
|
|
-- enableval="$enable_wchar_t"
|
|
|
--
|
|
|
-- case "$enableval" in
|
|
|
-- yes|no) ;;
|
|
|
-- *) { { echo "$as_me:$LINENO: error: Argument to enable/disable wchar_t must be yes or no" >&5
|
|
|
--echo "$as_me: error: Argument to enable/disable wchar_t must be yes or no" >&2;}
|
|
|
-- { (exit 1); exit 1; }; } ;;
|
|
|
-- esac
|
|
|
--
|
|
|
--else
|
|
|
-- enable_wchar_t=yes
|
|
|
--fi;
|
|
|
--
|
|
|
- if test x"$ac_c99_wchar" = x"yes" && test x"$enable_wchar_t" = x"yes"; then
|
|
|
-
|
|
|
- cat >>confdefs.h <<\_ACEOF
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/configure.host gcc-4.1.0-patched/libstdc++-v3/configure.host
|
|
|
---- gcc-4.1.0/libstdc++-v3/configure.host 2005-01-13 16:48:14.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/configure.host 2005-04-30 19:36:16.996885833 -0500
|
|
|
-@@ -249,6 +249,12 @@
|
|
|
- ;;
|
|
|
- esac
|
|
|
-
|
|
|
-+# Override for uClibc since linux-uclibc gets mishandled above.
|
|
|
-+case "${host_os}" in
|
|
|
-+ *-uclibc*)
|
|
|
-+ os_include_dir="os/uclibc"
|
|
|
-+ ;;
|
|
|
-+esac
|
|
|
-
|
|
|
- # Set any OS-dependent and CPU-dependent bits.
|
|
|
- # THIS TABLE IS SORTED. KEEP IT THAT WAY.
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/crossconfig.m4 gcc-4.1.0-patched/libstdc++-v3/crossconfig.m4
|
|
|
---- gcc-4.1.0/libstdc++-v3/crossconfig.m4 2005-04-06 18:31:16.000000000 -0500
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/crossconfig.m4 2005-04-30 19:36:16.997885664 -0500
|
|
|
-@@ -143,6 +143,99 @@
|
|
|
- ;;
|
|
|
- esac
|
|
|
- ;;
|
|
|
-+ *-uclibc*)
|
|
|
-+# Temporary hack until we implement the float versions of the libm funcs
|
|
|
-+ AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \
|
|
|
-+ machine/endian.h machine/param.h sys/machine.h sys/types.h \
|
|
|
-+ fp.h float.h endian.h inttypes.h locale.h float.h stdint.h])
|
|
|
-+ SECTION_FLAGS='-ffunction-sections -fdata-sections'
|
|
|
-+ AC_SUBST(SECTION_FLAGS)
|
|
|
-+ GLIBCXX_CHECK_LINKER_FEATURES
|
|
|
-+ GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT
|
|
|
-+ GLIBCXX_CHECK_WCHAR_T_SUPPORT
|
|
|
-+
|
|
|
-+ # For LFS.
|
|
|
-+ AC_DEFINE(HAVE_INT64_T)
|
|
|
-+ case "$target" in
|
|
|
-+ *-uclinux*)
|
|
|
-+ # Don't enable LFS with uClinux
|
|
|
-+ ;;
|
|
|
-+ *)
|
|
|
-+ AC_DEFINE(_GLIBCXX_USE_LFS)
|
|
|
-+ esac
|
|
|
-+
|
|
|
-+ # For showmanyc_helper().
|
|
|
-+ AC_CHECK_HEADERS(sys/ioctl.h sys/filio.h)
|
|
|
-+ GLIBCXX_CHECK_POLL
|
|
|
-+ GLIBCXX_CHECK_S_ISREG_OR_S_IFREG
|
|
|
-+
|
|
|
-+ # For xsputn_2().
|
|
|
-+ AC_CHECK_HEADERS(sys/uio.h)
|
|
|
-+ GLIBCXX_CHECK_WRITEV
|
|
|
-+
|
|
|
-+# AC_DEFINE(HAVE_ACOSF)
|
|
|
-+# AC_DEFINE(HAVE_ASINF)
|
|
|
-+# AC_DEFINE(HAVE_ATANF)
|
|
|
-+# AC_DEFINE(HAVE_ATAN2F)
|
|
|
-+ AC_DEFINE(HAVE_CEILF)
|
|
|
-+ AC_DEFINE(HAVE_COPYSIGN)
|
|
|
-+# AC_DEFINE(HAVE_COPYSIGNF)
|
|
|
-+# AC_DEFINE(HAVE_COSF)
|
|
|
-+# AC_DEFINE(HAVE_COSHF)
|
|
|
-+# AC_DEFINE(HAVE_EXPF)
|
|
|
-+# AC_DEFINE(HAVE_FABSF)
|
|
|
-+ AC_DEFINE(HAVE_FINITE)
|
|
|
-+ AC_DEFINE(HAVE_FINITEF)
|
|
|
-+ AC_DEFINE(HAVE_FLOORF)
|
|
|
-+# AC_DEFINE(HAVE_FMODF)
|
|
|
-+# AC_DEFINE(HAVE_FREXPF)
|
|
|
-+ AC_DEFINE(HAVE_HYPOT)
|
|
|
-+# AC_DEFINE(HAVE_HYPOTF)
|
|
|
-+ AC_DEFINE(HAVE_ISINF)
|
|
|
-+ AC_DEFINE(HAVE_ISINFF)
|
|
|
-+ AC_DEFINE(HAVE_ISNAN)
|
|
|
-+ AC_DEFINE(HAVE_ISNANF)
|
|
|
-+# AC_DEFINE(HAVE_LOGF)
|
|
|
-+# AC_DEFINE(HAVE_LOG10F)
|
|
|
-+# AC_DEFINE(HAVE_MODFF)
|
|
|
-+# AC_DEFINE(HAVE_SINF)
|
|
|
-+# AC_DEFINE(HAVE_SINHF)
|
|
|
-+# AC_DEFINE(HAVE_SINCOS)
|
|
|
-+# AC_DEFINE(HAVE_SINCOSF)
|
|
|
-+ AC_DEFINE(HAVE_SQRTF)
|
|
|
-+# AC_DEFINE(HAVE_TANF)
|
|
|
-+# AC_DEFINE(HAVE_TANHF)
|
|
|
-+ if test x"long_double_math_on_this_cpu" = x"yes"; then
|
|
|
-+ AC_MSG_ERROR([long_double_math_on_this_cpu is yes!])
|
|
|
-+# AC_DEFINE(HAVE_ACOSL)
|
|
|
-+# AC_DEFINE(HAVE_ASINL)
|
|
|
-+# AC_DEFINE(HAVE_ATANL)
|
|
|
-+# AC_DEFINE(HAVE_ATAN2L)
|
|
|
-+# AC_DEFINE(HAVE_CEILL)
|
|
|
-+# AC_DEFINE(HAVE_COPYSIGNL)
|
|
|
-+# AC_DEFINE(HAVE_COSL)
|
|
|
-+# AC_DEFINE(HAVE_COSHL)
|
|
|
-+# AC_DEFINE(HAVE_EXPL)
|
|
|
-+# AC_DEFINE(HAVE_FABSL)
|
|
|
-+# AC_DEFINE(HAVE_FINITEL)
|
|
|
-+# AC_DEFINE(HAVE_FLOORL)
|
|
|
-+# AC_DEFINE(HAVE_FMODL)
|
|
|
-+# AC_DEFINE(HAVE_FREXPL)
|
|
|
-+# AC_DEFINE(HAVE_HYPOTL)
|
|
|
-+# AC_DEFINE(HAVE_ISINFL)
|
|
|
-+# AC_DEFINE(HAVE_ISNANL)
|
|
|
-+# AC_DEFINE(HAVE_LOGL)
|
|
|
-+# AC_DEFINE(HAVE_LOG10L)
|
|
|
-+# AC_DEFINE(HAVE_MODFL)
|
|
|
-+# AC_DEFINE(HAVE_POWL)
|
|
|
-+# AC_DEFINE(HAVE_SINL)
|
|
|
-+# AC_DEFINE(HAVE_SINHL)
|
|
|
-+# AC_DEFINE(HAVE_SINCOSL)
|
|
|
-+# AC_DEFINE(HAVE_SQRTL)
|
|
|
-+# AC_DEFINE(HAVE_TANL)
|
|
|
-+# AC_DEFINE(HAVE_TANHL)
|
|
|
-+ fi
|
|
|
-+ ;;
|
|
|
- *-linux* | *-uclinux* | *-gnu* | *-kfreebsd*-gnu | *-knetbsd*-gnu)
|
|
|
- AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \
|
|
|
- machine/endian.h machine/param.h sys/machine.h sys/types.h \
|
|
|
-@@ -157,7 +250,7 @@
|
|
|
- AC_DEFINE(HAVE_INT64_T)
|
|
|
- case "$target" in
|
|
|
- *-uclinux*)
|
|
|
-- # Don't enable LFS with uClibc
|
|
|
-+ # Don't enable LFS with uClinux
|
|
|
- ;;
|
|
|
- *)
|
|
|
- AC_DEFINE(_GLIBCXX_USE_LFS)
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/include/c_compatibility/wchar.h gcc-4.1.0-patched/libstdc++-v3/include/c_compatibility/wchar.h
|
|
|
---- gcc-4.1.0/libstdc++-v3/include/c_compatibility/wchar.h 2003-12-08 21:51:45.000000000 -0600
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/include/c_compatibility/wchar.h 2005-04-30 19:36:16.997885664 -0500
|
|
|
-@@ -101,7 +101,9 @@
|
|
|
- using std::wmemcpy;
|
|
|
- using std::wmemmove;
|
|
|
- using std::wmemset;
|
|
|
-+#if _GLIBCXX_HAVE_WCSFTIME
|
|
|
- using std::wcsftime;
|
|
|
-+#endif
|
|
|
-
|
|
|
- #if _GLIBCXX_USE_C99
|
|
|
- using std::wcstold;
|
|
|
-diff -urN gcc-4.1.0/libstdc++-v3/include/c_std/std_cwchar.h gcc-4.1.0-patched/libstdc++-v3/include/c_std/std_cwchar.h
|
|
|
---- gcc-4.1.0/libstdc++-v3/include/c_std/std_cwchar.h 2004-07-20 03:47:42.000000000 -0500
|
|
|
-+++ gcc-4.1.0-patched/libstdc++-v3/include/c_std/std_cwchar.h 2005-04-30 19:36:16.998885495 -0500
|
|
|
-@@ -179,7 +179,9 @@
|
|
|
- using ::wcscoll;
|
|
|
- using ::wcscpy;
|
|
|
- using ::wcscspn;
|
|
|
-+#if _GLIBCXX_HAVE_WCSFTIME
|
|
|
- using ::wcsftime;
|
|
|
-+#endif
|
|
|
- using ::wcslen;
|
|
|
- using ::wcsncat;
|
|
|
- using ::wcsncmp;
|