diff options
author | Mike Frysinger <vapier@gentoo.org> | 2006-04-10 03:39:17 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2006-04-10 03:39:17 +0000 |
commit | f082bbdf3857c850f284a3fcc3928c79182b0607 (patch) | |
tree | aca03e7d409bf4089d6316902eb9224d83a8ad9a /dev-libs/mpfr | |
parent | fixup sysroot support (diff) | |
download | gentoo-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/ChangeLog | 8 | ||||
-rw-r--r-- | dev-libs/mpfr/files/2.2.0/patch09 | 45 | ||||
-rw-r--r-- | dev-libs/mpfr/files/2.2.0/patch10 | 132 | ||||
-rw-r--r-- | dev-libs/mpfr/files/digest-mpfr-2.2.0_p10 | 6 | ||||
-rw-r--r-- | dev-libs/mpfr/mpfr-2.2.0_p10.ebuild | 58 |
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 +} |