diff --git a/.cvsignore b/.cvsignore index a8e067a..11a1a1e 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -mpfr-2.3.0.tar.bz2 +mpfr-2.3.1.tar.bz2 diff --git a/mpfr-2.3.0-upstream.patch b/mpfr-2.3.0-upstream.patch deleted file mode 100644 index f724e1e..0000000 --- a/mpfr-2.3.0-upstream.patch +++ /dev/null @@ -1,223 +0,0 @@ -diff -Naurd mpfr-2.3.0-a/Makefile.am mpfr-2.3.0-b/Makefile.am ---- mpfr-2.3.0-a/Makefile.am 2007-08-29 10:18:11.000000000 +0000 -+++ mpfr-2.3.0-b/Makefile.am 2007-09-02 23:19:32.000000000 +0000 -@@ -32,8 +32,13 @@ - - MAKEINFOFLAGS = --enable-encoding - --get_patches.c: PATCHES get_patches.sh -- ./get_patches.sh > $@ || rm -f $@ -+# Important note: If for some reason, srcdir is read-only at build time -+# (and you use objdir != srcdir), then you need to rebuild get_patches.c -+# (with "make get_patches.c") just after patching the MPFR source. This -+# should not be a problem in practice, in particular because "make dist" -+# automatically rebuilds get_patches.c before generating the archives. -+$(srcdir)/get_patches.c: PATCHES get_patches.sh -+ (cd $(srcdir) && ./get_patches.sh) > $@ || rm -f $@ - - # Do not add get_patches.c to CLEANFILES so that this file doesn't - # need to be (re)built as long as no patches are applied. Anyway the -diff -Naurd mpfr-2.3.0-a/Makefile.in mpfr-2.3.0-b/Makefile.in ---- mpfr-2.3.0-a/Makefile.in 2007-08-29 10:27:18.000000000 +0000 -+++ mpfr-2.3.0-b/Makefile.in 2007-09-02 23:59:30.000000000 +0000 -@@ -1665,8 +1665,13 @@ - uninstall-info-am uninstall-libLTLIBRARIES - - --get_patches.c: PATCHES get_patches.sh -- ./get_patches.sh > $@ || rm -f $@ -+# Important note: If for some reason, srcdir is read-only at build time -+# (and you use objdir != srcdir), then you need to rebuild get_patches.c -+# (with "make get_patches.c") just after patching the MPFR source. This -+# should not be a problem in practice, in particular because "make dist" -+# automatically rebuilds get_patches.c before generating the archives. -+$(srcdir)/get_patches.c: PATCHES get_patches.sh -+ (cd $(srcdir) && ./get_patches.sh) > $@ || rm -f $@ - - tune: - $(MAKE) $(AM_MAKEFLAGS) tuneup$(EXEEXT) -diff -Naurd mpfr-2.3.0-a/PATCHES mpfr-2.3.0-b/PATCHES ---- mpfr-2.3.0-a/PATCHES 2007-08-29 10:18:11.000000000 +0000 -+++ mpfr-2.3.0-b/PATCHES 2007-09-02 23:59:50.000000000 +0000 -@@ -0,0 +1 @@ -+get_patches -diff -Naurd mpfr-2.3.0-a/VERSION mpfr-2.3.0-b/VERSION ---- mpfr-2.3.0-a/VERSION 2007-08-29 10:18:11.000000000 +0000 -+++ mpfr-2.3.0-b/VERSION 2007-09-02 23:55:55.000000000 +0000 -@@ -1 +1 @@ --2.3.0 -+2.3.0-p1 -diff -Naurd mpfr-2.3.0-a/mpfr.h mpfr-2.3.0-b/mpfr.h ---- mpfr-2.3.0-a/mpfr.h 2007-08-29 10:18:11.000000000 +0000 -+++ mpfr-2.3.0-b/mpfr.h 2007-09-02 23:55:55.000000000 +0000 -@@ -27,7 +27,7 @@ - #define MPFR_VERSION_MAJOR 2 - #define MPFR_VERSION_MINOR 3 - #define MPFR_VERSION_PATCHLEVEL 0 --#define MPFR_VERSION_STRING "2.3.0" -+#define MPFR_VERSION_STRING "2.3.0-p1" - - /* Macros dealing with MPFR VERSION */ - #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c)) -diff -Naurd mpfr-2.3.0-a/tests/tversion.c mpfr-2.3.0-b/tests/tversion.c ---- mpfr-2.3.0-a/tests/tversion.c 2007-08-29 10:18:10.000000000 +0000 -+++ mpfr-2.3.0-b/tests/tversion.c 2007-09-02 23:55:55.000000000 +0000 -@@ -46,7 +46,7 @@ - version = mpfr_get_version (); - - /* This test is disabled when a suffix (e.g. -dev) has been defined. */ --#if 1 -+#if 0 - sprintf (buffer, "%d.%d.%d", MPFR_VERSION_MAJOR, MPFR_VERSION_MINOR, - MPFR_VERSION_PATCHLEVEL); - if (strcmp (buffer, version) != 0) -diff -Naurd mpfr-2.3.0-a/version.c mpfr-2.3.0-b/version.c ---- mpfr-2.3.0-a/version.c 2007-08-29 10:18:11.000000000 +0000 -+++ mpfr-2.3.0-b/version.c 2007-09-02 23:55:55.000000000 +0000 -@@ -25,5 +25,5 @@ - const char * - mpfr_get_version (void) - { -- return "2.3.0"; -+ return "2.3.0-p1"; - } -diff -Naurd mpfr-2.3.0-a/PATCHES mpfr-2.3.0-b/PATCHES ---- mpfr-2.3.0-a/PATCHES 2007-08-29 10:18:11.000000000 +0000 -+++ mpfr-2.3.0-b/PATCHES 2007-09-03 00:03:46.000000000 +0000 -@@ -0,0 +1 @@ -+mpfr_acosh -diff -Naurd mpfr-2.3.0-a/VERSION mpfr-2.3.0-b/VERSION ---- mpfr-2.3.0-a/VERSION 2007-09-02 23:55:55.000000000 +0000 -+++ mpfr-2.3.0-b/VERSION 2007-09-03 00:02:12.000000000 +0000 -@@ -1 +1 @@ --2.3.0-p1 -+2.3.0-p2 -diff -Naurd mpfr-2.3.0-a/acosh.c mpfr-2.3.0-b/acosh.c ---- mpfr-2.3.0-a/acosh.c 2007-08-29 10:18:11.000000000 +0000 -+++ mpfr-2.3.0-b/acosh.c 2007-08-31 17:20:08.000000000 +0000 -@@ -73,7 +73,7 @@ - /* Declaration of the size variables */ - mp_prec_t Ny = MPFR_PREC(y); /* Precision of output variable */ - mp_prec_t Nt; /* Precision of the intermediary variable */ -- mp_exp_t err, exp_te, exp_ti; /* Precision of error */ -+ mp_exp_t err, exp_te, d; /* Precision of error */ - MPFR_ZIV_DECL (loop); - - /* compute the precision of intermediary variable */ -@@ -91,13 +91,35 @@ - mpfr_mul (t, x, x, GMP_RNDD); /* x^2 */ - exp_te = MPFR_GET_EXP (t); - mpfr_sub_ui (t, t, 1, GMP_RNDD); /* x^2-1 */ -- exp_ti = MPFR_GET_EXP (t); -- mpfr_sqrt (t, t, GMP_RNDN); /* sqrt(x^2-1) */ -- mpfr_add (t, t, x, GMP_RNDN); /* sqrt(x^2-1)+x */ -- mpfr_log (t, t, GMP_RNDN); /* ln(sqrt(x^2-1)+x)*/ -+ if (MPFR_UNLIKELY (MPFR_IS_ZERO (t))) -+ { -+ mpfr_t z; -+ -+ /* This means that x is very close to 1: x = 1 + z with -+ z < 2^(-Nt). Instead of increasing the precision, let's -+ compute x^2-1 by (x+1)(x-1) with an accuracy of about -+ Nt bits. */ -+ mpfr_init2 (z, Nt); -+ mpfr_add_ui (t, x, 1, GMP_RNDD); -+ mpfr_sub_ui (z, x, 1, GMP_RNDD); -+ mpfr_mul (t, t, z, GMP_RNDD); -+ d = 2; -+ mpfr_sqrt (t, t, GMP_RNDN); /* sqrt(x^2-1) */ -+ mpfr_add (t, t, z, GMP_RNDN); /* sqrt(x^2-1)+z */ -+ mpfr_clear (z); -+ mpfr_log1p (t, t, GMP_RNDN); /* log1p(sqrt(x^2-1)+z) */ -+ } -+ else -+ { -+ d = exp_te - MPFR_GET_EXP (t); -+ d = MAX (1, d); -+ mpfr_sqrt (t, t, GMP_RNDN); /* sqrt(x^2-1) */ -+ mpfr_add (t, t, x, GMP_RNDN); /* sqrt(x^2-1)+x */ -+ mpfr_log (t, t, GMP_RNDN); /* ln(sqrt(x^2-1)+x) */ -+ } - - /* error estimate -- see algorithms.tex */ -- err = 3 + MAX (1, exp_te - exp_ti) - MPFR_GET_EXP(t); -+ err = 3 + d - MPFR_GET_EXP (t); - /* error is bounded by 1/2 + 2^err <= 2^(1+max(-1,err)) */ - err = 1 + MAX (-1, err); - if (MPFR_LIKELY (MPFR_CAN_ROUND (t, Nt - err, Ny, rnd_mode))) -@@ -117,9 +139,3 @@ - MPFR_SAVE_EXPO_FREE (expo); - return mpfr_check_range (y, inexact, rnd_mode); - } -- -- -- -- -- -- -diff -Naurd mpfr-2.3.0-a/mpfr.h mpfr-2.3.0-b/mpfr.h ---- mpfr-2.3.0-a/mpfr.h 2007-09-02 23:55:55.000000000 +0000 -+++ mpfr-2.3.0-b/mpfr.h 2007-09-03 00:02:12.000000000 +0000 -@@ -27,7 +27,7 @@ - #define MPFR_VERSION_MAJOR 2 - #define MPFR_VERSION_MINOR 3 - #define MPFR_VERSION_PATCHLEVEL 0 --#define MPFR_VERSION_STRING "2.3.0-p1" -+#define MPFR_VERSION_STRING "2.3.0-p2" - - /* Macros dealing with MPFR VERSION */ - #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c)) -diff -Naurd mpfr-2.3.0-a/tests/tacosh.c mpfr-2.3.0-b/tests/tacosh.c ---- mpfr-2.3.0-a/tests/tacosh.c 2007-08-29 10:18:10.000000000 +0000 -+++ mpfr-2.3.0-b/tests/tacosh.c 2007-08-31 17:20:00.000000000 +0000 -@@ -123,12 +123,40 @@ - mpfr_clear (y); - } - -+/* With MPFR 2.3.0, this yields an assertion failure in mpfr_acosh. */ -+static void -+bug20070831 (void) -+{ -+ mpfr_t x, y, z; -+ int inex; -+ -+ mpfr_init2 (x, 256); -+ mpfr_init2 (y, 32); -+ mpfr_init2 (z, 32); -+ mpfr_set_ui (x, 1, GMP_RNDN); -+ mpfr_nextabove (x); -+ inex = mpfr_acosh (y, x, GMP_RNDZ); -+ mpfr_set_ui_2exp (z, 1, -127, GMP_RNDN); -+ mpfr_nextbelow (z); -+ MPFR_ASSERTN (inex < 0); -+ if (!mpfr_equal_p (y, z)) -+ { -+ printf ("Error in bug20070831:\nexpected "); -+ mpfr_dump (z); -+ printf ("got "); -+ mpfr_dump (y); -+ exit (1); -+ } -+ mpfr_clears (x, y, z, (void *) 0); -+} -+ - int - main (int argc, char *argv[]) - { - tests_start_mpfr (); - - special (); -+ bug20070831 (); - - test_generic (2, 100, 25); - -diff -Naurd mpfr-2.3.0-a/version.c mpfr-2.3.0-b/version.c ---- mpfr-2.3.0-a/version.c 2007-09-02 23:55:55.000000000 +0000 -+++ mpfr-2.3.0-b/version.c 2007-09-03 00:02:12.000000000 +0000 -@@ -25,5 +25,5 @@ - const char * - mpfr_get_version (void) - { -- return "2.3.0-p1"; -+ return "2.3.0-p2"; - } diff --git a/mpfr.spec b/mpfr.spec index a3953cc..232c428 100644 --- a/mpfr.spec +++ b/mpfr.spec @@ -1,10 +1,9 @@ Summary: A C library for multiple-precision floating-point computations Name: mpfr -Version: 2.3.0 -Release: 3%{?dist} +Version: 2.3.1 +Release: 1%{?dist} URL: http://www.mpfr.org/ Source0: http://www.mpfr.org/mpfr-current/mpfr-%{version}.tar.bz2 -Patch0: mpfr-2.3.0-upstream.patch License: LGPLv2+ and GPLv2+ and GFDL Group: System Environment/Libraries BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -37,7 +36,6 @@ install the mpfr package. %prep %setup -q -%patch0 -p1 -b .up %build @@ -85,6 +83,9 @@ rm -rf $RPM_BUILD_ROOT %{_infodir}/mpfr.info* %changelog +* Mon Jul 21 2008 Ivana Varekova - 2.3.1-1 +- update to 2.3.1 + * Wed Feb 20 2008 Fedora Release Engineering - 2.3.0-3 - Autorebuild for GCC 4.3 diff --git a/sources b/sources index 4b28552..c8d3ae5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -cf7c743e4be122e63eb6f372fc58b657 mpfr-2.3.0.tar.bz2 +8352b619e04dcc73411a38b39dd855f6 mpfr-2.3.1.tar.bz2