diff -ruN rpmbuild-orig/SOURCES/gcc44-deb621083-arm-triplet-backport.patch rpmbuild/SOURCES/gcc44-deb621083-arm-triplet-backport.patch
--- rpmbuild-orig/SOURCES/gcc44-deb621083-arm-triplet-backport.patch	1970-01-01 01:00:00.000000000 +0100
+++ rpmbuild/SOURCES/gcc44-deb621083-arm-triplet-backport.patch	2014-08-24 22:03:33.391139220 +0200
@@ -0,0 +1,108 @@
+# DP: add support for arm-linux-*eabi* triplets; useful for armhf
+
+Index: gcc-4.5-4.5.2/src/configure.ac
+===================================================================
+--- gcc-4.5-4.5.2.orig/src/configure.ac	2011-03-18 19:10:48.804622758 +0000
++++ gcc-4.5-4.5.2/src/configure.ac	2011-03-18 19:11:18.324622793 +0000
+@@ -592,7 +592,7 @@
+     noconfigdirs="$noconfigdirs target-libffi target-qthreads"
+     libgloss_dir=arm
+     ;;
+-  arm*-*-linux-gnueabi)
++  arm*-*-linux-*eabi*)
+     noconfigdirs="$noconfigdirs target-qthreads"
+     case ${with_newlib} in
+       no) noconfigdirs="$noconfigdirs target-newlib target-libgloss"
+Index: gcc-4.5-4.5.2/src/gcc/ada/gcc-interface/Makefile.in
+===================================================================
+--- gcc-4.5-4.5.2.orig/src/gcc/config.gcc	2011-03-18 19:12:05.128622749 +0000
++++ gcc-4.5-4.5.2/src/gcc/config.gcc	2011-03-18 19:12:52.960622752 +0000
+@@ -736,7 +736,7 @@
+ 	esac
+ 	tmake_file="${tmake_file} t-linux arm/t-arm"
+ 	case ${target} in
+-	arm*-*-linux-*eabi)
++	arm*-*-linux-*eabi*)
+ 	    tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h"
+ 	    tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi t-slibgcc-libgcc"
+   	    # The BPABI long long divmod functions return a 128-bit value in
+@@ -757,7 +757,7 @@
+ 	tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/uclinux-elf.h"
+ 	tmake_file="arm/t-arm arm/t-arm-elf"
+ 	case ${target} in
+-	arm*-*-uclinux*eabi)
++	arm*-*-uclinux*eabi*)
+ 	    tm_file="$tm_file arm/bpabi.h arm/uclinux-eabi.h"
+ 	    tmake_file="$tmake_file arm/t-bpabi"
+   	    # The BPABI long long divmod functions return a 128-bit value in
+Index: gcc-4.5-4.5.2/src/gcc/testsuite/lib/target-supports.exp
+===================================================================
+--- gcc-4.5-4.5.2.orig/src/gcc/testsuite/lib/target-supports.exp	2011-03-18 19:13:48.604622749 +0000
++++ gcc-4.5-4.5.2/src/gcc/testsuite/lib/target-supports.exp	2011-03-18 19:14:24.132622629 +0000
+@@ -2593,7 +2593,7 @@
+ 	     || [istarget i?86-*-*]
+ 	     || [istarget x86_64-*-*]
+ 	     || [istarget alpha*-*-*] 
+-	     || [istarget arm*-*-linux-gnueabi] 
++	     || [istarget arm*-*-linux-*eabi*] 
+ 	     || [istarget s390*-*-*] 
+ 	     || [istarget powerpc*-*-*]
+ 	     || [istarget sparc64-*-*]
+@@ -2622,7 +2622,7 @@
+ 	     || [istarget i?86-*-*]
+ 	     || [istarget x86_64-*-*]
+ 	     || [istarget alpha*-*-*] 
+-	     || [istarget arm*-*-linux-gnueabi] 
++	     || [istarget arm*-*-linux-*eabi*] 
+ 	     || [istarget s390*-*-*] 
+ 	     || [istarget powerpc*-*-*]
+ 	     || [istarget sparc64-*-*]
+Index: gcc-4.5-4.5.2/src/libjava/configure.ac
+===================================================================
+--- gcc-4.5-4.5.2.orig/src/libjava/configure.ac	2011-03-18 19:14:37.464622750 +0000
++++ gcc-4.5-4.5.2/src/libjava/configure.ac	2011-03-18 19:15:00.780622755 +0000
+@@ -920,7 +920,7 @@
+     # on Darwin -single_module speeds up loading of the dynamic libraries.
+     extra_ldflags_libjava=-Wl,-single_module
+     ;;
+-arm*linux*eabi)
++arm*-*-linux-*eabi*)
+     # Some of the ARM unwinder code is actually in libstdc++.  We
+     # could in principle replicate it in libgcj, but it's better to
+     # have a dependency on libstdc++.
+Index: gcc-4.5-4.5.2/src/libstdc++-v3/configure.host
+===================================================================
+--- gcc-4.5-4.5.2.orig/src/libstdc++-v3/configure.host	2011-03-18 19:15:16.288622758 +0000
++++ gcc-4.5-4.5.2/src/libstdc++-v3/configure.host	2011-03-18 19:15:30.932622217 +0000
+@@ -325,7 +325,7 @@
+         fi
+     esac
+     case "${host}" in
+-      arm*-*-linux-*eabi)
++      arm*-*-linux-*eabi*)
+ 	port_specific_symbol_files="\$(srcdir)/../config/os/gnu-linux/arm-eabi-extra.ver"
+ 	;;
+     esac
+Index: gcc-4.5-4.5.2/src/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc
+===================================================================
+--- gcc-4.5-4.5.2.orig/src/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc	2011-03-18 19:15:43.204622783 +0000
++++ gcc-4.5-4.5.2/src/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc	2011-03-18 19:16:06.324622740 +0000
+@@ -1,5 +1,5 @@
+ // { dg-options "-std=gnu++0x -funsigned-char -fshort-enums" }
+-// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } }
++// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux-*eabi* } }
+ 
+ // 2007-05-03  Benjamin Kosnik  <bkoz@redhat.com>
+ //
+Index: gcc-4.5-4.5.2/src/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc
+===================================================================
+--- gcc-4.5-4.5.2.orig/src/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc	2011-03-18 19:16:31.144622761 +0000
++++ gcc-4.5-4.5.2/src/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc	2011-03-18 19:16:41.420622950 +0000
+@@ -1,5 +1,5 @@
+ // { dg-options "-std=gnu++0x -funsigned-char -fshort-enums" }
+-// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } }
++// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux-*eabi* } }
+ 
+ // 2007-05-03  Benjamin Kosnik  <bkoz@redhat.com>
+ //
+
diff -ruN rpmbuild-orig/SPECS/gcc.spec rpmbuild/SPECS/gcc.spec
--- rpmbuild-orig/SPECS/gcc.spec	2013-07-19 05:24:44.000000000 +0200
+++ rpmbuild/SPECS/gcc.spec	2014-08-24 22:12:09.888916204 +0200
@@ -40,7 +40,7 @@
 Name: gcc
 %global gcc_version 4.4.4
 Version: 4.4.7
