1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-09 17:39:31 +00:00

gcc-4.3.3: Sync patchset with OE.dev

Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
This commit is contained in:
Richard Purdie
2009-09-14 20:22:34 +01:00
parent 8f96edfb16
commit 2e7e072f58
19 changed files with 7764 additions and 636 deletions
+19 -26
View File
@@ -1,11 +1,9 @@
# No uclibc, armeb and thumb patches - really needs checking
DEFAULT_PREFERENCE = "-99"
require gcc-common.inc require gcc-common.inc
LICENSE = "GPLv3"
DEPENDS = "mpfr gmp" DEPENDS = "mpfr gmp"
SRC_URI = "ftp://ftp.gnu.org/pub/gnu/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \ file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
file://fedora/gcc43-ia64-libunwind.patch;patch=1;pnum=0 \ file://fedora/gcc43-ia64-libunwind.patch;patch=1;pnum=0 \
file://fedora/gcc43-java-nomulti.patch;patch=1;pnum=0 \ file://fedora/gcc43-java-nomulti.patch;patch=1;pnum=0 \
@@ -20,44 +18,39 @@ SRC_URI = "ftp://ftp.gnu.org/pub/gnu/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://fedora/gcc43-libgomp-speedup.patch;patch=1;pnum=0 \ file://fedora/gcc43-libgomp-speedup.patch;patch=1;pnum=0 \
file://fedora/gcc43-i386-libgomp.patch;patch=1;pnum=0 \ file://fedora/gcc43-i386-libgomp.patch;patch=1;pnum=0 \
file://fedora/gcc43-rh251682.patch;patch=1;pnum=0 \ file://fedora/gcc43-rh251682.patch;patch=1;pnum=0 \
file://debian/arm-unbreak-eabi-armv4t.dpatch;patch=1 \ file://debian/arm-unbreak-eabi-armv4t.dpatch;patch=1 \
file://debian/libstdc++-pic.dpatch;patch=1;pnum=0 \ file://debian/libstdc++-pic.dpatch;patch=1;pnum=0 \
file://debian/gcc-ice-hack.dpatch;patch=1;pnum=0 \ file://debian/gcc-ice-hack.dpatch;patch=1;pnum=0 \
file://debian/pr30961.dpatch;patch=1;pnum=0 \ file://debian/pr30961.dpatch;patch=1;pnum=0 \
# file://100-uclibc-conf.patch;patch=1 \ file://100-uclibc-conf.patch;patch=1 \
# file://103-uclibc-conf-noupstream.patch;patch=1 \ file://103-uclibc-conf-noupstream.patch;patch=1 \
# file://200-uclibc-locale.patch;patch=1 \ file://200-uclibc-locale.patch;patch=1 \
# file://203-uclibc-locale-no__x.patch;patch=1 \ file://203-uclibc-locale-no__x.patch;patch=1 \
# file://204-uclibc-locale-wchar_fix.patch;patch=1 \ file://204-uclibc-locale-wchar_fix.patch;patch=1 \
# file://205-uclibc-locale-update.patch;patch=1 \ file://205-uclibc-locale-update.patch;patch=1 \
file://301-missing-execinfo_h.patch;patch=1 \ file://301-missing-execinfo_h.patch;patch=1 \
# file://302-c99-snprintf.patch;patch=1 \ file://302-c99-snprintf.patch;patch=1 \
# file://303-c99-complex-ugly-hack.patch;patch=1 \ file://303-c99-complex-ugly-hack.patch;patch=1 \
file://304-index_macro.patch;patch=1 \ file://304-index_macro.patch;patch=1 \
file://305-libmudflap-susv3-legacy.patch;patch=1 \ file://305-libmudflap-susv3-legacy.patch;patch=1 \
# file://306-libstdc++-namespace.patch;patch=1 \ file://306-libstdc++-namespace.patch;patch=1 \
# file://307-locale_facets.patch;patch=1 \ file://307-locale_facets.patch;patch=1 \
# file://402-libbackend_dep_gcov-iov.h.patch;patch=1 \
file://602-sdk-libstdc++-includes.patch;patch=1 \ file://602-sdk-libstdc++-includes.patch;patch=1 \
file://740-sh-pr24836.patch;patch=1 \ file://740-sh-pr24836.patch;patch=1 \
# file://800-arm-bigendian.patch;patch=1 \ file://800-arm-bigendian.patch;patch=1 \
# file://801-arm-bigendian-eabi.patch;patch=1 \
file://904-flatten-switch-stmt-00.patch;patch=1 \ file://904-flatten-switch-stmt-00.patch;patch=1 \
file://arm-nolibfloat.patch;patch=1 \ file://arm-nolibfloat.patch;patch=1 \
file://arm-softfloat.patch;patch=1 \ file://arm-softfloat.patch;patch=1 \
# file://gcc41-configure.in.patch;patch=1 \
# file://arm-thumb.patch;patch=1 \
# file://arm-thumb-cache.patch;patch=1 \
file://ldflags.patch;patch=1 \
file://zecke-xgcc-cpp.patch;patch=1 \
file://cache-amnesia.patch;patch=1 \ file://cache-amnesia.patch;patch=1 \
# file://gfortran.patch;patch=1 \ # file://gfortran.patch;patch=1 \
# file://gcc-4.0.2-e300c2c3.patch;patch=1 \ file://gcc-4.0.2-e300c2c3.patch;patch=1 \
# file://pr34130.patch;patch=1 \ # file://pr34130.patch;patch=1 \
# file://fortran-static-linking.patch;patch=1 \ # file://fortran-static-linking.patch;patch=1 \
# file://intermask-bigendian.patch;patch=1 \
file://gcc-arm-frename-registers.patch;patch=1 \ file://gcc-arm-frename-registers.patch;patch=1 \
# file://gcc-release-branch/PR-36500-fix-neon.patch;patch=1 \ file://gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch;patch=1 \
file://gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch;patch=1 \
file://zecke-xgcc-cpp.patch;patch=1 \
file://gcc-flags-for-build.patch;patch=1 \
" "
SRC_URI_append_sh3 = " file://sh3-installfix-fixheaders.patch;patch=1 " SRC_URI_append_sh3 = " file://sh3-installfix-fixheaders.patch;patch=1 "
+8 -171
View File
@@ -1,119 +1,7 @@
--- gcc/libgomp/configure Index: gcc-4.3.1/contrib/regression/objs-gcc.sh
+++ gcc/libgomp/configure ===================================================================
@@ -3771,7 +3771,7 @@ --- gcc-4.3.1.orig/contrib/regression/objs-gcc.sh 2007-12-24 15:18:57.000000000 -0800
;; +++ gcc-4.3.1/contrib/regression/objs-gcc.sh 2008-08-16 01:15:12.000000000 -0700
# This must be Linux ELF.
-linux-gnu*)
+linux*)
lt_cv_deplibs_check_method=pass_all
;;
--- gcc/gcc/config/cris/linux.h
+++ gcc/gcc/config/cris/linux.h
@@ -74,7 +74,11 @@
#define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG
#undef CRIS_SUBTARGET_VERSION
-#define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu"
+#if UCLIBC_DEFAULT
+# define CRIS_SUBTARGET_VERSION " - cris-axis-linux-uclibc"
+#else
+# define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu"
+#endif
#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
--- gcc/libstdc++-v3/configure
+++ gcc/libstdc++-v3/configure
@@ -4276,7 +4276,7 @@
;;
# This must be Linux ELF.
-linux-gnu*)
+linux*)
lt_cv_deplibs_check_method=pass_all
;;
--- gcc/zlib/configure
+++ gcc/zlib/configure
@@ -3422,7 +3422,7 @@
;;
# This must be Linux ELF.
-linux-gnu*)
+linux*)
lt_cv_deplibs_check_method=pass_all
;;
--- gcc/libobjc/configure
+++ gcc/libobjc/configure
@@ -3309,7 +3309,7 @@
;;
# This must be Linux ELF.
-linux-gnu*)
+linux*)
lt_cv_deplibs_check_method=pass_all
;;
--- gcc/libgfortran/configure
+++ gcc/libgfortran/configure
@@ -3695,7 +3695,7 @@
;;
# This must be Linux ELF.
-linux-gnu*)
+linux*)
lt_cv_deplibs_check_method=pass_all
;;
--- gcc/libmudflap/configure
+++ gcc/libmudflap/configure
@@ -5378,7 +5378,7 @@
;;
# This must be Linux ELF.
-linux-gnu*)
+linux*)
lt_cv_deplibs_check_method=pass_all
;;
--- gcc/boehm-gc/configure
+++ gcc/boehm-gc/configure
@@ -4316,7 +4316,7 @@
;;
# This must be Linux ELF.
-linux-gnu*)
+linux*)
lt_cv_deplibs_check_method=pass_all
;;
--- gcc/libffi/configure
+++ gcc/libffi/configure
@@ -3453,7 +3453,7 @@
;;
# This must be Linux ELF.
-linux-gnu*)
+linux*)
lt_cv_deplibs_check_method=pass_all
;;
--- gcc/libssp/configure
+++ gcc/libssp/configure
@@ -4409,7 +4409,7 @@
;;
# This must be Linux ELF.
-linux-gnu*)
+linux*)
lt_cv_deplibs_check_method=pass_all
;;
--- gcc/contrib/regression/objs-gcc.sh
+++ gcc/contrib/regression/objs-gcc.sh
@@ -105,6 +105,10 @@ @@ -105,6 +105,10 @@
then then
make all-gdb all-dejagnu all-ld || exit 1 make all-gdb all-dejagnu all-ld || exit 1
@@ -125,61 +13,10 @@
elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then
make bootstrap || exit 1 make bootstrap || exit 1
make install || exit 1 make install || exit 1
--- gcc/libjava/classpath/ltconfig Index: gcc-4.3.1/libjava/classpath/ltconfig
+++ gcc/libjava/classpath/ltconfig ===================================================================
@@ -603,7 +603,7 @@ --- gcc-4.3.1.orig/libjava/classpath/ltconfig 2007-06-03 16:18:43.000000000 -0700
+++ gcc-4.3.1/libjava/classpath/ltconfig 2008-08-16 01:15:12.000000000 -0700
# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
case $host_os in
-linux-gnu*) ;;
+linux-gnu*|linux-uclibc*) ;;
linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
esac
@@ -1251,7 +1251,7 @@
;;
# This must be Linux ELF.
-linux-gnu*)
+linux*)
version_type=linux
need_lib_prefix=no
need_version=no
--- gcc/libjava/classpath/configure
+++ gcc/libjava/classpath/configure
@@ -4665,7 +4665,7 @@
;;
# This must be Linux ELF.
-linux-gnu*)
+linux*)
lt_cv_deplibs_check_method=pass_all
;;
--- gcc/libjava/configure
+++ gcc/libjava/configure
@@ -5212,7 +5212,7 @@
;;
# This must be Linux ELF.
-linux-gnu*)
+linux*)
lt_cv_deplibs_check_method=pass_all
;;
--- gcc/libtool.m4
+++ gcc/libtool.m4
@@ -739,7 +739,7 @@
;;
# This must be Linux ELF.
-linux-gnu*)
+linux*)
lt_cv_deplibs_check_method=pass_all
;;
--- gcc/ltconfig
+++ gcc/ltconfig
@@ -603,7 +603,7 @@ @@ -603,7 +603,7 @@
# Transform linux* to *-*-linux-gnu*, to support old configure scripts. # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
File diff suppressed because it is too large Load Diff
+47 -27
View File
@@ -1,8 +1,10 @@
--- gcc/libstdc++-v3/config/locale/uclibc/c++locale_internal.h.uclibc200no__x~ 2006-03-10 15:06:17 +0100 Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
+++ gcc/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 2006-03-10 15:32:37 +0100 ===================================================================
--- 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 @@ @@ -60,4 +60,49 @@
extern "C" __typeof(wctype_l) __wctype_l; extern "C" __typeof(wctype_l) __wctype_l;
#endif #endif
+# define __nl_langinfo_l nl_langinfo_l +# define __nl_langinfo_l nl_langinfo_l
+# define __strcoll_l strcoll_l +# define __strcoll_l strcoll_l
@@ -44,14 +46,16 @@
+# define __towlower_l(C, L) towlower((C)) +# define __towlower_l(C, L) towlower((C))
+# define __towupper_l(C, L) towupper((C)) +# define __towupper_l(C, L) towupper((C))
+# define __wcscoll_l(S1, S2, L) wcscoll((S1), (S2)) +# 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 __wcsxfrm_l(S1, S2, N, L) wcsxfrm((S1), (S2), (N))
+# define __wctype_l(S, L) wctype((S)) +# define __wctype_l(S, L) wctype((S))
+# endif +# endif
+ +
#endif // GLIBC 2.3 and later #endif // GLIBC 2.3 and later
--- gcc/libstdc++-v3/config/locale/uclibc/c_locale.cc.uclibc200no__x~ 2006-03-10 15:06:17 +0100 Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/c_locale.cc
+++ gcc/libstdc++-v3/config/locale/uclibc/c_locale.cc 2006-03-10 15:32:37 +0100 ===================================================================
--- 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 @@ @@ -39,20 +39,6 @@
#include <langinfo.h> #include <langinfo.h>
#include <bits/c++locale_internal.h> #include <bits/c++locale_internal.h>
@@ -70,11 +74,13 @@
-#define __duplocale(a) __c_locale() -#define __duplocale(a) __c_locale()
-#endif -#endif
- -
namespace std namespace std
{ {
template<> template<>
--- gcc/libstdc++-v3/config/locale/uclibc/collate_members.cc.uclibc200no__x~ 2006-03-10 15:06:17 +0100 Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/collate_members.cc
+++ gcc/libstdc++-v3/config/locale/uclibc/collate_members.cc 2006-03-10 15:32:37 +0100 ===================================================================
--- 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 @@ @@ -36,13 +36,6 @@
#include <locale> #include <locale>
#include <bits/c++locale_internal.h> #include <bits/c++locale_internal.h>
@@ -89,8 +95,10 @@
namespace std namespace std
{ {
// These are basically extensions to char_traits, and perhaps should // 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 Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/monetary_members.cc
+++ gcc/libstdc++-v3/config/locale/uclibc/monetary_members.cc 2006-03-10 15:32:37 +0100 ===================================================================
--- 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 @@ @@ -43,10 +43,6 @@
#warning tailor for stub locale support #warning tailor for stub locale support
#endif #endif
@@ -102,8 +110,10 @@
namespace std namespace std
{ {
// Construct and return valid pattern consisting of some combination of: // 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 Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/numeric_members.cc
+++ gcc/libstdc++-v3/config/locale/uclibc/numeric_members.cc 2006-03-10 15:32:37 +0100 ===================================================================
--- 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 @@ @@ -41,9 +41,6 @@
#ifdef __UCLIBC_MJN3_ONLY__ #ifdef __UCLIBC_MJN3_ONLY__
#warning tailor for stub locale support #warning tailor for stub locale support
@@ -114,8 +124,10 @@
namespace std namespace std
{ {
--- gcc/libstdc++-v3/config/locale/uclibc/time_members.cc.uclibc200no__x~ 2006-03-10 15:06:17 +0100 Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/time_members.cc
+++ gcc/libstdc++-v3/config/locale/uclibc/time_members.cc 2006-03-10 15:32:37 +0100 ===================================================================
--- 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 @@ @@ -40,9 +40,6 @@
#ifdef __UCLIBC_MJN3_ONLY__ #ifdef __UCLIBC_MJN3_ONLY__
#warning tailor for stub locale support #warning tailor for stub locale support
@@ -126,8 +138,10 @@
namespace std namespace std
{ {
--- gcc/libstdc++-v3/config/locale/uclibc/ctype_members.cc.uclibc200no__x~ 2006-03-10 15:06:17 +0100 Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/ctype_members.cc
+++ gcc/libstdc++-v3/config/locale/uclibc/ctype_members.cc 2006-03-10 15:32:37 +0100 ===================================================================
--- 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 @@ @@ -38,13 +38,6 @@
#undef _LIBC #undef _LIBC
#include <bits/c++locale_internal.h> #include <bits/c++locale_internal.h>
@@ -142,8 +156,10 @@
namespace std namespace std
{ {
// NB: The other ctype<char> specializations are in src/locale.cc and // 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 Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/messages_members.cc
+++ gcc/libstdc++-v3/config/locale/uclibc/messages_members.cc 2006-03-10 15:32:37 +0100 ===================================================================
--- 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 @@ @@ -39,13 +39,10 @@
#ifdef __UCLIBC_MJN3_ONLY__ #ifdef __UCLIBC_MJN3_ONLY__
#warning fix gettext stuff #warning fix gettext stuff
@@ -160,8 +176,10 @@
#define gettext(msgid) (msgid) #define gettext(msgid) (msgid)
#endif #endif
--- gcc/libstdc++-v3/config/locale/uclibc/messages_members.h.uclibc200no__x~ 2006-03-10 15:06:17 +0100 Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/messages_members.h
+++ gcc/libstdc++-v3/config/locale/uclibc/messages_members.h 2006-03-10 15:32:37 +0100 ===================================================================
--- 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 @@ @@ -36,15 +36,11 @@
#ifdef __UCLIBC_MJN3_ONLY__ #ifdef __UCLIBC_MJN3_ONLY__
#warning fix prototypes for *textdomain funcs #warning fix prototypes for *textdomain funcs
@@ -184,16 +202,16 @@
// Non-virtual member functions. // Non-virtual member functions.
@@ -70,7 +66,7 @@ @@ -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 const char* __dir) const
{ {
- __bindtextdomain(__s.c_str(), __dir); - __bindtextdomain(__s.c_str(), __dir);
+ 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 @@ @@ -90,7 +86,7 @@
{ {
// No error checking is done, assume the catalog exists and can // No error checking is done, assume the catalog exists and can
// be used. // be used.
- __textdomain(__s.c_str()); - __textdomain(__s.c_str());
@@ -201,8 +219,10 @@
return 0; return 0;
} }
--- gcc/libstdc++-v3/config/locale/uclibc/c_locale.h.uclibc200no__x~ 2006-03-10 15:06:17 +0100 Index: gcc-4.3.1/libstdc++-v3/config/locale/uclibc/c_locale.h
+++ gcc/libstdc++-v3/config/locale/uclibc/c_locale.h 2006-03-10 15:32:37 +0100 ===================================================================
--- 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 @@ @@ -68,6 +68,7 @@
{ {
extern "C" __typeof(uselocale) __uselocale; extern "C" __typeof(uselocale) __uselocale;
+248 -76
View File
@@ -1,7 +1,18 @@
--- gcc/libstdc++-v3/config/locale/uclibc/c_locale.cc.uclibc200_update~ 2006-03-10 15:32:37 +0100 Index: gcc-4.3.2/libstdc++-v3/config/locale/uclibc/c_locale.cc
+++ gcc/libstdc++-v3/config/locale/uclibc/c_locale.cc 2006-03-10 15:39:14 +0100 ===================================================================
@@ -46,16 +47,13 @@ --- gcc-4.3.2.orig/libstdc++-v3/config/locale/uclibc/c_locale.cc 2008-09-17 22:35:28.000000000 -0700
__convert_to_v(const char* __s, float& __v, ios_base::iostate& __err, +++ gcc-4.3.2/libstdc++-v3/config/locale/uclibc/c_locale.cc 2008-09-17 22:35:29.000000000 -0700
@@ -39,23 +39,20 @@
#include <langinfo.h>
#include <bits/c++locale_internal.h>
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
template<>
void
__convert_to_v(const char* __s, float& __v, ios_base::iostate& __err,
const __c_locale& __cloc) const __c_locale& __cloc)
{ {
- if (!(__err & ios_base::failbit)) - if (!(__err & ios_base::failbit))
@@ -24,8 +35,8 @@
} }
template<> template<>
@@ -63,16 +61,13 @@ @@ -63,16 +60,13 @@
__convert_to_v(const char* __s, double& __v, ios_base::iostate& __err, __convert_to_v(const char* __s, double& __v, ios_base::iostate& __err,
const __c_locale& __cloc) const __c_locale& __cloc)
{ {
- if (!(__err & ios_base::failbit)) - if (!(__err & ios_base::failbit))
@@ -48,7 +59,7 @@
} }
template<> template<>
@@ -80,16 +75,13 @@ @@ -80,16 +74,13 @@
__convert_to_v(const char* __s, long double& __v, ios_base::iostate& __err, __convert_to_v(const char* __s, long double& __v, ios_base::iostate& __err,
const __c_locale& __cloc) const __c_locale& __cloc)
{ {
@@ -72,18 +83,50 @@
} }
void void
@@ -110,7 +102,7 @@ @@ -110,17 +101,18 @@
void void
locale::facet::_S_destroy_c_locale(__c_locale& __cloc) locale::facet::_S_destroy_c_locale(__c_locale& __cloc)
{ {
- if (_S_get_c_locale() != __cloc) - if (_S_get_c_locale() != __cloc)
+ if (__cloc && _S_get_c_locale() != __cloc) + if (__cloc && _S_get_c_locale() != __cloc)
__freelocale(__cloc); __freelocale(__cloc);
} }
--- gcc/libstdc++-v3/config/locale/uclibc/ctype_members.cc.uclibc200_update~ 2006-03-10 15:32:37 +0100 __c_locale
+++ gcc/libstdc++-v3/config/locale/uclibc/ctype_members.cc 2006-03-10 15:39:14 +0100 locale::facet::_S_clone_c_locale(__c_locale& __cloc)
@@ -33,9 +33,14 @@ { return __duplocale(__cloc); }
-} // namespace std
-namespace __gnu_cxx
-{
+_GLIBCXX_END_NAMESPACE
+
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] =
{
"LC_CTYPE",
@@ -138,9 +130,11 @@
"LC_IDENTIFICATION"
#endif
};
-}
-namespace std
-{
+_GLIBCXX_END_NAMESPACE
+
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
const char* const* const locale::_S_categories = __gnu_cxx::category_names;
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
Index: gcc-4.3.2/libstdc++-v3/config/locale/uclibc/ctype_members.cc
===================================================================
--- gcc-4.3.2.orig/libstdc++-v3/config/locale/uclibc/ctype_members.cc 2008-09-17 22:35:28.000000000 -0700
+++ gcc-4.3.2/libstdc++-v3/config/locale/uclibc/ctype_members.cc 2008-09-17 23:09:49.000000000 -0700
@@ -33,16 +33,20 @@
// Written by Benjamin Kosnik <bkoz@redhat.com> // Written by Benjamin Kosnik <bkoz@redhat.com>
@@ -97,11 +140,29 @@
+#endif +#endif
#include <bits/c++locale_internal.h> #include <bits/c++locale_internal.h>
namespace std -namespace std
@@ -138,20 +143,34 @@ -{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
// NB: The other ctype<char> specializations are in src/locale.cc and
// various /config/os/* files.
- template<>
ctype_byname<char>::ctype_byname(const char* __s, size_t __refs)
: ctype<char>(0, false, __refs)
{
@@ -57,6 +61,8 @@
#endif
}
}
+ ctype_byname<char>::~ctype_byname()
+ { }
#ifdef _GLIBCXX_USE_WCHAR_T
ctype<wchar_t>::__wmask_type
@@ -138,17 +144,33 @@
ctype<wchar_t>:: ctype<wchar_t>::
do_is(mask __m, wchar_t __c) const do_is(mask __m, wchar_t __c) const
{ {
- // Highest bitmask in ctype_base == 10, but extra in "C" - // Highest bitmask in ctype_base == 10, but extra in "C"
- // library for blank. - // library for blank.
+ // The case of __m == ctype_base::space is particularly important, + // The case of __m == ctype_base::space is particularly important,
@@ -109,8 +170,9 @@
+ // it first, exploiting the knowledge that on GNU systems _M_bit[5] + // it first, exploiting the knowledge that on GNU systems _M_bit[5]
+ // is the mask corresponding to ctype_base::space. NB: an encoding + // is the mask corresponding to ctype_base::space. NB: an encoding
+ // change would not affect correctness! + // change would not affect correctness!
+
bool __ret = false; bool __ret = false;
- const size_t __bitmasksize = 11; - const size_t __bitmasksize = 11;
- for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur) - for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur)
- if (__m & _M_bit[__bitcur] - if (__m & _M_bit[__bitcur]
- && __iswctype_l(__c, _M_wmask[__bitcur], _M_c_locale_ctype)) - && __iswctype_l(__c, _M_wmask[__bitcur], _M_c_locale_ctype))
@@ -137,29 +199,29 @@
+ break; + break;
+ } + }
+ } + }
return __ret;
}
-
+ +
const wchar_t* return __ret;
ctype<wchar_t>:: }
do_is(const wchar_t* __lo, const wchar_t* __hi, mask* __vec) const
--- gcc/libstdc++-v3/config/locale/uclibc/messages_members.h.uclibc200_update~ 2006-03-10 15:32:37 +0100
+++ gcc/libstdc++-v3/config/locale/uclibc/messages_members.h 2006-03-10 15:39:14 +0100
@@ -47,18 +47,21 @@
template<typename _CharT>
messages<_CharT>::messages(size_t __refs)
: facet(__refs), _M_c_locale_messages(_S_get_c_locale()),
- _M_name_messages(_S_get_c_name())
+ _M_name_messages(_S_get_c_name())
{ }
@@ -290,4 +312,5 @@
#endif
}
#endif // _GLIBCXX_USE_WCHAR_T
-}
+
+_GLIBCXX_END_NAMESPACE
Index: gcc-4.3.2/libstdc++-v3/config/locale/uclibc/messages_members.h
===================================================================
--- gcc-4.3.2.orig/libstdc++-v3/config/locale/uclibc/messages_members.h 2008-09-17 22:35:28.000000000 -0700
+++ gcc-4.3.2/libstdc++-v3/config/locale/uclibc/messages_members.h 2008-09-17 23:13:34.000000000 -0700
@@ -53,12 +53,16 @@
template<typename _CharT> template<typename _CharT>
messages<_CharT>::messages(__c_locale __cloc, const char* __s, messages<_CharT>::messages(__c_locale __cloc, const char* __s,
size_t __refs) size_t __refs)
- : facet(__refs), _M_c_locale_messages(_S_clone_c_locale(__cloc)), - : facet(__refs), _M_c_locale_messages(_S_clone_c_locale(__cloc)),
- _M_name_messages(__s) - _M_name_messages(__s)
+ : facet(__refs), _M_c_locale_messages(NULL), _M_name_messages(NULL) + : facet(__refs), _M_c_locale_messages(NULL),
+ _M_name_messages(NULL)
{ {
- char* __tmp = new char[std::strlen(__s) + 1]; - char* __tmp = new char[std::strlen(__s) + 1];
- std::strcpy(__tmp, __s); - std::strcpy(__tmp, __s);
@@ -173,8 +235,10 @@
} }
template<typename _CharT> template<typename _CharT>
--- gcc/libstdc++-v3/config/locale/uclibc/monetary_members.cc.uclibc200_update~ 2006-03-10 15:37:27 +0100 Index: gcc-4.3.2/libstdc++-v3/config/locale/uclibc/monetary_members.cc
+++ gcc/libstdc++-v3/config/locale/uclibc/monetary_members.cc 2006-03-10 15:39:14 +0100 ===================================================================
--- gcc-4.3.2.orig/libstdc++-v3/config/locale/uclibc/monetary_members.cc 2008-09-17 22:35:28.000000000 -0700
+++ gcc-4.3.2/libstdc++-v3/config/locale/uclibc/monetary_members.cc 2008-09-17 22:35:29.000000000 -0700
@@ -33,9 +33,14 @@ @@ -33,9 +33,14 @@
// Written by Benjamin Kosnik <bkoz@redhat.com> // Written by Benjamin Kosnik <bkoz@redhat.com>
@@ -199,8 +263,79 @@
} }
return __ret; return __ret;
} }
--- gcc/libstdc++-v3/config/locale/uclibc/numeric_members.cc.uclibc200_update~ 2006-03-10 15:37:27 +0100 @@ -390,7 +395,9 @@
+++ gcc/libstdc++-v3/config/locale/uclibc/numeric_members.cc 2006-03-10 15:39:14 +0100 __c_locale __old = __uselocale(__cloc);
#else
// Switch to named locale so that mbsrtowcs will work.
- char* __old = strdup(setlocale(LC_ALL, NULL));
+ char* __old = setlocale(LC_ALL, NULL);
+ const size_t __llen = strlen(__old) + 1;
+ char* __sav = new char[__llen];
setlocale(LC_ALL, __name);
#endif
@@ -477,8 +484,8 @@
#ifdef __UCLIBC_HAS_XLOCALE__
__uselocale(__old);
#else
- setlocale(LC_ALL, __old);
- free(__old);
+ setlocale(LC_ALL, __sav);
+ delete [] __sav;
#endif
__throw_exception_again;
}
@@ -498,8 +505,8 @@
#ifdef __UCLIBC_HAS_XLOCALE__
__uselocale(__old);
#else
- setlocale(LC_ALL, __old);
- free(__old);
+ setlocale(LC_ALL, __sav);
+ delete [] __sav;
#endif
}
}
@@ -545,8 +552,11 @@
__c_locale __old = __uselocale(__cloc);
#else
// Switch to named locale so that mbsrtowcs will work.
- char* __old = strdup(setlocale(LC_ALL, NULL));
- setlocale(LC_ALL, __name);
+ char* __old = setlocale(LC_ALL, NULL);
+ const size_t __llen = strlen(__old) + 1;
+ char* __sav = new char[__llen];
+ memcpy(__sav, __old, __llen);
+ setlocale(LC_ALL, __name);
#endif
#ifdef __UCLIBC_MJN3_ONLY__
@@ -633,8 +643,8 @@
#ifdef __UCLIBC_HAS_XLOCALE__
__uselocale(__old);
#else
- setlocale(LC_ALL, __old);
- free(__old);
+ setlocale(LC_ALL, __sav);
+ delete [] __sav;
#endif
__throw_exception_again;
}
@@ -653,8 +663,8 @@
#ifdef __UCLIBC_HAS_XLOCALE__
__uselocale(__old);
#else
- setlocale(LC_ALL, __old);
- free(__old);
+ setlocale(LC_ALL, __sav);
+ delete [] __sav;
#endif
}
}
Index: gcc-4.3.2/libstdc++-v3/config/locale/uclibc/numeric_members.cc
===================================================================
--- gcc-4.3.2.orig/libstdc++-v3/config/locale/uclibc/numeric_members.cc 2008-09-17 22:35:28.000000000 -0700
+++ gcc-4.3.2/libstdc++-v3/config/locale/uclibc/numeric_members.cc 2008-09-17 22:35:29.000000000 -0700
@@ -33,9 +33,14 @@ @@ -33,9 +33,14 @@
// Written by Benjamin Kosnik <bkoz@redhat.com> // Written by Benjamin Kosnik <bkoz@redhat.com>
@@ -216,37 +351,24 @@
#include <bits/c++locale_internal.h> #include <bits/c++locale_internal.h>
#ifdef __UCLIBC_MJN3_ONLY__ #ifdef __UCLIBC_MJN3_ONLY__
--- gcc/libstdc++-v3/config/locale/uclibc/time_members.h.uclibc200_update~ 2006-03-10 15:06:17 +0100 Index: gcc-4.3.2/libstdc++-v3/config/locale/uclibc/time_members.h
+++ gcc/libstdc++-v3/config/locale/uclibc/time_members.h 2006-03-10 15:39:14 +0100 ===================================================================
@@ -37,25 +37,33 @@ --- gcc-4.3.2.orig/libstdc++-v3/config/locale/uclibc/time_members.h 2008-09-17 22:35:27.000000000 -0700
template<typename _CharT> +++ gcc-4.3.2/libstdc++-v3/config/locale/uclibc/time_members.h 2008-09-17 23:13:34.000000000 -0700
__timepunct<_CharT>::__timepunct(size_t __refs) @@ -50,12 +50,21 @@
: facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL),
- _M_name_timepunct(_S_get_c_name())
+ _M_name_timepunct(_S_get_c_name())
{ _M_initialize_timepunct(); }
template<typename _CharT>
__timepunct<_CharT>::__timepunct(__cache_type* __cache, size_t __refs)
: facet(__refs), _M_data(__cache), _M_c_locale_timepunct(NULL),
- _M_name_timepunct(_S_get_c_name())
+ _M_name_timepunct(_S_get_c_name())
{ _M_initialize_timepunct(); }
template<typename _CharT>
__timepunct<_CharT>::__timepunct(__c_locale __cloc, const char* __s, __timepunct<_CharT>::__timepunct(__c_locale __cloc, const char* __s,
size_t __refs) size_t __refs)
: facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL), : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL),
- _M_name_timepunct(__s) - _M_name_timepunct(__s)
+ _M_name_timepunct(NULL) + _M_name_timepunct(NULL)
{ {
- char* __tmp = new char[std::strlen(__s) + 1]; - char* __tmp = new char[std::strlen(__s) + 1];
- std::strcpy(__tmp, __s); - std::strcpy(__tmp, __s);
+ const size_t __len = std::strlen(__s) + 1; + const size_t __len = std::strlen(__s) + 1;
+ char* __tmp = new char[__len]; + char* __tmp = new char[__len];
+ std::memcpy(__tmp, __s, __len); + std::memcpy(__tmp, __s, __len);
_M_name_timepunct = __tmp; _M_name_timepunct = __tmp;
- _M_initialize_timepunct(__cloc); - _M_initialize_timepunct(__cloc);
+ +
+ try + try
+ { _M_initialize_timepunct(__cloc); } + { _M_initialize_timepunct(__cloc); }
@@ -255,11 +377,14 @@
+ delete [] _M_name_timepunct; + delete [] _M_name_timepunct;
+ __throw_exception_again; + __throw_exception_again;
+ } + }
+
} }
template<typename _CharT> template<typename _CharT>
--- gcc-4.2/libstdc++-v3/config/locale/uclibc/c_locale.h.old 2006-09-28 11:39:00.000000000 +0200 Index: gcc-4.3.2/libstdc++-v3/config/locale/uclibc/c_locale.h
+++ gcc-4.2/libstdc++-v3/config/locale/uclibc/c_locale.h 2006-09-28 12:10:41.000000000 +0200 ===================================================================
--- gcc-4.3.2.orig/libstdc++-v3/config/locale/uclibc/c_locale.h 2008-09-17 22:35:28.000000000 -0700
+++ gcc-4.3.2/libstdc++-v3/config/locale/uclibc/c_locale.h 2008-09-17 22:35:29.000000000 -0700
@@ -39,21 +39,23 @@ @@ -39,21 +39,23 @@
#pragma GCC system_header #pragma GCC system_header
@@ -288,19 +413,11 @@
#endif #endif
#define _GLIBCXX_C_LOCALE_GNU 1 #define _GLIBCXX_C_LOCALE_GNU 1
@@ -62,7 +64,7 @@ @@ -78,23 +80,25 @@
#endif #else
// #define _GLIBCXX_NUM_CATEGORIES 6
#define _GLIBCXX_NUM_CATEGORIES 0
-
+
#ifdef __UCLIBC_HAS_XLOCALE__
namespace __gnu_cxx
{
@@ -79,22 +81,24 @@
typedef int* __c_locale; typedef int* __c_locale;
#endif #endif
-
- // Convert numeric value of type _Tv to string and return length of - // Convert numeric value of type _Tv to string and return length of
- // string. If snprintf is available use it, otherwise fall back to - // string. If snprintf is available use it, otherwise fall back to
- // the unsafe sprintf which, in general, can be dangerous and should - // the unsafe sprintf which, in general, can be dangerous and should
@@ -310,7 +427,7 @@
// be avoided. // be avoided.
- template<typename _Tv> - template<typename _Tv>
- int - int
- __convert_from_v(char* __out, - __convert_from_v(char* __out,
- const int __size __attribute__ ((__unused__)), - const int __size __attribute__ ((__unused__)),
- const char* __fmt, - const char* __fmt,
-#ifdef __UCLIBC_HAS_XCLOCALE__ -#ifdef __UCLIBC_HAS_XCLOCALE__
@@ -318,7 +435,7 @@
+ inline int + inline int
+ __convert_from_v(const __c_locale& + __convert_from_v(const __c_locale&
+#ifndef __UCLIBC_HAS_XCLOCALE__ +#ifndef __UCLIBC_HAS_XCLOCALE__
+ __cloc __attribute__ ((__unused__)) + __cloc __attribute__ ((__unused__))
+#endif +#endif
+ , + ,
+ char* __out, + char* __out,
@@ -327,6 +444,7 @@
{ {
+ va_list __args; + va_list __args;
+#ifdef __UCLIBC_HAS_XCLOCALE__ +#ifdef __UCLIBC_HAS_XCLOCALE__
+
__c_locale __old = __gnu_cxx::__uselocale(__cloc); __c_locale __old = __gnu_cxx::__uselocale(__cloc);
#else #else
- _Tv __v, const __c_locale&, int __prec) - _Tv __v, const __c_locale&, int __prec)
@@ -345,3 +463,57 @@
#ifdef __UCLIBC_HAS_XCLOCALE__ #ifdef __UCLIBC_HAS_XCLOCALE__
__gnu_cxx::__uselocale(__old); __gnu_cxx::__uselocale(__old);
Index: gcc-4.3.2/libstdc++-v3/config/locale/uclibc/time_members.cc
===================================================================
--- gcc-4.3.2.orig/libstdc++-v3/config/locale/uclibc/time_members.cc 2008-09-17 22:35:28.000000000 -0700
+++ gcc-4.3.2/libstdc++-v3/config/locale/uclibc/time_members.cc 2008-09-17 22:35:29.000000000 -0700
@@ -53,11 +53,14 @@
const size_t __len = __strftime_l(__s, __maxlen, __format, __tm,
_M_c_locale_timepunct);
#else
- char* __old = strdup(setlocale(LC_ALL, NULL));
+ char* __old = setlocale(LC_ALL, NULL);
+ const size_t __llen = strlen(__old) + 1;
+ char* __sav = new char[__llen];
+ memcpy(__sav, __old, __llen);
setlocale(LC_ALL, _M_name_timepunct);
const size_t __len = strftime(__s, __maxlen, __format, __tm);
- setlocale(LC_ALL, __old);
- free(__old);
+ setlocale(LC_ALL, __sav);
+ delete [] __sav;
#endif
// Make sure __s is null terminated.
if (__len == 0)
@@ -207,11 +210,14 @@
const size_t __len = __wcsftime_l(__s, __maxlen, __format, __tm,
_M_c_locale_timepunct);
#else
- char* __old = strdup(setlocale(LC_ALL, NULL));
+ char* __old = setlocale(LC_ALL, NULL);
+ const size_t __llen = strlen(__old) + 1;
+ char* __sav = new char[__llen];
+ memcpy(__sav, __old, __llen);
setlocale(LC_ALL, _M_name_timepunct);
const size_t __len = wcsftime(__s, __maxlen, __format, __tm);
- setlocale(LC_ALL, __old);
- free(__old);
+ setlocale(LC_ALL, __sav);
+ delete [] __sav;
#endif
// Make sure __s is null terminated.
if (__len == 0)
Index: gcc-4.3.2/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
===================================================================
--- gcc-4.3.2.orig/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 2008-09-17 22:35:28.000000000 -0700
+++ gcc-4.3.2/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 2008-09-17 22:35:29.000000000 -0700
@@ -31,6 +31,9 @@
#include <bits/c++config.h>
#include <clocale>
+#include <cstdlib>
+#include <cstring>
+#include <cstddef>
#ifdef __UCLIBC_MJN3_ONLY__
#warning clean this up
+7 -5
View File
@@ -1,8 +1,10 @@
--- gcc-4.0.0/libstdc++-v3/include/c_std/std_cstdio.h-orig 2005-04-29 00:08:41.000000000 -0500 Index: gcc-4.3.1/libstdc++-v3/include/c_std/cstdio
+++ gcc-4.0.0/libstdc++-v3/include/c_std/std_cstdio.h 2005-04-29 00:08:45.000000000 -0500 ===================================================================
@@ -142,7 +142,7 @@ --- gcc-4.3.1.orig/libstdc++-v3/include/c_std/cstdio 2006-12-07 01:35:57.000000000 -0800
using ::vsprintf; +++ gcc-4.3.1/libstdc++-v3/include/c_std/cstdio 2008-08-16 02:11:37.000000000 -0700
} @@ -144,7 +144,7 @@
_GLIBCXX_END_NAMESPACE
-#if _GLIBCXX_USE_C99 -#if _GLIBCXX_USE_C99
+#if _GLIBCXX_USE_C99 || defined(__UCLIBC__) +#if _GLIBCXX_USE_C99 || defined(__UCLIBC__)
+6 -13
View File
@@ -4,23 +4,16 @@ std::snprintf function, that, on uClibc, doens't handle sized 0 buffer.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com> Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
--- gcc-4.2.1/libstdc++-v3/include/bits/locale_facets.tcc 2006-10-17 18:43:47.000000000 +0200 Index: gcc-4.3.1/libstdc++-v3/include/bits/locale_facets.tcc
+++ gcc-4.2.1-st/libstdc++-v3/include/bits/locale_facets.tcc 2007-08-22 18:54:23.000000000 +0200 ===================================================================
@@ -1143,7 +1143,7 @@ _GLIBCXX_BEGIN_LDBL_NAMESPACE --- gcc-4.3.1.orig/libstdc++-v3/include/bits/locale_facets.tcc 2007-11-26 17:59:41.000000000 -0800
+++ gcc-4.3.1/libstdc++-v3/include/bits/locale_facets.tcc 2008-08-16 02:14:48.000000000 -0700
@@ -1004,7 +1004,7 @@
const int __cs_size = __fixed ? __max_exp + __prec + 4 const int __cs_size = __fixed ? __max_exp + __prec + 4
: __max_digits * 2 + __prec; : __max_digits * 2 + __prec;
char* __cs = static_cast<char*>(__builtin_alloca(__cs_size)); char* __cs = static_cast<char*>(__builtin_alloca(__cs_size));
- __len = std::__convert_from_v(_S_get_c_locale(), __cs, 0, __fbuf, - __len = std::__convert_from_v(_S_get_c_locale(), __cs, 0, __fbuf,
+ __len = std::__convert_from_v(_S_get_c_locale(), __cs, __cs_size, __fbuf, + __len = std::__convert_from_v(_S_get_c_locale(), __cs, __cs_size, __fbuf,
__prec, __v); __prec, __v);
#endif #endif
@@ -1777,7 +1777,7 @@ _GLIBCXX_BEGIN_LDBL_NAMESPACE
// max_exponent10 + 1 for the integer part, + 2 for sign and '\0'.
const int __cs_size = numeric_limits<long double>::max_exponent10 + 3;
char* __cs = static_cast<char*>(__builtin_alloca(__cs_size));
- int __len = std::__convert_from_v(_S_get_c_locale(), __cs, 0, "%.*Lf",
+ int __len = std::__convert_from_v(_S_get_c_locale(), __cs, __cs_size, "%.*Lf",
0, __units);
#endif
string_type __digits(__len, char_type());
+11 -44
View File
@@ -3,37 +3,11 @@ Adds support for arm*b-linux* big-endian ARM targets
See http://gcc.gnu.org/PR16350 See http://gcc.gnu.org/PR16350
--- gcc-4.2.0/gcc/config/arm/linux-elf.h Index: gcc-4.3.2/gcc/config/arm/linux-elf.h
+++ gcc-4.2.0/gcc/config/arm/linux-elf.h ===================================================================
@@ -28,19 +28,33 @@ --- gcc-4.3.2.orig/gcc/config/arm/linux-elf.h 2007-11-08 05:44:09.000000000 -0800
#undef TARGET_VERSION +++ gcc-4.3.2/gcc/config/arm/linux-elf.h 2008-08-28 21:08:30.000000000 -0700
#define TARGET_VERSION fputs (" (ARM GNU/Linux with ELF)", stderr); @@ -51,7 +51,7 @@
+/*
+ * 'config.gcc' defines TARGET_BIG_ENDIAN_DEFAULT as 1 for arm*b-*
+ * (big endian) configurations.
+ */
+#if TARGET_BIG_ENDIAN_DEFAULT
+#define TARGET_ENDIAN_DEFAULT MASK_BIG_END
+#define TARGET_ENDIAN_OPTION "mbig-endian"
+#define TARGET_LINKER_EMULATION "armelfb_linux"
+#else
+#define TARGET_ENDIAN_DEFAULT 0
+#define TARGET_ENDIAN_OPTION "mlittle-endian"
+#define TARGET_LINKER_EMULATION "armelf_linux"
+#endif
+
#undef TARGET_DEFAULT_FLOAT_ABI
#define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_HARD
#undef TARGET_DEFAULT
-#define TARGET_DEFAULT (0)
+#define TARGET_DEFAULT (TARGET_ENDIAN_DEFAULT)
#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6
-#define SUBTARGET_EXTRA_LINK_SPEC " -m armelf_linux -p"
+#define SUBTARGET_EXTRA_LINK_SPEC " -m " TARGET_LINKER_EMULATION " -p"
#undef MULTILIB_DEFAULTS #undef MULTILIB_DEFAULTS
#define MULTILIB_DEFAULTS \ #define MULTILIB_DEFAULTS \
@@ -42,19 +16,12 @@ See http://gcc.gnu.org/PR16350
/* Now we define the strings used to build the spec file. */ /* Now we define the strings used to build the spec file. */
#undef LIB_SPEC #undef LIB_SPEC
@@ -61,7 +75,7 @@ Index: gcc-4.3.2/gcc/config.gcc
%{rdynamic:-export-dynamic} \ ===================================================================
%{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER "} \ --- gcc-4.3.2.orig/gcc/config.gcc 2008-08-28 20:57:39.000000000 -0700
-X \ +++ gcc-4.3.2/gcc/config.gcc 2008-08-28 21:00:11.000000000 -0700
- %{mbig-endian:-EB}" \ @@ -742,6 +742,11 @@
+ %{mbig-endian:-EB} %{mlittle-endian:-EL}" \ esac
SUBTARGET_EXTRA_LINK_SPEC
#undef LINK_SPEC
--- gcc-4.2.0/gcc/config.gcc.orig 2006-09-22 14:53:41.000000000 +0200
+++ gcc-4.2.0/gcc/config.gcc 2006-09-25 10:45:21.000000000 +0200
@@ -696,6 +696,11 @@
tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h"
tmake_file="${tmake_file} t-linux arm/t-arm" tmake_file="${tmake_file} t-linux arm/t-arm"
case ${target} in case ${target} in
+ arm*b-*) + arm*b-*)
+11 -32
View File
@@ -3,34 +3,11 @@
# Patch managed by http://www.holgerschurig.de/patcher.html # Patch managed by http://www.holgerschurig.de/patcher.html
# #
--- gcc-4.1.1/gcc/config/arm/lib1funcs.asm~gcc Index: gcc-4.3.1/gcc/config/arm/lib1funcs.asm
+++ gcc-4.1.1/gcc/config/arm/lib1funcs.asm ===================================================================
@@ -995,10 +995,24 @@ --- gcc-4.3.1.orig/gcc/config/arm/lib1funcs.asm 2007-05-30 12:04:09.000000000 -0700
.code 32 +++ gcc-4.3.1/gcc/config/arm/lib1funcs.asm 2008-08-28 21:51:17.000000000 -0700
FUNC_START div0 @@ -1225,11 +1225,12 @@
+#if ! defined __thumb__
stmfd sp!, {r1, lr}
mov r0, #SIGFPE
bl SYM(raise) __PLT__
RETLDM r1
+#else
+ push {r1, lr}
+ mov r0, #SIGFPE
+ bl SYM(raise) __PLT__
+#if __ARM_ARCH__ > 4
+ pop {r1, pc}
+#else
+ @ on 4T that won't work
+ pop {r1}
+ pop {r3}
+ bx r3
+#endif
+#endif
FUNC_END div0
@@ -1141,11 +1155,12 @@
code here switches to the correct mode before executing the function. */ code here switches to the correct mode before executing the function. */
.text .text
@@ -44,7 +21,7 @@
bx \register bx \register
nop nop
@@ -1242,6 +1257,7 @@ @@ -1330,6 +1331,7 @@
.code 16 .code 16
THUMB_FUNC_START _interwork_call_via_\register THUMB_FUNC_START _interwork_call_via_\register
@@ -52,9 +29,11 @@
bx pc bx pc
nop nop
--- gcc-4.1.1/gcc/config/arm/t-linux~gcc Index: gcc-4.3.1/gcc/config/arm/t-linux
+++ gcc-4.1.1/gcc/config/arm/t-linux ===================================================================
@@ -7,6 +7,7 @@ --- gcc-4.3.1.orig/gcc/config/arm/t-linux 2008-08-28 21:25:24.000000000 -0700
+++ gcc-4.3.1/gcc/config/arm/t-linux 2008-08-28 21:51:17.000000000 -0700
@@ -6,6 +6,7 @@
LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \ LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \
_negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \ _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \
_truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \ _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
+23 -5
View File
@@ -1,8 +1,26 @@
diff --git a/gcc/configure b/gcc/configure ---
index 44620ab..6e1830c 100755 gcc/configure | 2 +-
--- a/gcc/configure gcc/configure.ac | 2 +-
+++ b/gcc/configure 2 files changed, 2 insertions(+), 2 deletions(-)
@@ -12272,7 +12272,7 @@ else
Index: gcc-4.3.1/gcc/configure
===================================================================
--- gcc-4.3.1.orig/gcc/configure 2008-08-20 00:27:57.000000000 -0700
+++ gcc-4.3.1/gcc/configure 2008-08-20 00:45:11.000000000 -0700
@@ -12813,7 +12813,7 @@ else
esac
saved_CFLAGS="${CFLAGS}"
CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \
- ${realsrcdir}/configure \
+ CONFIG_SITE= ${realsrcdir}/configure --cache-file=./other.cache \
--enable-languages=${enable_languages-all} \
--target=$target_alias --host=$build_alias --build=$build_alias
CFLAGS="${saved_CFLAGS}"
Index: gcc-4.3.1/gcc/configure.ac
===================================================================
--- gcc-4.3.1.orig/gcc/configure.ac 2008-08-20 00:27:57.000000000 -0700
+++ gcc-4.3.1/gcc/configure.ac 2008-08-20 00:44:52.000000000 -0700
@@ -1480,7 +1480,7 @@ else
esac esac
saved_CFLAGS="${CFLAGS}" saved_CFLAGS="${CFLAGS}"
CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \ CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \
+45 -37
View File
@@ -3,10 +3,18 @@ http://www.bitshrine.org/gpp/tc-fsl-x86lnx-e300c3-nptl-4.0.2-2.src.rpm
Leon Woestenberg <leonw@mailcan.com> Leon Woestenberg <leonw@mailcan.com>
Index: gcc-4.1.2/gcc/config/rs6000/e300c2c3.md ---
gcc/config.gcc | 2
gcc/config/rs6000/e300c2c3.md | 189 ++++++++++++++++++++++++++++++++++++++++++
gcc/config/rs6000/rs6000.c | 24 +++++
gcc/config/rs6000/rs6000.h | 4
gcc/config/rs6000/rs6000.md | 3
5 files changed, 220 insertions(+), 2 deletions(-)
Index: gcc-4.3.1/gcc/config/rs6000/e300c2c3.md
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gcc-4.1.2/gcc/config/rs6000/e300c2c3.md 2007-10-18 15:32:51.000000000 +0200 +++ gcc-4.3.1/gcc/config/rs6000/e300c2c3.md 2008-08-23 16:51:33.000000000 -0700
@@ -0,0 +1,189 @@ @@ -0,0 +1,189 @@
+;; Pipeline description for Motorola PowerPC e300c3 core. +;; Pipeline description for Motorola PowerPC e300c3 core.
+;; Copyright (C) 2003 Free Software Foundation, Inc. +;; Copyright (C) 2003 Free Software Foundation, Inc.
@@ -197,12 +205,12 @@ Index: gcc-4.1.2/gcc/config/rs6000/e300c2c3.md
+ (and (eq_attr "type" "fpstore,fpstore_ux,fpstore_u") + (and (eq_attr "type" "fpstore,fpstore_ux,fpstore_u")
+ (eq_attr "cpu" "ppce300c3")) + (eq_attr "cpu" "ppce300c3"))
+ "ppce300c3_decode,ppce300c3_issue+ppce300c3_lsu,ppce300c3_retire") + "ppce300c3_decode,ppce300c3_issue+ppce300c3_lsu,ppce300c3_retire")
Index: gcc-4.1.2/gcc/config/rs6000/rs6000.c Index: gcc-4.3.1/gcc/config/rs6000/rs6000.c
=================================================================== ===================================================================
--- gcc-4.1.2.orig/gcc/config/rs6000/rs6000.c 2006-12-16 20:24:56.000000000 +0100 --- gcc-4.3.1.orig/gcc/config/rs6000/rs6000.c 2008-08-23 16:49:39.000000000 -0700
+++ gcc-4.1.2/gcc/config/rs6000/rs6000.c 2007-10-18 15:34:26.000000000 +0200 +++ gcc-4.3.1/gcc/config/rs6000/rs6000.c 2008-08-23 16:54:25.000000000 -0700
@@ -557,6 +557,21 @@ @@ -669,6 +669,21 @@ struct processor_costs ppc8540_cost = {
COSTS_N_INSNS (29), /* ddiv */ 1, /* prefetch streams /*/
}; };
+/* Instruction costs on E300C2 and E300C3 cores. */ +/* Instruction costs on E300C2 and E300C3 cores. */
@@ -223,16 +231,16 @@ Index: gcc-4.1.2/gcc/config/rs6000/rs6000.c
/* Instruction costs on POWER4 and POWER5 processors. */ /* Instruction costs on POWER4 and POWER5 processors. */
static const static const
struct processor_costs power4_cost = { struct processor_costs power4_cost = {
@@ -1140,6 +1155,8 @@ @@ -1420,6 +1435,8 @@ rs6000_override_options (const char *def
{"8540", PROCESSOR_PPC8540, POWERPC_BASE_MASK | MASK_STRICT_ALIGN},
/* 8548 has a dummy entry for now. */ /* 8548 has a dummy entry for now. */
{"8548", PROCESSOR_PPC8540, {"8548", PROCESSOR_PPC8540, POWERPC_BASE_MASK | MASK_STRICT_ALIGN},
POWERPC_BASE_MASK | MASK_PPC_GFXOPT | MASK_STRICT_ALIGN}, + {"e300c2", PROCESSOR_PPCE300C2, POWERPC_BASE_MASK | MASK_SOFT_FLOAT},
+ {"e300c2", PROCESSOR_PPCE300C2, POWERPC_BASE_MASK | MASK_SOFT_FLOAT}, + {"e300c3", PROCESSOR_PPCE300C3, POWERPC_BASE_MASK},
+ {"e300c3", PROCESSOR_PPCE300C3, POWERPC_BASE_MASK},
{"860", PROCESSOR_MPCCORE, POWERPC_BASE_MASK | MASK_SOFT_FLOAT}, {"860", PROCESSOR_MPCCORE, POWERPC_BASE_MASK | MASK_SOFT_FLOAT},
{"970", PROCESSOR_POWER4, {"970", PROCESSOR_POWER4,
POWERPC_7400_MASK | MASK_PPC_GPOPT | MASK_MFCRF | MASK_POWERPC64}, POWERPC_7400_MASK | MASK_PPC_GPOPT | MASK_MFCRF | MASK_POWERPC64},
@@ -1529,6 +1546,11 @@ @@ -1845,6 +1862,11 @@ rs6000_override_options (const char *def
rs6000_cost = &ppc8540_cost; rs6000_cost = &ppc8540_cost;
break; break;
@@ -244,68 +252,68 @@ Index: gcc-4.1.2/gcc/config/rs6000/rs6000.c
case PROCESSOR_POWER4: case PROCESSOR_POWER4:
case PROCESSOR_POWER5: case PROCESSOR_POWER5:
rs6000_cost = &power4_cost; rs6000_cost = &power4_cost;
@@ -16647,6 +16669,8 @@ @@ -18606,6 +18628,8 @@ rs6000_issue_rate (void)
case CPU_PPC750:
case CPU_PPC7400: case CPU_PPC7400:
case CPU_PPC8540: case CPU_PPC8540:
case CPU_CELL:
+ case CPU_PPCE300C2: + case CPU_PPCE300C2:
+ case CPU_PPCE300C3: + case CPU_PPCE300C3:
return 2; return 2;
case CPU_RIOS2: case CPU_RIOS2:
case CPU_PPC604: case CPU_PPC604:
Index: gcc-4.1.2/gcc/config/rs6000/rs6000.h Index: gcc-4.3.1/gcc/config/rs6000/rs6000.h
=================================================================== ===================================================================
--- gcc-4.1.2.orig/gcc/config/rs6000/rs6000.h 2006-11-18 01:25:49.000000000 +0100 --- gcc-4.3.1.orig/gcc/config/rs6000/rs6000.h 2008-01-26 09:18:35.000000000 -0800
+++ gcc-4.1.2/gcc/config/rs6000/rs6000.h 2007-10-18 15:32:51.000000000 +0200 +++ gcc-4.3.1/gcc/config/rs6000/rs6000.h 2008-08-23 16:55:30.000000000 -0700
@@ -111,6 +111,8 @@ @@ -117,6 +117,8 @@
%{mcpu=970: -mpower4 -maltivec} \
%{mcpu=G5: -mpower4 -maltivec} \ %{mcpu=G5: -mpower4 -maltivec} \
%{mcpu=8540: -me500} \ %{mcpu=8540: -me500} \
%{mcpu=8548: -me500} \
+%{mcpu=e300c2: -mppc} \ +%{mcpu=e300c2: -mppc} \
+%{mcpu=e300c3: -mppc -mpmr} \ +%{mcpu=e300c3: -mppc -mpmr} \
%{maltivec: -maltivec} \ %{maltivec: -maltivec} \
-many" -many"
@@ -211,6 +213,8 @@ @@ -262,6 +264,8 @@ enum processor_type
PROCESSOR_PPC7400, PROCESSOR_PPC7400,
PROCESSOR_PPC7450, PROCESSOR_PPC7450,
PROCESSOR_PPC8540, PROCESSOR_PPC8540,
+ PROCESSOR_PPCE300C2, + PROCESSOR_PPCE300C2,
+ PROCESSOR_PPCE300C3, + PROCESSOR_PPCE300C3,
PROCESSOR_POWER4, PROCESSOR_POWER4,
PROCESSOR_POWER5 PROCESSOR_POWER5,
}; PROCESSOR_POWER6,
Index: gcc-4.1.2/gcc/config/rs6000/rs6000.md Index: gcc-4.3.1/gcc/config/rs6000/rs6000.md
=================================================================== ===================================================================
--- gcc-4.1.2.orig/gcc/config/rs6000/rs6000.md 2006-12-16 20:24:56.000000000 +0100 --- gcc-4.3.1.orig/gcc/config/rs6000/rs6000.md 2008-02-13 16:14:45.000000000 -0800
+++ gcc-4.1.2/gcc/config/rs6000/rs6000.md 2007-10-18 15:32:51.000000000 +0200 +++ gcc-4.3.1/gcc/config/rs6000/rs6000.md 2008-08-23 16:57:29.000000000 -0700
@@ -103,7 +103,7 @@ @@ -133,7 +133,7 @@
;; Processor type -- this attribute must exactly match the processor_type ;; Processor type -- this attribute must exactly match the processor_type
;; enumeration in rs6000.h. ;; enumeration in rs6000.h.
-(define_attr "cpu" "rios1,rios2,rs64a,mpccore,ppc403,ppc405,ppc440,ppc601,ppc603,ppc604,ppc604e,ppc620,ppc630,ppc750,ppc7400,ppc7450,ppc8540,power4,power5" -(define_attr "cpu" "rios1,rios2,rs64a,mpccore,ppc403,ppc405,ppc440,ppc601,ppc603,ppc604,ppc604e,ppc620,ppc630,ppc750,ppc7400,ppc7450,ppc8540,power4,power5,power6,cell"
+(define_attr "cpu" "rios1,rios2,rs64a,mpccore,ppc403,ppc405,ppc440,ppc601,ppc603,ppc604,ppc604e,ppc620,ppc630,ppc750,ppc7400,ppc7450,ppc8540,ppce300c2,ppce300c3,power4,power5" +(define_attr "cpu" "rios1,rios2,rs64a,mpccore,ppc403,ppc405,ppc440,ppc601,ppc603,ppc604,ppc604e,ppc620,ppc630,ppc750,ppc7400,ppc7450,ppc8540,power4,power5,power6,cell,ppce300c2,ppce300c3"
(const (symbol_ref "rs6000_cpu_attr"))) (const (symbol_ref "rs6000_cpu_attr")))
(automata_option "ndfa")
@@ -119,6 +119,7 @@ @@ -166,6 +166,7 @@
(include "7xx.md") (include "7xx.md")
(include "7450.md") (include "7450.md")
(include "8540.md") (include "8540.md")
+(include "e300c2c3.md") +(include "e300c2c3.md")
(include "power4.md") (include "power4.md")
(include "power5.md") (include "power5.md")
(include "power6.md")
Index: gcc-4.1.2/gcc/config.gcc Index: gcc-4.3.1/gcc/config.gcc
=================================================================== ===================================================================
--- gcc-4.1.2.orig/gcc/config.gcc 2007-10-18 15:26:23.000000000 +0200 --- gcc-4.3.1.orig/gcc/config.gcc 2008-08-23 16:49:43.000000000 -0700
+++ gcc-4.1.2/gcc/config.gcc 2007-10-18 15:32:51.000000000 +0200 +++ gcc-4.3.1/gcc/config.gcc 2008-08-23 17:03:55.000000000 -0700
@@ -2710,7 +2710,7 @@ @@ -3144,7 +3144,7 @@ case "${target}" in
| rios | rios1 | rios2 | rsc | rsc1 | rs64a \ | rios | rios1 | rios2 | rsc | rsc1 | rs64a \
| 401 | 403 | 405 | 405fp | 440 | 440fp | 505 \ | 401 | 403 | 405 | 405fp | 440 | 440fp | 505 \
| 601 | 602 | 603 | 603e | ec603e | 604 \ | 601 | 602 | 603 | 603e | ec603e | 604 \
- | 604e | 620 | 630 | 740 | 750 | 7400 | 7450 \ - | 604e | 620 | 630 | 740 | 750 | 7400 | 7450 \
+ | 604e | 620 | 630 | 740 | 750 | 7400 | 7450 | e300c[23] \ + | 604e | 620 | 630 | 740 | 750 | 7400 | 7450 | e300c[23] \
| 854[08] | 801 | 821 | 823 | 860 | 970 | G3 | G4 | G5) | 854[08] | 801 | 821 | 823 | 860 | 970 | G3 | G4 | G5 | cell)
# OK # OK
;; ;;
@@ -0,0 +1,23 @@
Change gcc build : Enable m4 and m4-nofpu (needed for kernel) for sh4-gnu-linux
Signed-off-by: Carl Shaw <carl.shaw@st.com>
Index: gcc/gcc/config.gcc
===================================================================
--- gcc.orig/gcc/config.gcc 2008-07-18 10:37:54.000000000 +0100
+++ gcc/gcc/config.gcc 2008-07-18 11:00:42.000000000 +0100
@@ -2097,11 +2097,12 @@
if test x${sh_multilibs} = x ; then
case ${target} in
sh64-superh-linux* | \
- sh[1234]*) sh_multilibs=${sh_cpu_target} ;;
sh64* | sh5*) sh_multilibs=m5-32media,m5-32media-nofpu,m5-compact,m5-compact-nofpu,m5-64media,m5-64media-nofpu ;;
- sh-superh-*) sh_multilibs=m4,m4-single,m4-single-only,m4-nofpu ;;
+ sh-superh-* | \
+ sh4-*-linux*) sh_multilibs=m4,m4-nofpu ;;
sh*-*-linux*) sh_multilibs=m1,m3e,m4 ;;
sh*-*-netbsd*) sh_multilibs=m3,m3e,m4 ;;
+ sh[1234]*) sh_multilibs=${sh_cpu_target} ;;
*) sh_multilibs=m1,m2,m2e,m4,m4-single,m4-single-only,m2a,m2a-single ;;
esac
if test x$with_fp = xno; then
@@ -0,0 +1,31 @@
---
configure | 2 +-
configure.ac | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
Index: gcc-4.3.1/configure.ac
===================================================================
--- gcc-4.3.1.orig/configure.ac 2008-07-21 12:29:18.000000000 -0700
+++ gcc-4.3.1/configure.ac 2008-07-21 12:29:35.000000000 -0700
@@ -2352,7 +2352,7 @@ fi
# for target_alias and gcc doesn't manage it consistently.
target_configargs="--cache-file=./config.cache ${target_configargs}"
-FLAGS_FOR_TARGET=
+FLAGS_FOR_TARGET="$ARCH_FLAGS_FOR_TARGET"
case " $target_configdirs " in
*" newlib "*)
case " $target_configargs " in
Index: gcc-4.3.1/configure
===================================================================
--- gcc-4.3.1.orig/configure 2008-07-21 12:29:48.000000000 -0700
+++ gcc-4.3.1/configure 2008-07-21 12:29:59.000000000 -0700
@@ -5841,7 +5841,7 @@ fi
# for target_alias and gcc doesn't manage it consistently.
target_configargs="--cache-file=./config.cache ${target_configargs}"
-FLAGS_FOR_TARGET=
+FLAGS_FOR_TARGET="$ARCH_FLAGS_FOR_TARGET"
case " $target_configdirs " in
*" newlib "*)
case " $target_configargs " in
File diff suppressed because it is too large Load Diff
+279
View File
@@ -0,0 +1,279 @@
Index: gcc-4.3.2/Makefile.def
===================================================================
--- gcc-4.3.2.orig/Makefile.def 2008-08-28 18:21:19.000000000 -0700
+++ gcc-4.3.2/Makefile.def 2008-08-28 18:21:41.000000000 -0700
@@ -207,6 +207,7 @@
flags_to_pass = { flag= BISON ; };
flags_to_pass = { flag= CC_FOR_BUILD ; };
flags_to_pass = { flag= CFLAGS_FOR_BUILD ; };
+flags_to_pass = { flag= CPPFLAGS_FOR_BUILD ; };
flags_to_pass = { flag= CXX_FOR_BUILD ; };
flags_to_pass = { flag= EXPECT ; };
flags_to_pass = { flag= FLEX ; };
Index: gcc-4.3.2/gcc/Makefile.in
===================================================================
--- gcc-4.3.2.orig/gcc/Makefile.in 2008-08-28 18:21:20.000000000 -0700
+++ gcc-4.3.2/gcc/Makefile.in 2008-08-28 18:21:41.000000000 -0700
@@ -673,7 +673,7 @@
# Native linker and preprocessor flags. For x-fragment overrides.
BUILD_LDFLAGS=@BUILD_LDFLAGS@
-BUILD_CPPFLAGS=$(ALL_CPPFLAGS)
+BUILD_CPPFLAGS=$(INCLUDES) @BUILD_CPPFLAGS@ $(X_CPPFLAGS)
# Actual name to use when installing a native compiler.
GCC_INSTALL_NAME := $(shell echo gcc|sed '$(program_transform_name)')
Index: gcc-4.3.2/gcc/configure.ac
===================================================================
--- gcc-4.3.2.orig/gcc/configure.ac 2008-08-28 18:21:20.000000000 -0700
+++ gcc-4.3.2/gcc/configure.ac 2008-08-28 18:21:41.000000000 -0700
@@ -1775,10 +1775,11 @@
# Also, we cannot run fixincludes or fix-header.
# These are the normal (build=host) settings:
-CC_FOR_BUILD='$(CC)' AC_SUBST(CC_FOR_BUILD)
-BUILD_CFLAGS='$(ALL_CFLAGS)' AC_SUBST(BUILD_CFLAGS)
-BUILD_LDFLAGS='$(LDFLAGS)' AC_SUBST(BUILD_LDFLAGS)
-STMP_FIXINC=stmp-fixinc AC_SUBST(STMP_FIXINC)
+CC_FOR_BUILD='$(CC)' AC_SUBST(CC_FOR_BUILD)
+BUILD_CFLAGS='$(ALL_CFLAGS)' AC_SUBST(BUILD_CFLAGS)
+BUILD_LDFLAGS='$(LDFLAGS)' AC_SUBST(BUILD_LDFLAGS)
+BUILD_CPPFLAGS='$(ALL_CPPFLAGS)' AC_SUBST(BUILD_CPPFLAGS)
+STMP_FIXINC=stmp-fixinc AC_SUBST(STMP_FIXINC)
# Possibly disable fixproto, on a per-target basis.
case ${use_fixproto} in
@@ -1796,6 +1797,7 @@
then
BUILD_CFLAGS='$(INTERNAL_CFLAGS) $(T_CFLAGS) $(CFLAGS_FOR_BUILD)'
BUILD_LDFLAGS='$(LDFLAGS_FOR_BUILD)'
+ BUILD_CPPFLAGS='$(CPPFLAGS_FOR_BUILD)'
if test "x$TARGET_SYSTEM_ROOT" = x; then
if test "x$STMP_FIXPROTO" != x; then
Index: gcc-4.3.2/Makefile.in
===================================================================
--- gcc-4.3.2.orig/Makefile.in 2008-08-28 18:21:20.000000000 -0700
+++ gcc-4.3.2/Makefile.in 2008-08-28 18:21:41.000000000 -0700
@@ -272,6 +272,7 @@
AS_FOR_BUILD = @AS_FOR_BUILD@
CC_FOR_BUILD = @CC_FOR_BUILD@
CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
+CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
CXXFLAGS_FOR_BUILD = @CXXFLAGS_FOR_BUILD@
CXX_FOR_BUILD = @CXX_FOR_BUILD@
DLLTOOL_FOR_BUILD = @DLLTOOL_FOR_BUILD@
@@ -502,6 +503,7 @@
"BISON=$(BISON)" \
"CC_FOR_BUILD=$(CC_FOR_BUILD)" \
"CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
+ "CPPFLAGS_FOR_BUILD=$(CPPFLAGS_FOR_BUILD)" \
"CXX_FOR_BUILD=$(CXX_FOR_BUILD)" \
"EXPECT=$(EXPECT)" \
"FLEX=$(FLEX)" \
Index: gcc-4.3.2/gcc/configure
===================================================================
--- gcc-4.3.2.orig/gcc/configure 2008-08-28 18:21:20.000000000 -0700
+++ gcc-4.3.2/gcc/configure 2008-08-28 18:21:50.000000000 -0700
@@ -458,7 +458,7 @@
# include <unistd.h>
#endif"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os target_noncanonical build_libsubdir build_subdir host_subdir target_subdir GENINSRC CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT NO_MINUS_C_MINUS_O OUTPUT_OPTION CPP EGREP loose_warn cxx_compat_warn strict_warn warn_cflags nocommon_flag TREEBROWSER valgrind_path valgrind_path_defines valgrind_command coverage_flags enable_multilib enable_decimal_float enable_fixed_point enable_shared TARGET_SYSTEM_ROOT TARGET_SYSTEM_ROOT_DEFINE CROSS_SYSTEM_HEADER_DIR onestep PKGVERSION REPORT_BUGS_TO REPORT_BUGS_TEXI datarootdir docdir htmldir SET_MAKE AWK LN_S LN RANLIB ac_ct_RANLIB ranlib_flags INSTALL INSTALL_PROGRAM INSTALL_DATA make_compare_target have_mktemp_command MAKEINFO BUILD_INFO GENERATED_MANPAGES FLEX BISON NM AR COLLECT2_LIBS GNAT_LIBEXC LDEXP_LIB TARGET_GETGROUPS_T LIBICONV LTLIBICONV LIBICONV_DEP manext objext gthread_flags extra_modes_file extra_opt_files USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT host_cc_for_libada CROSS ALL SYSTEM_HEADER_DIR inhibit_libc CC_FOR_BUILD BUILD_CFLAGS BUILD_LDFLAGS STMP_FIXINC STMP_FIXPROTO collect2 LIBTOOL SED FGREP GREP LD DUMPBIN ac_ct_DUMPBIN ac_ct_AR STRIP ac_ct_STRIP lt_ECHO objdir enable_fast_install gcc_cv_as ORIGINAL_AS_FOR_TARGET gcc_cv_ld ORIGINAL_LD_FOR_TARGET gcc_cv_nm ORIGINAL_NM_FOR_TARGET gcc_cv_objdump libgcc_visibility GGC zlibdir zlibinc MAINT gcc_tooldir dollar slibdir subdirs srcdir all_compilers all_gtfiles all_lang_makefrags all_lang_makefiles all_languages all_selected_languages build_exeext build_install_headers_dir build_xm_file_list build_xm_include_list build_xm_defines build_file_translate check_languages cpp_install_dir xmake_file tmake_file extra_gcc_objs extra_headers_list extra_objs extra_parts extra_passes extra_programs float_h_file gcc_config_arguments gcc_gxx_include_dir host_exeext host_xm_file_list host_xm_include_list host_xm_defines out_host_hook_obj install lang_opt_files lang_specs_files lang_tree_files local_prefix md_file objc_boehm_gc out_file out_object_file thread_file tm_file_list tm_include_list tm_defines tm_p_file_list tm_p_include_list xm_file_list xm_include_list xm_defines c_target_objs cxx_target_objs target_cpu_default GMPLIBS GMPINC LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os target_noncanonical build_libsubdir build_subdir host_subdir target_subdir GENINSRC CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT NO_MINUS_C_MINUS_O OUTPUT_OPTION CPP EGREP loose_warn cxx_compat_warn strict_warn warn_cflags nocommon_flag TREEBROWSER valgrind_path valgrind_path_defines valgrind_command coverage_flags enable_multilib enable_decimal_float enable_fixed_point enable_shared TARGET_SYSTEM_ROOT TARGET_SYSTEM_ROOT_DEFINE CROSS_SYSTEM_HEADER_DIR onestep PKGVERSION REPORT_BUGS_TO REPORT_BUGS_TEXI datarootdir docdir htmldir SET_MAKE AWK LN_S LN RANLIB ac_ct_RANLIB ranlib_flags INSTALL INSTALL_PROGRAM INSTALL_DATA make_compare_target have_mktemp_command MAKEINFO BUILD_INFO GENERATED_MANPAGES FLEX BISON NM AR COLLECT2_LIBS GNAT_LIBEXC LDEXP_LIB TARGET_GETGROUPS_T LIBICONV LTLIBICONV LIBICONV_DEP manext objext gthread_flags extra_modes_file extra_opt_files USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT host_cc_for_libada CROSS ALL SYSTEM_HEADER_DIR inhibit_libc CC_FOR_BUILD BUILD_CFLAGS BUILD_LDFLAGS BUILD_CPPFLAGS STMP_FIXINC STMP_FIXPROTO collect2 LIBTOOL SED FGREP GREP LD DUMPBIN ac_ct_DUMPBIN ac_ct_AR STRIP ac_ct_STRIP lt_ECHO objdir enable_fast_install gcc_cv_as ORIGINAL_AS_FOR_TARGET gcc_cv_ld ORIGINAL_LD_FOR_TARGET gcc_cv_nm ORIGINAL_NM_FOR_TARGET gcc_cv_objdump libgcc_visibility GGC zlibdir zlibinc MAINT gcc_tooldir dollar slibdir subdirs srcdir all_compilers all_gtfiles all_lang_makefrags all_lang_makefiles all_languages all_selected_languages build_exeext build_install_headers_dir build_xm_file_list build_xm_include_list build_xm_defines build_file_translate check_languages cpp_install_dir xmake_file tmake_file extra_gcc_objs extra_headers_list extra_objs extra_parts extra_passes extra_programs float_h_file gcc_config_arguments gcc_gxx_include_dir host_exeext host_xm_file_list host_xm_include_list host_xm_defines out_host_hook_obj install lang_opt_files lang_specs_files lang_tree_files local_prefix md_file objc_boehm_gc out_file out_object_file thread_file tm_file_list tm_include_list tm_defines tm_p_file_list tm_p_include_list xm_file_list xm_include_list xm_defines c_target_objs cxx_target_objs target_cpu_default GMPLIBS GMPINC LIBOBJS LTLIBOBJS'
ac_subst_files='language_hooks'
# Initialize some variables set by options.
@@ -13471,6 +13471,7 @@
CC_FOR_BUILD='$(CC)'
BUILD_CFLAGS='$(ALL_CFLAGS)'
BUILD_LDFLAGS='$(LDFLAGS)'
+BUILD_CPPFLAGS='$(ALL_CPPFLAGS)'
STMP_FIXINC=stmp-fixinc
# Possibly disable fixproto, on a per-target basis.
@@ -13489,6 +13490,7 @@
then
BUILD_CFLAGS='$(INTERNAL_CFLAGS) $(T_CFLAGS) $(CFLAGS_FOR_BUILD)'
BUILD_LDFLAGS='$(LDFLAGS_FOR_BUILD)'
+ BUILD_CPPFLAGS='$(CPPFLAGS_FOR_BUILD)'
if test "x$TARGET_SYSTEM_ROOT" = x; then
if test "x$STMP_FIXPROTO" != x; then
@@ -14067,13 +14069,13 @@
else
lt_cv_nm_interface="BSD nm"
echo "int some_variable = 0;" > conftest.$ac_ext
- (eval echo "\"\$as_me:14070: $ac_compile\"" >&5)
+ (eval echo "\"\$as_me:14072: $ac_compile\"" >&5)
(eval "$ac_compile" 2>conftest.err)
cat conftest.err >&5
- (eval echo "\"\$as_me:14073: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+ (eval echo "\"\$as_me:14075: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
(eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
cat conftest.err >&5
- (eval echo "\"\$as_me:14076: output\"" >&5)
+ (eval echo "\"\$as_me:14078: output\"" >&5)
cat conftest.out >&5
if $GREP 'External.*some_variable' conftest.out > /dev/null; then
lt_cv_nm_interface="MS dumpbin"
@@ -15128,7 +15130,7 @@
;;
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 15131 "configure"' > conftest.$ac_ext
+ echo '#line 15133 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -15748,11 +15750,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15751: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15753: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15755: \$? = $ac_status" >&5
+ echo "$as_me:15757: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -16070,11 +16072,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:16073: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:16075: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:16077: \$? = $ac_status" >&5
+ echo "$as_me:16079: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -16175,11 +16177,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:16178: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:16180: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:16182: \$? = $ac_status" >&5
+ echo "$as_me:16184: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -16230,11 +16232,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:16233: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:16235: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:16237: \$? = $ac_status" >&5
+ echo "$as_me:16239: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -19027,7 +19029,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 19030 "configure"
+#line 19032 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -19127,7 +19129,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 19130 "configure"
+#line 19132 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -23938,6 +23940,7 @@
s,@CC_FOR_BUILD@,$CC_FOR_BUILD,;t t
s,@BUILD_CFLAGS@,$BUILD_CFLAGS,;t t
s,@BUILD_LDFLAGS@,$BUILD_LDFLAGS,;t t
+s,@BUILD_CPPFLAGS@,$BUILD_CPPFLAGS,;t t
s,@STMP_FIXINC@,$STMP_FIXINC,;t t
s,@STMP_FIXPROTO@,$STMP_FIXPROTO,;t t
s,@collect2@,$collect2,;t t
Index: gcc-4.3.2/Makefile.tpl
===================================================================
--- gcc-4.3.2.orig/Makefile.tpl 2008-08-28 18:21:20.000000000 -0700
+++ gcc-4.3.2/Makefile.tpl 2008-08-28 18:21:41.000000000 -0700
@@ -275,6 +275,7 @@
AS_FOR_BUILD = @AS_FOR_BUILD@
CC_FOR_BUILD = @CC_FOR_BUILD@
CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
+CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
CXXFLAGS_FOR_BUILD = @CXXFLAGS_FOR_BUILD@
CXX_FOR_BUILD = @CXX_FOR_BUILD@
DLLTOOL_FOR_BUILD = @DLLTOOL_FOR_BUILD@
Index: gcc-4.3.2/configure
===================================================================
--- gcc-4.3.2.orig/configure 2008-08-28 18:21:20.000000000 -0700
+++ gcc-4.3.2/configure 2008-08-28 18:21:41.000000000 -0700
@@ -272,7 +272,7 @@
PACKAGE_BUGREPORT=
ac_unique_file="move-if-change"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os build_noncanonical host_noncanonical target_noncanonical host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN LN_S TOPLEVEL_CONFIGURE_ARGUMENTS build_libsubdir build_subdir host_subdir target_subdir CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX GNATBIND ac_ct_GNATBIND GNATMAKE ac_ct_GNATMAKE do_compare gmplibs gmpinc stage1_languages SYSROOT_CFLAGS_FOR_TARGET DEBUG_PREFIX_CFLAGS_FOR_TARGET CFLAGS_FOR_TARGET CXXFLAGS_FOR_TARGET RPATH_ENVVAR tooldir build_tooldir CONFIGURE_GDB_TK GDB_TK INSTALL_GDB_TK build_configargs build_configdirs host_configargs configdirs target_configargs AR_FOR_BUILD AS_FOR_BUILD CC_FOR_BUILD CFLAGS_FOR_BUILD CXXFLAGS_FOR_BUILD CXX_FOR_BUILD DLLTOOL_FOR_BUILD GCJ_FOR_BUILD GFORTRAN_FOR_BUILD LDFLAGS_FOR_BUILD LD_FOR_BUILD NM_FOR_BUILD RANLIB_FOR_BUILD WINDMC_FOR_BUILD WINDRES_FOR_BUILD config_shell YACC BISON M4 LEX FLEX MAKEINFO EXPECT RUNTEST AR AS DLLTOOL LD LIPO NM RANLIB STRIP WINDRES WINDMC OBJCOPY OBJDUMP CC_FOR_TARGET CXX_FOR_TARGET GCC_FOR_TARGET GCJ_FOR_TARGET GFORTRAN_FOR_TARGET AR_FOR_TARGET AS_FOR_TARGET DLLTOOL_FOR_TARGET LD_FOR_TARGET LIPO_FOR_TARGET NM_FOR_TARGET OBJDUMP_FOR_TARGET RANLIB_FOR_TARGET STRIP_FOR_TARGET WINDRES_FOR_TARGET WINDMC_FOR_TARGET RAW_CXX_FOR_TARGET FLAGS_FOR_TARGET COMPILER_AS_FOR_TARGET COMPILER_LD_FOR_TARGET COMPILER_NM_FOR_TARGET MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT stage1_cflags stage1_checking stage2_werror_flag datarootdir docdir pdfdir htmldir LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os build_noncanonical host_noncanonical target_noncanonical host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN LN_S TOPLEVEL_CONFIGURE_ARGUMENTS build_libsubdir build_subdir host_subdir target_subdir CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX GNATBIND ac_ct_GNATBIND GNATMAKE ac_ct_GNATMAKE do_compare gmplibs gmpinc stage1_languages SYSROOT_CFLAGS_FOR_TARGET DEBUG_PREFIX_CFLAGS_FOR_TARGET CFLAGS_FOR_TARGET CXXFLAGS_FOR_TARGET RPATH_ENVVAR tooldir build_tooldir CONFIGURE_GDB_TK GDB_TK INSTALL_GDB_TK build_configargs build_configdirs host_configargs configdirs target_configargs AR_FOR_BUILD AS_FOR_BUILD CC_FOR_BUILD CFLAGS_FOR_BUILD CPPFLAGS_FOR_BUILD CXXFLAGS_FOR_BUILD CXX_FOR_BUILD DLLTOOL_FOR_BUILD GCJ_FOR_BUILD GFORTRAN_FOR_BUILD LDFLAGS_FOR_BUILD LD_FOR_BUILD NM_FOR_BUILD RANLIB_FOR_BUILD WINDMC_FOR_BUILD WINDRES_FOR_BUILD config_shell YACC BISON M4 LEX FLEX MAKEINFO EXPECT RUNTEST AR AS DLLTOOL LD LIPO NM RANLIB STRIP WINDRES WINDMC OBJCOPY OBJDUMP CC_FOR_TARGET CXX_FOR_TARGET GCC_FOR_TARGET GCJ_FOR_TARGET GFORTRAN_FOR_TARGET AR_FOR_TARGET AS_FOR_TARGET DLLTOOL_FOR_TARGET LD_FOR_TARGET LIPO_FOR_TARGET NM_FOR_TARGET OBJDUMP_FOR_TARGET RANLIB_FOR_TARGET STRIP_FOR_TARGET WINDRES_FOR_TARGET WINDMC_FOR_TARGET RAW_CXX_FOR_TARGET FLAGS_FOR_TARGET COMPILER_AS_FOR_TARGET COMPILER_LD_FOR_TARGET COMPILER_NM_FOR_TARGET MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT stage1_cflags stage1_checking stage2_werror_flag datarootdir docdir pdfdir htmldir LIBOBJS LTLIBOBJS'
ac_subst_files='serialization_dependencies host_makefile_frag target_makefile_frag alphaieee_frag ospace_frag'
# Initialize some variables set by options.
@@ -5914,6 +5914,7 @@
# our build compiler if desired.
if test x"${build}" = x"${host}" ; then
CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD-${CFLAGS}}
+ CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-${CPPFLAGS}}
CXXFLAGS_FOR_BUILD=${CXXFLAGS_FOR_BUILD-${CXXFLAGS}}
LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-${LDFLAGS}}
fi
@@ -5991,6 +5992,7 @@
+
# Generate default definitions for YACC, M4, LEX and other programs that run
# on the build machine. These are used if the Makefile can't locate these
# programs in objdir.
@@ -12874,6 +12876,7 @@
s,@AS_FOR_BUILD@,$AS_FOR_BUILD,;t t
s,@CC_FOR_BUILD@,$CC_FOR_BUILD,;t t
s,@CFLAGS_FOR_BUILD@,$CFLAGS_FOR_BUILD,;t t
+s,@CPPFLAGS_FOR_BUILD@,$CPPFLAGS_FOR_BUILD,;t t
s,@CXXFLAGS_FOR_BUILD@,$CXXFLAGS_FOR_BUILD,;t t
s,@CXX_FOR_BUILD@,$CXX_FOR_BUILD,;t t
s,@DLLTOOL_FOR_BUILD@,$DLLTOOL_FOR_BUILD,;t t
Index: gcc-4.3.2/configure.ac
===================================================================
--- gcc-4.3.2.orig/configure.ac 2008-08-28 18:21:20.000000000 -0700
+++ gcc-4.3.2/configure.ac 2008-08-28 18:21:41.000000000 -0700
@@ -2425,6 +2425,7 @@
# our build compiler if desired.
if test x"${build}" = x"${host}" ; then
CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD-${CFLAGS}}
+ CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-${CPPFLAGS}}
CXXFLAGS_FOR_BUILD=${CXXFLAGS_FOR_BUILD-${CXXFLAGS}}
LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-${LDFLAGS}}
fi
@@ -2489,6 +2490,7 @@
AC_SUBST(AS_FOR_BUILD)
AC_SUBST(CC_FOR_BUILD)
AC_SUBST(CFLAGS_FOR_BUILD)
+AC_SUBST(CPPFLAGS_FOR_BUILD)
AC_SUBST(CXXFLAGS_FOR_BUILD)
AC_SUBST(CXX_FOR_BUILD)
AC_SUBST(DLLTOOL_FOR_BUILD)
+42
View File
@@ -0,0 +1,42 @@
Index: gcc-4.3.3/gcc/Makefile.in
===================================================================
--- gcc-4.3.3.orig/gcc/Makefile.in 2009-09-11 17:51:50.000000000 +0100
+++ gcc-4.3.3/gcc/Makefile.in 2009-09-11 17:56:48.000000000 +0100
@@ -378,7 +378,7 @@
MD5_H = $(srcdir)/../include/md5.h
# Default native SYSTEM_HEADER_DIR, to be overridden by targets.
-NATIVE_SYSTEM_HEADER_DIR = /usr/include
+NATIVE_SYSTEM_HEADER_DIR = @NATIVE_SYSTEM_HEADER_DIR@
# Default cross SYSTEM_HEADER_DIR, to be overridden by targets.
CROSS_SYSTEM_HEADER_DIR = @CROSS_SYSTEM_HEADER_DIR@
Index: gcc-4.3.3/gcc/configure
===================================================================
--- gcc-4.3.3.orig/gcc/configure 2009-09-11 17:49:58.000000000 +0100
+++ gcc-4.3.3/gcc/configure 2009-09-11 18:00:16.000000000 +0100
@@ -7315,7 +7315,7 @@
enable_shared=yes
fi;
-
+NATIVE_SYSTEM_HEADER_DIR=$NATIVE_SYSTEM_HEADER_DIR
# Check whether --with-build-sysroot or --without-build-sysroot was given.
if test "${with_build_sysroot+set}" = set; then
@@ -7323,7 +7323,6 @@
fi;
-
# Check whether --with-sysroot or --without-sysroot was given.
if test "${with_sysroot+set}" = set; then
withval="$with_sysroot"
@@ -23882,6 +23881,7 @@
s,@TARGET_SYSTEM_ROOT@,$TARGET_SYSTEM_ROOT,;t t
s,@TARGET_SYSTEM_ROOT_DEFINE@,$TARGET_SYSTEM_ROOT_DEFINE,;t t
s,@CROSS_SYSTEM_HEADER_DIR@,$CROSS_SYSTEM_HEADER_DIR,;t t
+s,@NATIVE_SYSTEM_HEADER_DIR@,$NATIVE_SYSTEM_HEADER_DIR,;t t
s,@onestep@,$onestep,;t t
s,@PKGVERSION@,$PKGVERSION,;t t
s,@REPORT_BUGS_TO@,$REPORT_BUGS_TO,;t t
+18
View File
@@ -0,0 +1,18 @@
Index: gcc-4.2.4/gcc/config/sh/linux-unwind.h
===================================================================
--- gcc-4.2.4.orig/gcc/config/sh/linux-unwind.h 2008-10-04 00:05:29.434889757 +0200
+++ gcc-4.2.4/gcc/config/sh/linux-unwind.h 2008-10-04 00:06:02.594883544 +0200
@@ -26,6 +26,7 @@
the Free Software Foundation, 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA. */
+#ifndef inhibit_libc
/* Do code reading to identify a signal frame, and set the frame
state data appropriately. See unwind-dw2.c for the structs. */
@@ -251,3 +252,5 @@
return _URC_NO_REASON;
}
#endif /* defined (__SH5__) */
+
+#endif /* defined inhibit_libc */
+4 -4
View File
@@ -6,7 +6,7 @@ Index: gcc-4.0.2/gcc/c-incpath.c
p->construct = 0; p->construct = 0;
p->user_supplied_p = user_supplied_p; p->user_supplied_p = user_supplied_p;
+#ifdef CROSS_COMPILE +#ifdef CROSS_DIRECTORY_STRUCTURE
+ /* A common error when cross compiling is including + /* A common error when cross compiling is including
+ host headers. This code below will try to fail fast + host headers. This code below will try to fail fast
+ for cross compiling. Currently we consider /usr/include, + for cross compiling. Currently we consider /usr/include,
@@ -14,13 +14,13 @@ Index: gcc-4.0.2/gcc/c-incpath.c
+ { + {
+ /* printf("Adding Path: %s\n", p->name ); */ + /* printf("Adding Path: %s\n", p->name ); */
+ if( strstr(p->name, "/usr/include" ) == p->name ) { + if( strstr(p->name, "/usr/include" ) == p->name ) {
+ fprintf(stderr, _("BUILD ISOLATION FAILURE: /usr/include in INCLUDEPATH: %s\n Please fix the flags passed to the compiler to use the correct prefix.\n"), p->name); + fprintf(stderr, _("CROSS COMPILE Badness: /usr/include in INCLUDEPATH: %s\n"), p->name);
+ abort(); + abort();
+ } else if( strstr(p->name, "/sw/include") == p->name ) { + } else if( strstr(p->name, "/sw/include") == p->name ) {
+ fprintf(stderr, _("BUILD ISOLATION FAILURE: /sw/include in INCLUDEPATH: %s\n Please fix the flags passed to the compiler to use the correct prefix.\n"), p->name); + fprintf(stderr, _("CROSS COMPILE Badness: /sw/include in INCLUDEPATH: %s\n"), p->name);
+ abort(); + abort();
+ } else if( strstr(p->name, "/opt/include") == p->name ) { + } else if( strstr(p->name, "/opt/include") == p->name ) {
+ fprintf(stderr, _("BUILD ISOLATION FAILURE: /opt/include in INCLUDEPATH: %s\n Please fix the flags passed to the compiler to use the correct prefix.\n"), p->name); + fprintf(stderr, _("CROSS COMPILE Badness: /opt/include in INCLUDEPATH: %s\n"), p->name);
+ abort(); + abort();
+ } + }
+ } + }
+18 -6
View File
@@ -2,15 +2,27 @@ upstream: n/a
comment: Use the preprocessor we have just compiled instead the one of comment: Use the preprocessor we have just compiled instead the one of
the system. There might be incompabilities between us and them. the system. There might be incompabilities between us and them.
Index: gcc-4.1.1/Makefile.in Index: gcc-4.3.1/Makefile.in
=================================================================== ===================================================================
--- gcc-4.1.1.orig/Makefile.in 2006-08-06 13:32:44.000000000 +0200 --- gcc-4.3.1.orig/Makefile.in 2008-08-19 01:09:56.000000000 -0700
+++ gcc-4.1.1/Makefile.in 2006-08-06 13:32:46.000000000 +0200 +++ gcc-4.3.1/Makefile.in 2008-08-19 01:13:27.000000000 -0700
@@ -194,6 +194,7 @@ @@ -204,6 +204,7 @@
AR="$(AR_FOR_TARGET)"; export AR; \
AS="$(COMPILER_AS_FOR_TARGET)"; export AS; \ AS="$(COMPILER_AS_FOR_TARGET)"; export AS; \
CC="$(CC_FOR_TARGET)"; export CC; \ CC="$(CC_FOR_TARGET)"; export CC; \
CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+ CPP="$(CC_FOR_TARGET) -E"; export CPP; \ + CPP="$(CC_FOR_TARGET) -E"; export CPP; \
CFLAGS="$(CFLAGS_FOR_TARGET) $(SYSROOT_CFLAGS_FOR_TARGET) $(DEBUG_PREFIX_CFLAGS_FOR_TARGET)"; export CFLAGS; \
CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \
Index: gcc-4.3.1/Makefile.tpl
===================================================================
--- gcc-4.3.1.orig/Makefile.tpl 2008-08-21 00:07:58.000000000 -0700
+++ gcc-4.3.1/Makefile.tpl 2008-08-21 00:09:52.000000000 -0700
@@ -223,6 +223,7 @@
AR="$(AR_FOR_TARGET)"; export AR; \
AS="$(COMPILER_AS_FOR_TARGET)"; export AS; \
CC="$(CC_FOR_TARGET)"; export CC; \
+ CPP="$(CC_FOR_TARGET) -E"; export CPP; \
CFLAGS="$(CFLAGS_FOR_TARGET) $(SYSROOT_CFLAGS_FOR_TARGET) $(DEBUG_PREFIX_CFLAGS_FOR_TARGET)"; export CFLAGS; \
CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \ CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \
CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \