Update MPFR to version 3.0.0.

Contributed by Stathis Kamperis on IRC.

Changes from versions 2.4.* to version 3.0.0:

- The "boudin aux pommes" release.
- MPFR 3.0.0 is binary incompatible with previous versions but (almost)
  API compatible.  More precisely the obsolete functions mpfr_random
  and mpfr_random2 have been removed, the meaning of the return type
  of the function mpfr_get_f has changed, and the return type of the
  function mpfr_get_z is now int instead of void.  In practice, this
  should not break any existing code.
- MPFR is now distributed under the GNU Lesser General Public License
  version 3 or later (LGPL v3+).
- Rounding modes GMP_RNDx are now MPFR_RNDx (GMP_RNDx kept for
  compatibility).
- A new rounding mode (MPFR_RNDA) is available to round away from zero.
- The rounding mode type is now mpfr_rnd_t (as in previous versions,
  both mpfr_rnd_t and mp_rnd_t are accepted, but mp_rnd_t may be
  removed in the future).
- The precision type is now mpfr_prec_t (as in previous versions, both
  mpfr_prec_t and mp_prec_t are accepted, but mp_prec_t may be removed
  in the future) and it is now signed (it was unsigned in MPFR 2.*, but
  this was not documented). In practice, this change should not affect
  existing code that assumed nothing on the precision type.
- MPFR now has its own exponent type mpfr_exp_t, which is currently
  the same as GMP's mp_exp_t.
