summaryrefslogtreecommitdiff
path: root/toolchain/gcc/4.4.5
diff options
context:
space:
mode:
authorPeter Korsgaard <jacmet@sunsite.dk>2011-04-19 14:11:35 +0200
committerPeter Korsgaard <jacmet@sunsite.dk>2011-04-19 14:11:35 +0200
commit2af9541e2cdc4eaafb9a0766b9dd5b1012ef91f4 (patch)
tree872d13054b2bf2658a46bce659092b246f4d33db /toolchain/gcc/4.4.5
parent7fa9c251956577058142b001464bbc0ae67a763a (diff)
toolchain/gcc: bump 4.4.x version
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Diffstat (limited to 'toolchain/gcc/4.4.5')
-rw-r--r--toolchain/gcc/4.4.5/100-uclibc-conf.patch33
-rw-r--r--toolchain/gcc/4.4.5/301-missing-execinfo_h.patch11
-rw-r--r--toolchain/gcc/4.4.5/302-c99-snprintf.patch13
-rw-r--r--toolchain/gcc/4.4.5/305-libmudflap-susv3-legacy.patch49
-rw-r--r--toolchain/gcc/4.4.5/810-arm-softfloat-libgcc.patch38
-rw-r--r--toolchain/gcc/4.4.5/950-sparc-leon.patch239
-rw-r--r--toolchain/gcc/4.4.5/powerpc-link-with-math-lib.patch.conditional137
7 files changed, 0 insertions, 520 deletions
diff --git a/toolchain/gcc/4.4.5/100-uclibc-conf.patch b/toolchain/gcc/4.4.5/100-uclibc-conf.patch
deleted file mode 100644
index cca8c8229..000000000
--- a/toolchain/gcc/4.4.5/100-uclibc-conf.patch
+++ /dev/null
@@ -1,33 +0,0 @@
---- gcc/gcc/config/--- gcc/contrib/regression/objs-gcc.sh
-+++ gcc/contrib/regression/objs-gcc.sh
-@@ -105,6 +105,10 @@
- then
- make all-gdb all-dejagnu all-ld || exit 1
- make install-gdb install-dejagnu install-ld || exit 1
-+elif [ $H_REAL_TARGET = $H_REAL_HOST -a $H_REAL_TARGET = i686-pc-linux-uclibc ]
-+ then
-+ make all-gdb all-dejagnu all-ld || exit 1
-+ make install-gdb install-dejagnu install-ld || exit 1
- elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then
- make bootstrap || exit 1
- make install || exit 1
---- gcc/libjava/classpath/ltconfig
-+++ gcc/libjava/classpath/ltconfig
-@@ -603,7 +603,7 @@
-
- # 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
diff --git a/toolchain/gcc/4.4.5/301-missing-execinfo_h.patch b/toolchain/gcc/4.4.5/301-missing-execinfo_h.patch
deleted file mode 100644
index 0e2092f3f..000000000
--- a/toolchain/gcc/4.4.5/301-missing-execinfo_h.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- gcc-4.0.0/boehm-gc/include/gc.h-orig 2005-04-28 22:28:57.000000000 -0500
-+++ gcc-4.0.0/boehm-gc/include/gc.h 2005-04-28 22:30:38.000000000 -0500
-@@ -500,7 +500,7 @@
- #ifdef __linux__
- # include <features.h>
- # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \
-- && !defined(__ia64__)
-+ && !defined(__ia64__) && !defined(__UCLIBC__)
- # ifndef GC_HAVE_BUILTIN_BACKTRACE
- # define GC_HAVE_BUILTIN_BACKTRACE
- # endif
diff --git a/toolchain/gcc/4.4.5/302-c99-snprintf.patch b/toolchain/gcc/4.4.5/302-c99-snprintf.patch
deleted file mode 100644
index ba51a0e1d..000000000
--- a/toolchain/gcc/4.4.5/302-c99-snprintf.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: gcc-4.3.0/libstdc++-v3/include/c_global/cstdio
-===================================================================
---- gcc-4.3.0/libstdc++-v3/include/c_global/cstdio (revision 129202)
-+++ gcc-4.3.0/libstdc++-v3/include/c_global/cstdio (working copy)
-@@ -144,7 +144,7 @@
-
- _GLIBCXX_END_NAMESPACE
-
--#if _GLIBCXX_USE_C99
-+#if _GLIBCXX_USE_C99 || defined __UCLIBC__
-
- #undef snprintf
- #undef vfscanf
diff --git a/toolchain/gcc/4.4.5/305-libmudflap-susv3-legacy.patch b/toolchain/gcc/4.4.5/305-libmudflap-susv3-legacy.patch
deleted file mode 100644
index 374b1f865..000000000
--- a/toolchain/gcc/4.4.5/305-libmudflap-susv3-legacy.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-Index: gcc-4.2/libmudflap/mf-hooks2.c
-===================================================================
---- gcc-4.2/libmudflap/mf-hooks2.c (revision 119834)
-+++ gcc-4.2/libmudflap/mf-hooks2.c (working copy)
-@@ -427,7 +427,7 @@
- {
- TRACE ("%s\n", __PRETTY_FUNCTION__);
- MF_VALIDATE_EXTENT(s, n, __MF_CHECK_WRITE, "bzero region");
-- bzero (s, n);
-+ memset (s, 0, n);
- }
-
-
-@@ -437,7 +437,7 @@
- TRACE ("%s\n", __PRETTY_FUNCTION__);
- MF_VALIDATE_EXTENT(src, n, __MF_CHECK_READ, "bcopy src");
- MF_VALIDATE_EXTENT(dest, n, __MF_CHECK_WRITE, "bcopy dest");
-- bcopy (src, dest, n);
-+ memmove (dest, src, n);
- }
-
-
-@@ -447,7 +447,7 @@
- TRACE ("%s\n", __PRETTY_FUNCTION__);
- MF_VALIDATE_EXTENT(s1, n, __MF_CHECK_READ, "bcmp 1st arg");
- MF_VALIDATE_EXTENT(s2, n, __MF_CHECK_READ, "bcmp 2nd arg");
-- return bcmp (s1, s2, n);
-+ return n == 0 ? 0 : memcmp (s1, s2, n);
- }
-
-
-@@ -456,7 +456,7 @@
- size_t n = strlen (s);
- TRACE ("%s\n", __PRETTY_FUNCTION__);
- MF_VALIDATE_EXTENT(s, CLAMPADD(n, 1), __MF_CHECK_READ, "index region");
-- return index (s, c);
-+ return strchr (s, c);
- }
-
-
-@@ -465,7 +465,7 @@
- size_t n = strlen (s);
- TRACE ("%s\n", __PRETTY_FUNCTION__);
- MF_VALIDATE_EXTENT(s, CLAMPADD(n, 1), __MF_CHECK_READ, "rindex region");
-- return rindex (s, c);
-+ return strrchr (s, c);
- }
-
- /* XXX: stpcpy, memccpy */
diff --git a/toolchain/gcc/4.4.5/810-arm-softfloat-libgcc.patch b/toolchain/gcc/4.4.5/810-arm-softfloat-libgcc.patch
deleted file mode 100644
index e6a30a3f0..000000000
--- a/toolchain/gcc/4.4.5/810-arm-softfloat-libgcc.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-[PATCH] add the correct symbols to libgcc for uclibc arm softfloat
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- gcc/config/arm/linux-elf.h | 2 +-
- gcc/config/arm/t-linux | 6 +++++-
- 2 files changed, 6 insertions(+), 2 deletions(-)
-
-Index: gcc-4.4.0/gcc/config/arm/t-linux
-===================================================================
---- gcc-4.4.0.orig/gcc/config/arm/t-linux
-+++ gcc-4.4.0/gcc/config/arm/t-linux
-@@ -4,7 +4,11 @@
-
- LIB1ASMSRC = arm/lib1funcs.asm
- LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx _clzsi2 _clzdi2 \
-- _arm_addsubdf3 _arm_addsubsf3
-+ _arm_addsubdf3 _arm_addsubsf3 \
-+ _arm_negdf2 _arm_muldivdf3 _arm_cmpdf2 _arm_unorddf2 \
-+ _arm_fixdfsi _arm_fixunsdfsi _arm_truncdfsf2 \
-+ _arm_negsf2 _arm_muldivsf3 _arm_cmpsf2 _arm_unordsf2 \
-+ _arm_fixsfsi _arm_fixunssfsi
-
- # MULTILIB_OPTIONS = mhard-float/msoft-float
- # MULTILIB_DIRNAMES = hard-float soft-float
-Index: gcc-4.4.0/gcc/config/arm/linux-elf.h
-===================================================================
---- gcc-4.4.0.orig/gcc/config/arm/linux-elf.h
-+++ gcc-4.4.0/gcc/config/arm/linux-elf.h
-@@ -60,7 +60,7 @@
- %{shared:-lc} \
- %{!shared:%{profile:-lc_p}%{!profile:-lc}}"
-
--#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
-+#define LIBGCC_SPEC "-lgcc"
-
- #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
-
diff --git a/toolchain/gcc/4.4.5/950-sparc-leon.patch b/toolchain/gcc/4.4.5/950-sparc-leon.patch
deleted file mode 100644
index ad18607c9..000000000
--- a/toolchain/gcc/4.4.5/950-sparc-leon.patch
+++ /dev/null
@@ -1,239 +0,0 @@
-diff -Naurb gcc-4.4.2.ori/gcc/config/sparc/leon.md gcc-4.4.2/gcc/config/sparc/leon.md
---- gcc-4.4.2.ori/gcc/config/sparc/leon.md 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.4.2/gcc/config/sparc/leon.md 2010-10-19 11:56:58.000000000 +0200
-@@ -0,0 +1,56 @@
-+;; Scheduling description for Leon.
-+;; Copyright (C) 2010 Free Software Foundation, Inc.
-+;;
-+;; This file is part of GCC.
-+;;
-+;; GCC 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 3, or (at your option)
-+;; any later version.
-+;;
-+;; GCC 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 GCC; see the file COPYING3. If not see
-+;; <http://www.gnu.org/licenses/>.
-+
-+
-+(define_automaton "leon")
-+
-+(define_cpu_unit "leon_memory, leon_fpalu" "leon")
-+(define_cpu_unit "leon_fpmds" "leon")
-+(define_cpu_unit "write_buf" "leon")
-+
-+(define_insn_reservation "leon_load" 1
-+ (and (eq_attr "cpu" "leon")
-+ (eq_attr "type" "load,sload,fpload"))
-+ "leon_memory")
-+
-+(define_insn_reservation "leon_store" 1
-+ (and (eq_attr "cpu" "leon")
-+ (eq_attr "type" "store,fpstore"))
-+ "leon_memory+write_buf")
-+
-+(define_insn_reservation "leon_fp_alu" 1
-+ (and (eq_attr "cpu" "leon")
-+ (eq_attr "type" "fp,fpmove"))
-+ "leon_fpalu, nothing")
-+
-+(define_insn_reservation "leon_fp_mult" 1
-+ (and (eq_attr "cpu" "leon")
-+ (eq_attr "type" "fpmul"))
-+ "leon_fpmds, nothing")
-+
-+(define_insn_reservation "leon_fp_div" 16
-+ (and (eq_attr "cpu" "leon")
-+ (eq_attr "type" "fpdivs,fpdivd"))
-+ "leon_fpmds, nothing*15")
-+
-+(define_insn_reservation "leon_fp_sqrt" 23
-+ (and (eq_attr "cpu" "leon")
-+ (eq_attr "type" "fpsqrts,fpsqrtd"))
-+ "leon_fpmds, nothing*21")
-+
-diff -Naurb gcc-4.4.2.ori/gcc/config/sparc/sparc.c gcc-4.4.2/gcc/config/sparc/sparc.c
---- gcc-4.4.2.ori/gcc/config/sparc/sparc.c 2010-10-19 11:55:17.000000000 +0200
-+++ gcc-4.4.2/gcc/config/sparc/sparc.c 2010-10-19 11:56:58.000000000 +0200
-@@ -246,6 +246,30 @@
- 0, /* shift penalty */
- };
-
-+static const
-+struct processor_costs leon_costs = {
-+ COSTS_N_INSNS (1), /* int load */
-+ COSTS_N_INSNS (1), /* int signed load */
-+ COSTS_N_INSNS (1), /* int zeroed load */
-+ COSTS_N_INSNS (1), /* float load */
-+ COSTS_N_INSNS (1), /* fmov, fneg, fabs */
-+ COSTS_N_INSNS (1), /* fadd, fsub */
-+ COSTS_N_INSNS (1), /* fcmp */
-+ COSTS_N_INSNS (1), /* fmov, fmovr */
-+ COSTS_N_INSNS (1), /* fmul */
-+ COSTS_N_INSNS (15), /* fdivs */
-+ COSTS_N_INSNS (15), /* fdivd */
-+ COSTS_N_INSNS (23), /* fsqrts */
-+ COSTS_N_INSNS (23), /* fsqrtd */
-+ COSTS_N_INSNS (5), /* imul */
-+ COSTS_N_INSNS (5), /* imulX */
-+ 0, /* imul bit factor */
-+ COSTS_N_INSNS (5), /* idiv */
-+ COSTS_N_INSNS (5), /* idivX */
-+ COSTS_N_INSNS (1), /* movcc/movr */
-+ 0, /* shift penalty */
-+};
-+
- const struct processor_costs *sparc_costs = &cypress_costs;
-
- #ifdef HAVE_AS_RELAX_OPTION
-@@ -651,6 +675,10 @@
- { TARGET_CPU_ultrasparc3, "ultrasparc3" },
- { TARGET_CPU_niagara, "niagara" },
- { TARGET_CPU_niagara2, "niagara2" },
-+ { TARGET_CPU_sparchfleon, "sparchfleon" },
-+ { TARGET_CPU_sparchfleonv8, "sparchfleonv8" },
-+ { TARGET_CPU_sparcsfleon, "sparcsfleon" },
-+ { TARGET_CPU_sparcsfleonv8, "sparcsfleonv8" },
- { 0, 0 }
- };
- const struct cpu_default *def;
-@@ -689,6 +717,11 @@
- /* UltraSPARC T1 */
- { "niagara", PROCESSOR_NIAGARA, MASK_ISA, MASK_V9|MASK_DEPRECATED_V8_INSNS},
- { "niagara2", PROCESSOR_NIAGARA, MASK_ISA, MASK_V9},
-+ /* SPARC-LEON */
-+ { "sparchfleon", PROCESSOR_LEON, MASK_ISA, MASK_FPU },
-+ { "sparchfleonv8", PROCESSOR_LEON, MASK_ISA & ~(MASK_V8), MASK_V8|MASK_FPU },
-+ { "sparcsfleon", PROCESSOR_LEON, MASK_ISA | MASK_FPU, 0 },
-+ { "sparcsfleonv8", PROCESSOR_LEON, (MASK_ISA | MASK_FPU) & ~(MASK_V8), MASK_V8 },
- { 0, 0, 0, 0 }
- };
- const struct cpu_table *cpu;
-@@ -855,6 +888,9 @@
- case PROCESSOR_NIAGARA2:
- sparc_costs = &niagara2_costs;
- break;
-+ case PROCESSOR_LEON:
-+ sparc_costs = &leon_costs;
-+ break;
- };
-
- #ifdef TARGET_DEFAULT_LONG_DOUBLE_128
-diff -Naurb gcc-4.4.2.ori/gcc/config/sparc/sparc.h gcc-4.4.2/gcc/config/sparc/sparc.h
---- gcc-4.4.2.ori/gcc/config/sparc/sparc.h 2010-10-19 11:55:17.000000000 +0200
-+++ gcc-4.4.2/gcc/config/sparc/sparc.h 2010-10-19 11:56:58.000000000 +0200
-@@ -243,6 +243,10 @@
- #define TARGET_CPU_ultrasparc3 9
- #define TARGET_CPU_niagara 10
- #define TARGET_CPU_niagara2 11
-+#define TARGET_CPU_sparchfleon 12
-+#define TARGET_CPU_sparchfleonv8 13
-+#define TARGET_CPU_sparcsfleon 14
-+#define TARGET_CPU_sparcsfleonv8 15
-
- #if TARGET_CPU_DEFAULT == TARGET_CPU_v9 \
- || TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc \
-@@ -299,6 +303,26 @@
- #define ASM_CPU32_DEFAULT_SPEC "-Asparclite"
- #endif
-
-+#if TARGET_CPU_DEFAULT == TARGET_CPU_sparchfleon
-+#define CPP_CPU32_DEFAULT_SPEC "-Dsparcleon"
-+#define ASM_CPU32_DEFAULT_SPEC ""
-+#endif
-+
-+#if TARGET_CPU_DEFAULT == TARGET_CPU_sparcsfleon
-+#define CPP_CPU32_DEFAULT_SPEC "-Dsparcleon -D_SOFT_FLOAT"
-+#define ASM_CPU32_DEFAULT_SPEC ""
-+#endif
-+
-+#if TARGET_CPU_DEFAULT == TARGET_CPU_sparchfleonv8
-+#define CPP_CPU32_DEFAULT_SPEC "-Dsparcleon -D__sparc_v8__ "
-+#define ASM_CPU32_DEFAULT_SPEC ""
-+#endif
-+
-+#if TARGET_CPU_DEFAULT == TARGET_CPU_sparcsfleonv8
-+#define CPP_CPU32_DEFAULT_SPEC "-Dsparcleon -D__sparc_v8__ -D_SOFT_FLOAT"
-+#define ASM_CPU32_DEFAULT_SPEC ""
-+#endif
-+
- #if TARGET_CPU_DEFAULT == TARGET_CPU_supersparc
- #define CPP_CPU32_DEFAULT_SPEC "-D__supersparc__ -D__sparc_v8__"
- #define ASM_CPU32_DEFAULT_SPEC ""
-@@ -369,6 +393,10 @@
- %{mcpu=ultrasparc3:-D__sparc_v9__} \
- %{mcpu=niagara:-D__sparc_v9__} \
- %{mcpu=niagara2:-D__sparc_v9__} \
-+%{mcpu=sparchfleon:-Dsparcleon} \
-+%{mcpu=sparchfleonv8:-Dsparcleon -D__sparc_v8__} \
-+%{mcpu=sparcsfleon:-Dsparcleon -D_SOFT_FLOAT} \
-+%{mcpu=sparcsfleonv8:-Dsparcleon -D_SOFT_FLOAT -D__sparc_v8__} \
- %{!mcpu*:%{!mcypress:%{!msparclite:%{!mf930:%{!mf934:%{!mv8:%{!msupersparc:%(cpp_cpu_default)}}}}}}} \
- "
- #define CPP_ARCH32_SPEC ""
-@@ -533,6 +561,7 @@
- PROCESSOR_V7,
- PROCESSOR_CYPRESS,
- PROCESSOR_V8,
-+ PROCESSOR_LEON,
- PROCESSOR_SUPERSPARC,
- PROCESSOR_SPARCLITE,
- PROCESSOR_F930,
-diff -Naurb gcc-4.4.2.ori/gcc/config/sparc/sparc.md gcc-4.4.2/gcc/config/sparc/sparc.md
---- gcc-4.4.2.ori/gcc/config/sparc/sparc.md 2010-10-19 11:55:17.000000000 +0200
-+++ gcc-4.4.2/gcc/config/sparc/sparc.md 2010-10-19 11:56:58.000000000 +0200
-@@ -89,6 +89,7 @@
- "v7,
- cypress,
- v8,
-+ leon,
- supersparc,
- sparclite,f930,f934,
- hypersparc,sparclite86x,
-@@ -320,6 +321,7 @@
- (include "ultra3.md")
- (include "niagara.md")
- (include "niagara2.md")
-+(include "leon.md")
-
-
- ;; Operand and operator predicates and constraints
-diff -Naurb gcc-4.4.2.ori/gcc/config/sparc/t-leon gcc-4.4.2/gcc/config/sparc/t-leon
---- gcc-4.4.2.ori/gcc/config/sparc/t-leon 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.4.2/gcc/config/sparc/t-leon 2010-10-19 11:56:58.000000000 +0200
-@@ -0,0 +1,16 @@
-+# configuration file for LEON cpu
-+
-+LIB1ASMSRC = sparc/lb1spc.asm
-+LIB1ASMFUNCS = _mulsi3 _divsi3 _modsi3
-+
-+# We want fine grained libraries, so use the new code to build the
-+# floating point emulation libraries.
-+FPBIT = fp-bit.c
-+DPBIT = dp-bit.c
-+
-+dp-bit.c: $(srcdir)/config/fp-bit.c
-+ cat $(srcdir)/config/fp-bit.c > dp-bit.c
-+
-+fp-bit.c: $(srcdir)/config/fp-bit.c
-+ echo '#define FLOAT' > fp-bit.c
-+ cat $(srcdir)/config/fp-bit.c >> fp-bit.c
-diff -Naurb gcc-4.4.2.ori/gcc/config.gcc gcc-4.4.2/gcc/config.gcc
---- gcc-4.4.2.ori/gcc/config.gcc 2010-10-19 11:55:17.000000000 +0200
-+++ gcc-4.4.2/gcc/config.gcc 2010-10-19 11:56:11.000000000 +0200
-@@ -2978,6 +2978,9 @@
- | v9 | ultrasparc | ultrasparc3 | niagara | niagara2)
- # OK
- ;;
-+ sparchfleon | sparcsfleon | sparchfleonv8 | sparcsfleonv8 | leon)
-+ tmake_file="${tmake_file} sparc/t-leon"
-+ ;;
- *)
- echo "Unknown cpu used in --with-$which=$val" 1>&2
- exit 1
diff --git a/toolchain/gcc/4.4.5/powerpc-link-with-math-lib.patch.conditional b/toolchain/gcc/4.4.5/powerpc-link-with-math-lib.patch.conditional
deleted file mode 100644
index 3fe8757d7..000000000
--- a/toolchain/gcc/4.4.5/powerpc-link-with-math-lib.patch.conditional
+++ /dev/null
@@ -1,137 +0,0 @@
-http://gcc.gnu.org/ml/gcc-patches/2008-10/msg00269.html
-
-On glibc the libc.so carries a copy of the math function copysignl() but
-on uClibc math functions like copysignl() live in libm. Since libgcc_s
-contains unresolved symbols, any attempt to link against libgcc_s
-without explicitely specifying -lm fails, resulting in a broken
-bootstrap of the compiler.
-
-
-diff -rdup gcc-4.4.0.old/gcc/config/t-slibgcc-elf-ver gcc-4.4.0/gcc/config/t-slibgcc-elf-ver
-
-diff -durN gcc-4.4.4.orig/gcc/config/t-slibgcc-elf-ver gcc-4.4.4/gcc/config/t-slibgcc-elf-ver
---- gcc-4.4.4.orig/gcc/config/t-slibgcc-elf-ver 2010-01-04 16:13:08.000000000 +0100
-+++ gcc-4.4.4/gcc/config/t-slibgcc-elf-ver 2010-05-16 19:38:36.000000000 +0200
-@@ -9,7 +9,7 @@
- SHLIB_OBJS = @shlib_objs@
- SHLIB_DIR = @multilib_dir@
- SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual@
--SHLIB_LC = -lc
-+SHLIB_LC = @libgcc_libm@ -lc
- SHLIB_MAKE_SOLINK = $(LN_S) $(SHLIB_SONAME) $(SHLIB_DIR)/$(SHLIB_SOLINK)
- SHLIB_INSTALL_SOLINK = $(LN_S) $(SHLIB_SONAME) \
- $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK)
-diff -durN gcc-4.4.4.orig/libgcc/Makefile.in gcc-4.4.4/libgcc/Makefile.in
---- gcc-4.4.4.orig/libgcc/Makefile.in 2009-04-10 01:23:07.000000000 +0200
-+++ gcc-4.4.4/libgcc/Makefile.in 2010-05-16 19:38:36.000000000 +0200
-@@ -39,6 +39,7 @@
- decimal_float = @decimal_float@
- enable_decimal_float = @enable_decimal_float@
- fixed_point = @fixed_point@
-+LIBGCC_LIBM = @LIBGCC_LIBM@
-
- host_noncanonical = @host_noncanonical@
-
-@@ -787,9 +788,10 @@
- @multilib_dir@,$(MULTIDIR),$(subst \
- @shlib_objs@,$(objects),$(subst \
- @shlib_base_name@,libgcc_s,$(subst \
-+ @libgcc_libm@,$(LIBGCC_LIBM),$(subst \
- @shlib_map_file@,$(mapfile),$(subst \
- @shlib_slibdir_qual@,$(MULTIOSSUBDIR),$(subst \
-- @shlib_slibdir@,$(shlib_slibdir),$(SHLIB_LINK))))))))
-+ @shlib_slibdir@,$(shlib_slibdir),$(SHLIB_LINK)))))))))
-
- libunwind$(SHLIB_EXT): $(libunwind-s-objects) $(extra-parts)
- # @multilib_flags@ is still needed because this may use
-diff -durN gcc-4.4.4.orig/libgcc/configure gcc-4.4.4/libgcc/configure
---- gcc-4.4.4.orig/libgcc/configure 2008-11-20 18:13:01.000000000 +0100
-+++ gcc-4.4.4/libgcc/configure 2010-05-16 19:38:36.000000000 +0200
-@@ -272,7 +272,7 @@
- PACKAGE_BUGREPORT=''
-
- ac_unique_file="static-object.mk"
--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 libgcc_topdir enable_shared slibdir INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA AWK build build_cpu build_vendor build_os host host_cpu host_vendor host_os host_noncanonical build_libsubdir build_subdir host_subdir target_subdir AR ac_ct_AR LIPO ac_ct_LIPO NM ac_ct_NM RANLIB ac_ct_RANLIB STRIP ac_ct_STRIP LN_S CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP decimal_float enable_decimal_float fixed_point vis_hide set_have_cc_tls tmake_file extra_parts asm_hidden_op 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 libgcc_topdir enable_shared slibdir INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA AWK build build_cpu build_vendor build_os host host_cpu host_vendor host_os host_noncanonical build_libsubdir build_subdir host_subdir target_subdir AR ac_ct_AR LIPO ac_ct_LIPO NM ac_ct_NM RANLIB ac_ct_RANLIB STRIP ac_ct_STRIP LN_S CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP decimal_float enable_decimal_float fixed_point vis_hide set_have_cc_tls LIBGCC_LIBM tmake_file extra_parts asm_hidden_op LIBOBJS LTLIBOBJS'
- ac_subst_files=''
- ac_pwd=`pwd`
-
-@@ -3547,6 +3547,39 @@
- fi
-
-
-+# On powerpc libgcc_s references copysignl which is a libm function but
-+# glibc apparently also provides it via libc as opposed to uClibc where
-+# it lives in libm.
-+echo "$as_me:$LINENO: checking for library containing copysignl" >&5
-+echo $ECHO_N "checking for library containing copysignl... $ECHO_C" >&6
-+if test "${libgcc_cv_copysignl_lib+set}" = set; then
-+ echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+
-+ echo '#include <features.h>' > conftest.c
-+ echo 'int the_libc = __UCLIBC__ + __powerpc__;' >> conftest.c
-+ libgcc_cv_copysignl_lib="-lc"
-+ if { ac_try='${CC-cc} -S conftest.c -o conftest.s 1>&5'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }
-+ then
-+ libgcc_cv_copysignl_lib="-lm"
-+ fi
-+ rm -f conftest.*
-+
-+fi
-+echo "$as_me:$LINENO: result: $libgcc_cv_copysignl_lib" >&5
-+echo "${ECHO_T}$libgcc_cv_copysignl_lib" >&6
-+
-+case /${libgcc_cv_copysignl_lib}/ in
-+ /-lm/) LIBGCC_LIBM="$LIBGCC_LIBM -lm" ;;
-+ *) LIBGCC_LIBM= ;;
-+esac
-+
-+
- # Conditionalize the makefile for this target machine.
- tmake_file_=
- for f in ${tmake_file}
-@@ -4267,6 +4300,7 @@
- s,@fixed_point@,$fixed_point,;t t
- s,@vis_hide@,$vis_hide,;t t
- s,@set_have_cc_tls@,$set_have_cc_tls,;t t
-+s,@LIBGCC_LIBM@,$LIBGCC_LIBM,;t t
- s,@tmake_file@,$tmake_file,;t t
- s,@extra_parts@,$extra_parts,;t t
- s,@asm_hidden_op@,$asm_hidden_op,;t t
-diff -durN gcc-4.4.4.orig/libgcc/configure.ac gcc-4.4.4/libgcc/configure.ac
---- gcc-4.4.4.orig/libgcc/configure.ac 2008-11-20 18:13:01.000000000 +0100
-+++ gcc-4.4.4/libgcc/configure.ac 2010-05-16 19:38:36.000000000 +0200
-@@ -223,6 +223,27 @@
- fi
- AC_SUBST(set_have_cc_tls)
-
-+# On powerpc libgcc_s references copysignl which is a libm function but
-+# glibc apparently also provides it via libc as opposed to uClibc where
-+# it lives in libm.
-+AC_CACHE_CHECK
-+ libgcc_cv_copysignl_lib,
-+ echo '#include <features.h>' > conftest.c
-+ echo 'int the_libc = __UCLIBC__ + __powerpc__;' >> conftest.c
-+ libgcc_cv_copysignl_lib="-lc"
-+ if AC_TRY_COMMAND(${CC-cc} -S conftest.c -o conftest.s 1>&AS_MESSAGE_LOG_FD)
-+ then
-+ libgcc_cv_copysignl_lib="-lm"
-+ fi
-+ rm -f conftest.*
-+ ])
-+
-+case /${libgcc_cv_copysignl_lib}/ in
-+ /-lm/) LIBGCC_LIBM="$LIBGCC_LIBM -lm" ;;
-+ *) LIBGCC_LIBM= ;;
-+esac
-+AC_SUBST(LIBGCC_LIBM)
-+
- # Conditionalize the makefile for this target machine.
- tmake_file_=
- for f in ${tmake_file}