-#
-# Copyright (C) 2006 OpenWrt.org
+#
+# Copyright (C) 2006-2008 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
include $(TOPDIR)/rules.mk
PKG_NAME:=gmp
-PKG_VERSION:=4.2.1
+PKG_VERSION:=4.2.2
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=@GNU/gmp
-PKG_MD5SUM:=091c56e0e1cca6b09b17b69d47ef18e3
+PKG_MD5SUM:=7ce52531644e6d12f16911b7e3151f3f
include $(INCLUDE_DIR)/package.mk
SECTION:=libs
CATEGORY:=Libraries
TITLE:=GNU multiprecision arithmetic library
- URL:=http://www.swox.com/gmp/
+ URL:=http://gmplib.org/
+endef
+
+define Package/libgmp/description
+ GMP is a free library for arbitrary precision arithmetic, operating on
+ signed integers, rational numbers, and floating point numbers.
endef
CONFIGURE_VARS += CC="$(TARGET_CROSS)gcc"
+++ /dev/null
-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);