-Release: %{gcc_release}%{?dist}
+Release: %{gcc_release}%{?dist}.0
 %if "%{version}" != "%{gcc_version}"
 %define gcc_provides %{gcc_version}-15%{?dist}
 %endif
@@ -199,6 +199,9 @@
 Patch1003: fastjar-CVE-2010-0831.patch
 Patch1004: fastjar-man.patch
 
+Patch10001: gcc44-deb621083-arm-triplet-backport.patch
+#Patch10003: gcc44-libgcc-fno-stack-protector.patch
+
 # On ARM EABI systems, we do want -gnueabi to be part of the
 # target triple.
 %ifnarch %{arm}
@@ -631,6 +634,9 @@
 %patch1003 -p0 -b .fastjar-CVE-2010-0831~
 %patch1004 -p0 -b .fastjar-man~
 
+%patch10001 -p2 -b .gcc44-deb621083-arm-triplet-backport~
+#%patch10003 -p1 -b .gcc44-libgcc-fno-stack-protector~
+
 %if %{bootstrap_java}
 tar xjf %{SOURCE10}
 %endif
@@ -1051,6 +1057,13 @@
 OUTPUT_FORMAT(elf32-powerpc)
 GROUP ( /lib/libgcc_s.so.1 libgcc.a )' > $FULLPATH/32/libgcc_s.so
 %endif
+%ifarch %{arm}
+rm -f $FULLPATH/libgcc_s.so
+echo '/* GNU ld script
+   Use the shared library, but some functions are only in
+   the static library.  */
+GROUP ( /lib/libgcc_s.so.1 libgcc.a )' > $FULLPATH/libgcc_s.so
+%endif
 
 mv -f %{buildroot}%{_prefix}/%{_lib}/libgomp.spec $FULLPATH/
 
