avr32 build fixes
[oweals/openwrt.git] / package / gmp / patches / 001-fat_fix.diff
diff --git a/package/gmp/patches/001-fat_fix.diff b/package/gmp/patches/001-fat_fix.diff
new file mode 100644 (file)
index 0000000..3c4d7da
--- /dev/null
@@ -0,0 +1,83 @@
+diff -Nur gmp-4.2.1/configure gmp-4.2.1-owrt/configure
+--- gmp-4.2.1/configure        2006-05-04 18:50:26.000000000 +0200
++++ gmp-4.2.1-owrt/configure   2007-07-17 10:38:53.000000000 +0200
+@@ -3549,8 +3549,10 @@
+       *)                    path="x86" ;;
+     esac
+-    # If the user asked for a fat build, override the path set above
++    # If the user asked for a fat build, override the path and flags set above
+     if test $enable_fat = yes; then
++      gcc_cflags_cpu=""
++      gcc_cflags_arch=""
+       extra_functions="$extra_functions fat fat_entry"
+       path="x86/fat x86"
+       fat_path="x86 x86/fat x86/i486
+diff -Nur gmp-4.2.1/mpn/generic/addsub_n.c gmp-4.2.1-owrt/mpn/generic/addsub_n.c
+--- gmp-4.2.1/mpn/generic/addsub_n.c   2006-03-14 16:57:54.000000000 +0100
++++ gmp-4.2.1-owrt/mpn/generic/addsub_n.c      2007-07-17 10:38:53.000000000 +0200
+@@ -1,6 +1,6 @@
+ /* mpn_addsub_n -- Add and Subtract two limb vectors of equal, non-zero length.
+-Copyright 1999, 2000, 2001 Free Software Foundation, Inc.
++Copyright 1999, 2000, 2001, 2006 Free Software Foundation, Inc.
+ This file is part of the GNU MP Library.
+@@ -58,13 +58,13 @@
+       for (off = 0; off < n; off += PART_SIZE)
+       {
+         this_n = MIN (n - off, PART_SIZE);
+-#if HAVE_NATIVE_mpn_add_nc || !HAVE_NATIVE_mpn_add_n
++#if HAVE_NATIVE_mpn_add_nc
+         acyo = mpn_add_nc (r1p + off, s1p + off, s2p + off, this_n, acyo);
+ #else
+         acyn = mpn_add_n (r1p + off, s1p + off, s2p + off, this_n);
+         acyo = acyn + mpn_add_1 (r1p + off, r1p + off, this_n, acyo);
+ #endif
+-#if HAVE_NATIVE_mpn_sub_nc || !HAVE_NATIVE_mpn_sub_n
++#if HAVE_NATIVE_mpn_sub_nc
+         scyo = mpn_sub_nc (r2p + off, s1p + off, s2p + off, this_n, scyo);
+ #else
+         scyn = mpn_sub_n (r2p + off, s1p + off, s2p + off, this_n);
+@@ -81,13 +81,13 @@
+       for (off = 0; off < n; off += PART_SIZE)
+       {
+         this_n = MIN (n - off, PART_SIZE);
+-#if HAVE_NATIVE_mpn_sub_nc || !HAVE_NATIVE_mpn_sub_n
++#if HAVE_NATIVE_mpn_sub_nc
+         scyo = mpn_sub_nc (r2p + off, s1p + off, s2p + off, this_n, scyo);
+ #else
+         scyn = mpn_sub_n (r2p + off, s1p + off, s2p + off, this_n);
+         scyo = scyn + mpn_sub_1 (r2p + off, r2p + off, this_n, scyo);
+ #endif
+-#if HAVE_NATIVE_mpn_add_nc || !HAVE_NATIVE_mpn_add_n
++#if HAVE_NATIVE_mpn_add_nc
+         acyo = mpn_add_nc (r1p + off, s1p + off, s2p + off, this_n, acyo);
+ #else
+         acyn = mpn_add_n (r1p + off, s1p + off, s2p + off, this_n);
+@@ -97,7 +97,7 @@
+     }
+   else
+     {
+-      /* r1 and r2 are identical to s1 and s2 (r1==s1 and r2=s2 or vice versa)
++      /* r1 and r2 are identical to s1 and s2 (r1==s1 and r2==s2 or vice versa)
+        Need temporary storage.  */
+       mp_limb_t tp[PART_SIZE];
+       acyo = 0;
+@@ -105,13 +105,13 @@
+       for (off = 0; off < n; off += PART_SIZE)
+       {
+         this_n = MIN (n - off, PART_SIZE);
+-#if HAVE_NATIVE_mpn_add_nc || !HAVE_NATIVE_mpn_add_n
++#if HAVE_NATIVE_mpn_add_nc
+         acyo = mpn_add_nc (tp, s1p + off, s2p + off, this_n, acyo);
+ #else
+         acyn = mpn_add_n (tp, s1p + off, s2p + off, this_n);
+         acyo = acyn + mpn_add_1 (tp, tp, this_n, acyo);
+ #endif
+-#if HAVE_NATIVE_mpn_sub_nc || !HAVE_NATIVE_mpn_sub_n
++#if HAVE_NATIVE_mpn_sub_nc
+         scyo = mpn_sub_nc (r2p + off, s1p + off, s2p + off, this_n, scyo);
+ #else
+         scyn = mpn_sub_n (r2p + off, s1p + off, s2p + off, this_n);