diff -ur raringorigs/gcc-4.7-4.7.2/debian/patches/cross-fixes.diff raringnew/gcc-4.7-4.7.2/debian/patches/cross-fixes.diff
--- raringorigs/gcc-4.7-4.7.2/debian/patches/cross-fixes.diff	2012-12-12 10:30:37.000000000 +0000
+++ raringnew/gcc-4.7-4.7.2/debian/patches/cross-fixes.diff	2012-12-12 15:47:28.000000000 +0000
@@ -8,25 +8,32 @@
  gcc/unwind-generic.h            |    2 ++
  6 files changed, 14 insertions(+), 1 deletions(-)
 
---- a/src/libgcc/config/alpha/linux-unwind.h
-+++ b/src/libgcc/config/alpha/linux-unwind.h
-@@ -29,6 +29,7 @@ Boston, MA 02110-1301, USA.  */
+Index: gcc/src/libgcc/config/alpha/linux-unwind.h
+===================================================================
+--- gcc.orig/src/libgcc/config/alpha/linux-unwind.h	2012-12-12 15:45:32.000000000 +0000
++++ gcc/src/libgcc/config/alpha/linux-unwind.h	2012-12-12 15:47:24.000000000 +0000
+@@ -26,6 +26,7 @@
  /* Do code reading to identify a signal frame, and set the frame
     state data appropriately.  See unwind-dw2.c for the structs.  */
-
+ 
 +#ifndef inhibit_libc
  #include <signal.h>
  #include <sys/ucontext.h>
-
-@@ -80,3 +81,5 @@ alpha_fallback_frame_state (struct _Unwind_Context *context,
-   fs->retaddr_column = 64;
+ 
+@@ -82,6 +83,8 @@
    return _URC_NO_REASON;
  }
-+
+ 
 +#endif
---- a/src/libgcc/config/ia64/fde-glibc.c
-+++ b/src/libgcc/config/ia64/fde-glibc.c
-@@ -31,6 +31,7 @@
++
+ #define MD_FROB_UPDATE_CONTEXT alpha_frob_update_context
+ 
+ /* Fix up for signal handlers that don't have S flag set.  */
+Index: gcc/src/libgcc/config/ia64/fde-glibc.c
+===================================================================
+--- gcc.orig/src/libgcc/config/ia64/fde-glibc.c	2012-12-12 15:45:32.000000000 +0000
++++ gcc/src/libgcc/config/ia64/fde-glibc.c	2012-12-12 15:45:43.000000000 +0000
+@@ -28,6 +28,7 @@
  #ifndef _GNU_SOURCE
  #define _GNU_SOURCE 1
  #endif
@@ -34,54 +41,60 @@
  #include "config.h"
  #include <stddef.h>
  #include <stdlib.h>
-@@ -162,3 +163,5 @@ _Unwind_FindTableEntry (void *pc, unsigned long *segment_base,
-
+@@ -160,3 +161,5 @@
+ 
    return data.ret;
  }
 +
 +#endif
---- a/src/libgcc/config/ia64/unwind-ia64.c
-+++ b/src/libgcc/config/ia64/unwind-ia64.c
+Index: gcc/src/libgcc/config/ia64/unwind-ia64.c
+===================================================================
+--- gcc.orig/src/libgcc/config/ia64/unwind-ia64.c	2012-12-12 15:45:32.000000000 +0000
++++ gcc/src/libgcc/config/ia64/unwind-ia64.c	2012-12-12 15:45:43.000000000 +0000
 @@ -27,6 +27,7 @@
-    This exception does not however invalidate any other reasons why
-    the executable file might be covered by the GNU General Public License.  */
-
+    see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
+    <http://www.gnu.org/licenses/>.  */
+ 
 +#ifndef inhibit_libc
  #include "tconfig.h"
  #include "tsystem.h"
  #include "coretypes.h"
-@@ -2417,3 +2417,4 @@ alias (_Unwind_SetIP);
+@@ -2469,3 +2470,4 @@
  #endif
-
+ 
  #endif
 +#endif
---- a/src/libgcc/unwind-compat.c
-+++ b/src/libgcc/unwind-compat.c
-@@ -29,6 +29,7 @@
-    02110-1301, USA.  */
-
+Index: gcc/src/libgcc/unwind-compat.c
+===================================================================
+--- gcc.orig/src/libgcc/unwind-compat.c	2012-12-12 15:45:32.000000000 +0000
++++ gcc/src/libgcc/unwind-compat.c	2012-12-12 15:45:43.000000000 +0000
+@@ -24,6 +24,7 @@
+    <http://www.gnu.org/licenses/>.  */
+ 
  #if defined (USE_GAS_SYMVER) && defined (USE_LIBUNWIND_EXCEPTIONS)
 +#ifndef inhibit_libc
  #include "tconfig.h"
  #include "tsystem.h"
  #include "unwind.h"
-@@ -213,3 +214,4 @@ _Unwind_SetIP (struct _Unwind_Context *context, _Unwind_Ptr val)
+@@ -208,3 +209,4 @@
  }
  symver (_Unwind_SetIP, GCC_3.0);
  #endif
 +#endif
---- a/src/libgcc/unwind-generic.h
-+++ b/src/libgcc/unwind-generic.h
-@@ -214,6 +214,7 @@ _Unwind_SjLj_Resume_or_Rethrow (struct _Unwind_Exception *);
+Index: gcc/src/libgcc/unwind-generic.h
+===================================================================
+--- gcc.orig/src/libgcc/unwind-generic.h	2012-12-12 15:45:32.000000000 +0000
++++ gcc/src/libgcc/unwind-generic.h	2012-12-12 15:45:43.000000000 +0000
+@@ -211,6 +211,7 @@
     compatible with the standard ABI for IA-64, we inline these.  */
-
+ 
  #ifdef __ia64__
 +#ifndef inhibit_libc
  #include <stdlib.h>
-
+ 
  static inline _Unwind_Ptr
-@@ -232,6 +233,7 @@ _Unwind_GetTextRelBase (struct _Unwind_Context *_C __attribute__ ((__unused__)))
-
+@@ -229,6 +230,7 @@
+ 
  /* @@@ Retrieve the Backing Store Pointer of the given context.  */
  extern _Unwind_Word _Unwind_GetBSP (struct _Unwind_Context *);
 +#endif
diff -ur raringorigs/gcc-4.7-4.7.2/debian/rules.defs raringnew/gcc-4.7-4.7.2/debian/rules.defs
--- raringorigs/gcc-4.7-4.7.2/debian/rules.defs	2012-12-12 10:30:37.000000000 +0000
+++ raringnew/gcc-4.7-4.7.2/debian/rules.defs	2012-12-12 13:07:03.000000000 +0000
@@ -285,7 +285,7 @@
 # build using fsf or linaro
 ifeq ($(distribution),Ubuntu)
   ifeq (,$(findstring gnat, $(PKGSOURCE)))
-  ifneq (,$(findstring $(DEB_TARGET_ARCH),armel armhf amd64 i386 powerpc))
+  ifneq (,$(findstring $(DEB_TARGET_ARCH),arm64 armel armhf amd64 i386 powerpc))
     with_linaro_branch = yes
   endif
   endif