- Functions mpfr_random and mpfr_random2 have been removed.
- mpfr_get_f and mpfr_get_z now return a ternary value.
- mpfr_strtofr now accepts bases from 37 to 62.
- mpfr_custom_get_mantissa was renamed to mpfr_custom_get_significand
  (mpfr_custom_get_mantissa is still available via a #define).
- Functions mpfr_get_si, mpfr_get_ui, mpfr_get_sj, mpfr_get_uj,
  mpfr_get_z and mpfr_get_z_2exp no longer have cases with undefined
  behavior; in these cases, the behavior is now specified, and in
  particular, the erange flag is set.
- New functions mpfr_buildopt_tls_p and mpfr_buildopt_decimal_p giving
  information about options used at MPFR build time.
- New function mpfr_regular_p.
- New function mpfr_set_zero.
- New function mpfr_digamma.
- New function mpfr_ai (incomplete, experimental).
- New functions mpfr_set_flt and mpfr_get_flt to convert from/to the
  float type.
- New function mpfr_urandom.
- New function mpfr_set_z_2exp (companion to mpfr_get_z_2exp, which
  was renamed from mpfr_get_z_exp in previous versions).
- Speed improvement for large operands in the trigonometric functions
  (mpfr_sin, mpfr_cos, mpfr_tan, mpfr_sin_cos): speedup of about 2.5
  for 10^5 digits, of about 5 for 10^6 digits.
- Speed improvement for large operands of the inverse trigonometric
  functions (arcsin, arccos, arctan): about 2 for 10^3 digits, up to
  2.7 for 10^6 digits.
- Some documentation files are installed in $docdir.
- The detection of a GMP build directory (more precisely, the internal
  header files of GMP) was previously done separately from the use of
  the --with-gmp-build configure option. This was not consistent with
  the documentation and with other parts of the configure script. So,
  as of MPFR 3.0.0, the internal header files of GMP are now used if
  and only if the --with-gmp-build configure option is given.
- The configure script recognizes some extra "long double" formats
  (double big endian, double little endian, double-double big endian).
- MPFR manual: added "API Compatibility" section.
- Test coverage: 97.1% lines of code.
- Bug fixes.
This commit is contained in:
asau 2010-07-15 20:30:40 +00:00
parent b4c1f98aae
commit f47130d623
4 changed files with 19 additions and 35 deletions

View file

@ -1,9 +1,8 @@
# $NetBSD: Makefile,v 1.16 2010/03/24 19:43:26 asau Exp $
# $NetBSD: Makefile,v 1.17 2010/07/15 20:30:40 asau Exp $
#
DISTNAME= mpfr-2.4.2
DISTNAME= mpfr-3.0.0
PKGNAME= ${DISTNAME}.3 # append patch level
PKGREVISION= 1
CATEGORIES= math
MASTER_SITES= http://www.mpfr.org/mpfr-current/
@ -15,7 +14,7 @@ PATCH_DIST_STRIP= -p1
MAINTAINER= rh@NetBSD.org
HOMEPAGE= http://www.mpfr.org/
COMMENT= GMP-based library for multiple-precision floating-point computations
LICENSE= gnu-lgpl-v2.1
LICENSE= gnu-lgpl-v3
PKG_DESTDIR_SUPPORT= user-destdir

View file

@ -1,4 +1,4 @@
@comment $NetBSD: PLIST,v 1.3 2009/12/15 12:35:57 wiz Exp $
@comment $NetBSD: PLIST,v 1.4 2010/07/15 20:30:40 asau Exp $
include/mpf2mpfr.h
include/mpfr.h
info/mpfr.info
@ -6,7 +6,7 @@ lib/libmpfr.la
share/doc/mpfr/AUTHORS
share/doc/mpfr/BUGS
share/doc/mpfr/COPYING
share/doc/mpfr/COPYING.LIB
share/doc/mpfr/COPYING.LESSER
share/doc/mpfr/FAQ.html
share/doc/mpfr/NEWS
share/doc/mpfr/TODO
@ -14,3 +14,4 @@ share/doc/mpfr/examples/ReadMe
share/doc/mpfr/examples/divworst.c
share/doc/mpfr/examples/rndo-add.c
share/doc/mpfr/examples/sample.c
share/doc/mpfr/examples/version.c

View file

@ -1,15 +1,14 @@
$NetBSD: distinfo,v 1.9 2010/01/15 14:04:36 asau Exp $
$NetBSD: distinfo,v 1.10 2010/07/15 20:30:40 asau Exp $
SHA1 (mpfr-2.4.2/mpfr-2.4.2.tar.gz) = d2c3504bd0318dda8332ca80523659e9779c367c
RMD160 (mpfr-2.4.2/mpfr-2.4.2.tar.gz) = 97f90103dd791b860a2736a73391a300441bcd35
Size (mpfr-2.4.2/mpfr-2.4.2.tar.gz) = 1412116 bytes
SHA1 (mpfr-2.4.2/patch01) = 9c8a8325848b4331e5c032abee1c765ad2e56de2
RMD160 (mpfr-2.4.2/patch01) = e612c1f8013860bbe53354022700855fdbc804f2
Size (mpfr-2.4.2/patch01) = 7136 bytes
SHA1 (mpfr-2.4.2/patch02) = 39d921bd8d9b9f6abbd7d0311bcceaab7e0b77a6
RMD160 (mpfr-2.4.2/patch02) = 9d68771b4e7b267d20140a6e7b6fb55ddf38ef80
Size (mpfr-2.4.2/patch02) = 2538 bytes
SHA1 (mpfr-2.4.2/patch03) = 2dbc76735798c72340e92f4746dd951c7d5aacc5
RMD160 (mpfr-2.4.2/patch03) = 9c62165ce20c0a9f3bc30989cf88955f0081b547
Size (mpfr-2.4.2/patch03) = 2544 bytes
SHA1 (patch-aa) = c86d768a642287fe6c4ef011f65aba7c59e089c0
SHA1 (mpfr-3.0.0/mpfr-3.0.0.tar.gz) = d45409b4586c7dda9cc0c0953f27e6dd5188a908
RMD160 (mpfr-3.0.0/mpfr-3.0.0.tar.gz) = 274831f73f213d61a091ddda56066aa4108d06ec
Size (mpfr-3.0.0/mpfr-3.0.0.tar.gz) = 1457040 bytes
SHA1 (mpfr-3.0.0/patch01) = 906e7a111ffcfb488307067e295af6a35a5a9d14
RMD160 (mpfr-3.0.0/patch01) = 34696d29a854c4d5a56dbb6a81991b088ab30091
Size (mpfr-3.0.0/patch01) = 6577 bytes
SHA1 (mpfr-3.0.0/patch02) = 8d692a797f848b9b3e9b886f9e68285885fe00b0
RMD160 (mpfr-3.0.0/patch02) = 06c763e58524b6e5ff96e538a70ae725fe97d615
Size (mpfr-3.0.0/patch02) = 11400 bytes
SHA1 (mpfr-3.0.0/patch03) = f30cf103229b85137a5f3f368e174209ff4fa8e3
RMD160 (mpfr-3.0.0/patch03) = 79712f3b0d1cb1607a2a5988c980376cd6d23f10
Size (mpfr-3.0.0/patch03) = 2932 bytes

View file

@ -1,15 +0,0 @@
$NetBSD: patch-aa,v 1.5 2009/03/19 11:54:53 drochner Exp $
--- mpfr.h.orig 2009-03-18 19:16:07.000000000 +0100
+++ mpfr.h
@@ -23,6 +23,10 @@ MA 02110-1301, USA. */
#ifndef __MPFR_H
#define __MPFR_H
+#ifdef HAVE_STDINT_H
+#include <stdint.h>
+#endif
+
/* Define MPFR version number */
#define MPFR_VERSION_MAJOR 2
#define MPFR_VERSION_MINOR 4