summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2006-04-10 03:39:17 +0000
committerMike Frysinger <vapier@gentoo.org>2006-04-10 03:39:17 +0000
commitf082bbdf3857c850f284a3fcc3928c79182b0607 (patch)
treeaca03e7d409bf4089d6316902eb9224d83a8ad9a /dev-libs/mpfr
parentfixup sysroot support (diff)
downloadgentoo-2-f082bbdf3857c850f284a3fcc3928c79182b0607.tar.gz
gentoo-2-f082bbdf3857c850f284a3fcc3928c79182b0607.tar.bz2
gentoo-2-f082bbdf3857c850f284a3fcc3928c79182b0607.zip
Grab some more patches from upstream.
(Portage version: 2.1_pre7-r4)
Diffstat (limited to 'dev-libs/mpfr')
-rw-r--r--dev-libs/mpfr/ChangeLog8
-rw-r--r--dev-libs/mpfr/files/2.2.0/patch0945
-rw-r--r--dev-libs/mpfr/files/2.2.0/patch10132
-rw-r--r--dev-libs/mpfr/files/digest-mpfr-2.2.0_p106
-rw-r--r--dev-libs/mpfr/mpfr-2.2.0_p10.ebuild58
5 files changed, 248 insertions, 1 deletions
diff --git a/dev-libs/mpfr/ChangeLog b/dev-libs/mpfr/ChangeLog
index a0a748c995ff..b3f29320da8d 100644
--- a/dev-libs/mpfr/ChangeLog
+++ b/dev-libs/mpfr/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-libs/mpfr
# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/mpfr/ChangeLog,v 1.19 2006/04/07 12:13:05 gmsoft Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/mpfr/ChangeLog,v 1.20 2006/04/10 03:39:17 vapier Exp $
+
+*mpfr-2.2.0_p10 (10 Apr 2006)
+
+ 10 Apr 2006; Mike Frysinger <vapier@gentoo.org> +files/2.2.0/patch09,
+ +files/2.2.0/patch10, +mpfr-2.2.0_p10.ebuild:
+ Grab some more patches from upstream.
07 Apr 2006; Guy Martin <gmsoft@gentoo.org> mpfr-2.2.0_p8.ebuild:
Fix hppa 1.1 computation bug.
diff --git a/dev-libs/mpfr/files/2.2.0/patch09 b/dev-libs/mpfr/files/2.2.0/patch09
new file mode 100644
index 000000000000..d39c283d566e
--- /dev/null
+++ b/dev-libs/mpfr/files/2.2.0/patch09
@@ -0,0 +1,45 @@
+diff -Naurd mpfr-2.2.0-p8/random2.c mpfr-2.2.0-p9/random2.c
+--- mpfr-2.2.0-p8/random2.c 2005-08-18 17:03:10.000000000 +0000
++++ mpfr-2.2.0-p9/random2.c 2006-02-20 10:29:01.000000000 +0000
+@@ -2,7 +2,7 @@
+ long runs of consecutive ones and zeros in the binary representation.
+ Intended for testing.
+
+-Copyright 1999, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
++Copyright 1999, 2001, 2002, 2003, 2004, 2006 Free Software Foundation, Inc.
+
+ This file is part of the MPFR Library.
+
+@@ -36,7 +36,8 @@
+
+ if (MPFR_UNLIKELY(size == 0))
+ {
+- MPFR_SET_ZERO(x);
++ MPFR_SET_ZERO (x);
++ MPFR_SET_POS (x);
+ return ;
+ }
+ else if (size > 0)
+diff -Naurd mpfr-2.2.0-p8/tests/trandom.c mpfr-2.2.0-p9/tests/trandom.c
+--- mpfr-2.2.0-p8/tests/trandom.c 2005-08-18 17:03:16.000000000 +0000
++++ mpfr-2.2.0-p9/tests/trandom.c 2006-02-20 10:29:01.000000000 +0000
+@@ -1,6 +1,6 @@
+ /* Test file for the various mpfr_random fonctions.
+
+-Copyright 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation.
++Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2006 Free Software Foundation, Inc.
+
+ This file is part of the MPFR Library.
+
+@@ -120,7 +120,10 @@
+
+ /* test size=0 */
+ mpfr_random2 (x, 0, 0);
+- MPFR_ASSERTN(mpfr_cmp_ui (x, 0) == 0 && MPFR_IS_POS(x));
++ MPFR_ASSERTN (mpfr_cmp_ui (x, 0) == 0 && MPFR_IS_POS (x));
++ mpfr_set_si (x, -1, GMP_RNDN); /* x is negative */
++ mpfr_random2 (x, 0, 0);
++ MPFR_ASSERTN (mpfr_cmp_ui (x, 0) == 0 && MPFR_IS_POS (x));
+
+ /* test size < 0 */
+ mpfr_random2 (x, -1, 0);
diff --git a/dev-libs/mpfr/files/2.2.0/patch10 b/dev-libs/mpfr/files/2.2.0/patch10
new file mode 100644
index 000000000000..8de4b3d00cfe
--- /dev/null
+++ b/dev-libs/mpfr/files/2.2.0/patch10
@@ -0,0 +1,132 @@
+diff -Naurd mpfr-2.2.0-p9/asin.c mpfr-2.2.0-p10/asin.c
+--- mpfr-2.2.0-p9/asin.c 2005-08-18 17:03:04.000000000 +0000
++++ mpfr-2.2.0-p10/asin.c 2006-03-16 17:47:51.000000000 +0000
+@@ -51,7 +51,7 @@
+ }
+
+ /* asin(x) = x + x^3/6 + ... so the error is < 2^(3*EXP(x)-2) */
+- MPFR_FAST_COMPUTE_IF_SMALL_INPUT (asin,x, -2*MPFR_GET_EXP (x)+2,1,rnd_mode,);
++ MPFR_FAST_COMPUTE_IF_SMALL_INPUT (asin,x, -2*MPFR_GET_EXP (x)+2,1,rnd_mode,{});
+
+ /* Set x_p=|x| (x is a normal number) */
+ mpfr_init2 (xp, MPFR_PREC (x));
+diff -Naurd mpfr-2.2.0-p9/asinh.c mpfr-2.2.0-p10/asinh.c
+--- mpfr-2.2.0-p9/asinh.c 2005-08-18 17:03:04.000000000 +0000
++++ mpfr-2.2.0-p10/asinh.c 2006-03-16 17:47:51.000000000 +0000
+@@ -62,7 +62,7 @@
+ }
+
+ /* asinh(x) = x - x^3/6 + ... so the error is < 2^(3*EXP(x)-2) */
+- MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, x, -2*MPFR_GET_EXP (x)+2,0,rnd_mode,);
++ MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, x, -2*MPFR_GET_EXP (x)+2,0,rnd_mode,{});
+
+ Ny = MPFR_PREC (y); /* Precision of output variable */
+
+diff -Naurd mpfr-2.2.0-p9/atan.c mpfr-2.2.0-p10/atan.c
+--- mpfr-2.2.0-p9/atan.c 2005-08-18 16:35:03.000000000 +0000
++++ mpfr-2.2.0-p10/atan.c 2006-03-16 17:47:51.000000000 +0000
+@@ -185,7 +185,7 @@
+ /* atan(x) = x - x^3/3 + x^5/5...
+ so the error is < 2^(3*EXP(x)-1)
+ so `EXP(x)-(3*EXP(x)-1)` = -2*EXP(x)+1 */
+- MPFR_FAST_COMPUTE_IF_SMALL_INPUT (atan,x, -2*MPFR_GET_EXP (x)+1,0,rnd_mode,);
++ MPFR_FAST_COMPUTE_IF_SMALL_INPUT (atan,x, -2*MPFR_GET_EXP (x)+1,0,rnd_mode,{});
+
+ /* Set x_p=|x| */
+ MPFR_TMP_INIT_ABS (xp, x);
+diff -Naurd mpfr-2.2.0-p9/atanh.c mpfr-2.2.0-p10/atanh.c
+--- mpfr-2.2.0-p9/atanh.c 2005-08-18 17:03:04.000000000 +0000
++++ mpfr-2.2.0-p10/atanh.c 2006-03-16 17:47:51.000000000 +0000
+@@ -71,7 +71,7 @@
+ }
+
+ /* atanh(x) = x + x^3/3 + ... so the error is < 2^(3*EXP(x)-1) */
+- MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, xt, -2*MPFR_GET_EXP (xt)+1,1,rnd_mode,);
++ MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, xt, -2*MPFR_GET_EXP (xt)+1,1,rnd_mode,{});
+
+ MPFR_SAVE_EXPO_MARK (expo);
+
+diff -Naurd mpfr-2.2.0-p9/expm1.c mpfr-2.2.0-p10/expm1.c
+--- mpfr-2.2.0-p9/expm1.c 2005-08-18 17:03:06.000000000 +0000
++++ mpfr-2.2.0-p10/expm1.c 2006-03-16 17:47:51.000000000 +0000
+@@ -61,7 +61,7 @@
+ }
+
+ /* exp(x)-1 = x +x^2/2 + ... so the error is < 2^(2*EXP(x)-1) */
+- MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, x, -MPFR_GET_EXP (x)+1,1,rnd_mode,);
++ MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, x, -MPFR_GET_EXP (x)+1,1,rnd_mode,{});
+
+ MPFR_SAVE_EXPO_MARK (expo);
+ /* General case */
+diff -Naurd mpfr-2.2.0-p9/log1p.c mpfr-2.2.0-p10/log1p.c
+--- mpfr-2.2.0-p9/log1p.c 2005-08-18 17:03:08.000000000 +0000
++++ mpfr-2.2.0-p10/log1p.c 2006-03-16 17:47:51.000000000 +0000
+@@ -63,7 +63,7 @@
+ }
+
+ /* log(1+x) = x-x^2/2 + ... so the error is < 2^(2*EXP(x)-1) */
+- MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, x, -MPFR_GET_EXP (x)+1,0,rnd_mode,);
++ MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, x, -MPFR_GET_EXP (x)+1,0,rnd_mode,{});
+
+ comp = mpfr_cmp_si (x, -1);
+ /* log1p(x) is undefined for x < -1 */
+diff -Naurd mpfr-2.2.0-p9/sin.c mpfr-2.2.0-p10/sin.c
+--- mpfr-2.2.0-p9/sin.c 2005-12-24 15:17:54.000000000 +0000
++++ mpfr-2.2.0-p10/sin.c 2006-03-16 17:47:51.000000000 +0000
+@@ -129,7 +129,7 @@
+ }
+
+ /* sin(x) = x - x^3/6 + ... so the error is < 2^(3*EXP(x)-2) */
+- MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, x, -2*MPFR_GET_EXP (x)+2,0,rnd_mode, );
++ MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, x, -2*MPFR_GET_EXP (x)+2,0,rnd_mode,{});
+
+ /* Compute initial precision */
+ precy = MPFR_PREC (y);
+diff -Naurd mpfr-2.2.0-p9/sinh.c mpfr-2.2.0-p10/sinh.c
+--- mpfr-2.2.0-p9/sinh.c 2005-08-18 16:35:14.000000000 +0000
++++ mpfr-2.2.0-p10/sinh.c 2006-03-16 17:47:51.000000000 +0000
+@@ -57,7 +57,7 @@
+ }
+
+ /* sinh(x) = x + x^3/6 + ... so the error is < 2^(3*EXP(x)-2) */
+- MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, xt, -2*MPFR_GET_EXP(xt)+2,1,rnd_mode, );
++ MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, xt, -2*MPFR_GET_EXP(xt)+2,1,rnd_mode,{});
+
+ MPFR_TMP_INIT_ABS (x, xt);
+
+diff -Naurd mpfr-2.2.0-p9/tan.c mpfr-2.2.0-p10/tan.c
+--- mpfr-2.2.0-p9/tan.c 2005-08-18 16:35:15.000000000 +0000
++++ mpfr-2.2.0-p10/tan.c 2006-03-16 17:47:51.000000000 +0000
+@@ -53,7 +53,7 @@
+ }
+
+ /* tan(x) = x + x^3/3 + ... so the error is < 2^(3*EXP(x)-1) */
+- MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, x, -2*MPFR_GET_EXP (x)+1,1,rnd_mode, );
++ MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, x, -2*MPFR_GET_EXP (x)+1,1,rnd_mode,{});
+
+ MPFR_SAVE_EXPO_MARK (expo);
+
+diff -Naurd mpfr-2.2.0-p9/tanh.c mpfr-2.2.0-p10/tanh.c
+--- mpfr-2.2.0-p9/tanh.c 2005-08-18 17:03:12.000000000 +0000
++++ mpfr-2.2.0-p10/tanh.c 2006-03-16 17:47:51.000000000 +0000
+@@ -56,7 +56,7 @@
+ }
+
+ /* tanh(x) = x - x^3/3 + ... so the error is < 2^(3*EXP(x)-1) */
+- MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, xt, -2*MPFR_GET_EXP(xt)+1,0,rnd_mode, );
++ MPFR_FAST_COMPUTE_IF_SMALL_INPUT (y, xt, -2*MPFR_GET_EXP(xt)+1,0,rnd_mode,{});
+
+ MPFR_TMP_INIT_ABS (x, xt);
+
+diff -Naurd mpfr-2.2.0-p9/zeta.c mpfr-2.2.0-p10/zeta.c
+--- mpfr-2.2.0-p9/zeta.c 2005-09-16 14:36:54.000000000 +0000
++++ mpfr-2.2.0-p10/zeta.c 2006-03-16 17:47:51.000000000 +0000
+@@ -175,7 +175,7 @@
+ else
+ err = ((mp_exp_t)1) << err;
+ err = 1 - (-err+1); /* GET_EXP(one) - (-err+1) = err :) */
+- MPFR_FAST_COMPUTE_IF_SMALL_INPUT (z, __gmpfr_one, err, 1, rnd_mode, );
++ MPFR_FAST_COMPUTE_IF_SMALL_INPUT (z, __gmpfr_one, err, 1, rnd_mode,{});
+ }
+
+ d = precz + MPFR_INT_CEIL_LOG2(precz) + 10;
diff --git a/dev-libs/mpfr/files/digest-mpfr-2.2.0_p10 b/dev-libs/mpfr/files/digest-mpfr-2.2.0_p10
new file mode 100644
index 000000000000..4d1063c367b4
--- /dev/null
+++ b/dev-libs/mpfr/files/digest-mpfr-2.2.0_p10
@@ -0,0 +1,6 @@
+MD5 1a81f721ee78cb027f6c41a243d3a33d mpfr-2.2.0.tar.bz2 728490
+RMD160 5243eb0387392123d9d30ca009b30147a51370a6 mpfr-2.2.0.tar.bz2 728490
+SHA256 cea002a11707b5f8fb2147686145563e5f313fc62558e8400444bdcf89971e6a mpfr-2.2.0.tar.bz2 728490
+MD5 5c4db32dfaef7d032e2f359cacebf7ce mpfr-2.2.0_p5 27251
+RMD160 7e60b2be4691235de88646534b64cd12cdc1a45d mpfr-2.2.0_p5 27251
+SHA256 1e253c48800667d295e5ec3407b8e27a86e385706ecb49a7dc51503839752309 mpfr-2.2.0_p5 27251
diff --git a/dev-libs/mpfr/mpfr-2.2.0_p10.ebuild b/dev-libs/mpfr/mpfr-2.2.0_p10.ebuild
new file mode 100644
index 000000000000..df8cc68ced80
--- /dev/null
+++ b/dev-libs/mpfr/mpfr-2.2.0_p10.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/mpfr/mpfr-2.2.0_p10.ebuild,v 1.1 2006/04/10 03:39:17 vapier Exp $
+
+inherit eutils flag-o-matic
+
+MY_PV=${PV/_p*}
+MY_P=${PN}-${MY_PV}
+PLEVEL=${PV/*p}
+DESCRIPTION="library for multiple-precision floating-point computations with exact rounding"
+HOMEPAGE="http://www.mpfr.org/"
+SRC_URI="http://www.mpfr.org/mpfr-current/${MY_P}.tar.bz2
+ mirror://gentoo/mpfr-2.2.0_p5"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE=""
+
+DEPEND=">=dev-libs/gmp-4.1.4-r2"
+
+S=${WORKDIR}/${MY_P}
+
+src_unpack() {
+ unpack "${MY_P}.tar.bz2"
+ cd "${S}"
+ for ((i=1; i<=PLEVEL; ++i)) ; do
+ patch=patch$(printf '%02d' ${i})
+ if [[ -f ${FILESDIR}/${MY_PV}/${patch} ]] ; then
+ epatch "${FILESDIR}"/${MY_PV}/${patch}
+ elif [[ -f ${DISTDIR}/${PN}-${MY_PV}_p${i} ]] ; then
+ epatch "${DISTDIR}"/${PN}-${MY_PV}_p${i}
+ else
+ ewarn "${DISTDIR}/${PN}-${MY_PV}_p${i}"
+ die "patch ${i} missing - please report to bugs.gentoo.org"
+ fi
+ done
+
+ # Fix hppa 1.1 computation bug
+ [[ ${CHOST} == hppa[^2]* ]] && sed -e 's/__hpux/__hppa__/' -i "${S}/mul.c"
+}
+
+src_compile() {
+ # tests fail on amd64 with -ffast-math, maybe other arches too
+ use amd64 && filter-flags -ffast-math
+
+ econf \
+ --enable-shared \
+ --enable-static \
+ || die
+ emake || die
+}
+
+src_install() {
+ make install DESTDIR="${D}" || die
+ dodoc AUTHORS BUGS ChangeLog NEWS README TODO
+ dohtml *.html
+}