Compare commits
94 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ebdaaedf86 | ||
|
|
830dbbe0e0 |
||
|
|
d9e96fd5fb | ||
|
|
ec4720d961 | ||
|
|
62bd2cdcc2 | ||
|
|
0cf369ae90 | ||
|
|
45cb3e8d14 | ||
|
|
5922b52bac | ||
|
|
d1f3ce8df4 | ||
|
|
c7d501bb84 | ||
|
|
af7310239e | ||
|
|
1d54b0b669 | ||
|
|
820b49a7d3 | ||
|
|
b8d86e27c1 | ||
|
|
30b564b576 | ||
|
|
cca6e934e8 | ||
|
|
2fb321653b | ||
|
|
ed735e8d2c | ||
|
|
4290d28595 | ||
|
|
d80e858fdc | ||
|
|
4a657d6045 | ||
|
|
f1eb89ef0d | ||
|
|
08cf430d59 | ||
|
|
d89286dc3e | ||
|
|
9acef3eea7 | ||
|
|
c0016c7cad | ||
|
|
cbfeb6f663 | ||
|
|
ab6fce68a6 | ||
|
|
28c128f927 | ||
|
|
40d31d2798 | ||
|
|
9637b73146 | ||
|
|
be947c1e21 | ||
|
|
4f066edbc4 | ||
|
|
acb6838241 | ||
|
|
aaf4648ad5 | ||
|
|
6fea43f235 | ||
|
|
715bcf1e4e | ||
|
|
22423e7314 |
||
|
|
f4dc0f3ecf | ||
|
|
14044d1ec9 | ||
|
|
981068def2 | ||
|
|
f422ddcf5e | ||
|
|
c66a201ca3 | ||
|
|
f027070a12 | ||
|
|
f91aec678a | ||
|
|
dc787f1468 | ||
|
|
7fe92b13b9 | ||
|
|
3d2a58a6b0 | ||
|
|
cfd38587d7 | ||
|
|
8ef6961dc3 | ||
|
|
2b83952f6a | ||
|
|
fa2aff14c7 | ||
|
|
48dfe55c1d | ||
|
|
9e9b95bccb | ||
|
|
7ef3faf99a | ||
|
|
d303db3167 | ||
|
|
b838695ad7 | ||
|
|
b3fcae626a | ||
|
|
b416e2d210 | ||
|
|
2de7b91ada | ||
|
|
423cebe21c | ||
|
|
e421810d56 | ||
|
|
ba48b42d0b | ||
|
|
00ba6784b1 | ||
|
|
d2aee6c64a | ||
|
|
6557f93e82 | ||
|
|
0cbd0d83b9 | ||
|
|
b3526828a1 | ||
|
|
20146bded1 | ||
|
|
b97b4041f8 | ||
|
|
4515136771 | ||
|
|
bb9a82cda6 | ||
|
|
3b8be1f69c | ||
|
|
ace8fc9890 | ||
|
|
71dbf791b1 | ||
|
|
bb63a3d2d7 | ||
|
|
80f055a755 | ||
|
|
db11acfb25 | ||
|
|
2b4bab2d25 | ||
|
|
f23c7f55a2 | ||
|
|
ccad01d74f | ||
|
|
c96f494910 | ||
|
|
85f5a35fe3 | ||
|
|
d9ddc17296 | ||
|
|
e295c45cb5 | ||
|
|
aa28afdc1f | ||
|
|
74ae2ea50a | ||
|
|
dc380a52c8 | ||
|
|
4af4028cc1 | ||
|
|
b869df404e | ||
|
|
b8f005e2b1 | ||
|
|
ee9ff70702 | ||
|
|
fe4e9dd781 | ||
|
|
6b46a7d4f2 |
13 changed files with 2570 additions and 303 deletions
|
|
@ -1 +0,0 @@
|
|||
mpfr-2.3.0.tar.bz2
|
||||
1
.fmf/version
Normal file
1
.fmf/version
Normal file
|
|
@ -0,0 +1 @@
|
|||
1
|
||||
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
/mpfr-*.zip
|
||||
/mpfr-*.tar.xz
|
||||
21
Makefile
21
Makefile
|
|
@ -1,21 +0,0 @@
|
|||
# Makefile for source rpm: mpfr
|
||||
# $Id$
|
||||
NAME := mpfr
|
||||
SPECFILE = $(firstword $(wildcard *.spec))
|
||||
|
||||
define find-makefile-common
|
||||
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(find-makefile-common))
|
||||
|
||||
ifeq ($(MAKEFILE_COMMON),)
|
||||
# attept a checkout
|
||||
define checkout-makefile-common
|
||||
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
|
||||
endif
|
||||
|
||||
include $(MAKEFILE_COMMON)
|
||||
16
README.md
Normal file
16
README.md
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
# mpfr
|
||||
|
||||
The [MPFR library](https://www.mpfr.org/) is a C library for
|
||||
multiple-precision floating-point computations with _correct rounding_. MPFR
|
||||
has continuously been supported by [INRIA](https://www.inria.fr/) and the
|
||||
current main authors come from the [Caramba](https://caramba.loria.fr/) and
|
||||
[AriC](http://www.ens-lyon.fr/LIP/AriC/) project teams at
|
||||
[Loria](https://www.loria.fr/) (Nancy, France) and
|
||||
[LIP](http://www.ens-lyon.fr/LIP/) (Lyon, France) respectively; see more on
|
||||
the [credit page](https://www.mpfr.org/credit.html). MPFR is based on the
|
||||
[GMP](https://gmplib.org/) multiple-precision library.
|
||||
|
||||
The main goal of MPFR is to provide a library for multiple-precision
|
||||
floating-point computation which is both efficient and has a well-defined
|
||||
semantics. It copies the good ideas from the ANSI/IEEE-754 standard for
|
||||
double-precision floating-point arithmetic (53-bit significand).
|
||||
7
STAGE1-mpfr
Normal file
7
STAGE1-mpfr
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
L=$1
|
||||
srpm $L
|
||||
mcd $BUILDDIR/t-$L
|
||||
$SRC/${L}-*/configure $TCONFIGARGS
|
||||
make $J
|
||||
make $J install DESTDIR=${ROOTFS}
|
||||
fix_la $L
|
||||
2194
allpatches
Normal file
2194
allpatches
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -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";
|
||||
}
|
||||
385
mpfr.spec
385
mpfr.spec
|
|
@ -1,90 +1,361 @@
|
|||
Summary: A C library for multiple-precision floating-point computations
|
||||
Summary: C library for multiple-precision floating-point computations
|
||||
Name: mpfr
|
||||
Version: 2.3.0
|
||||
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)
|
||||
BuildRequires: autoconf libtool gmp-devel
|
||||
Requires(post): /sbin/ldconfig
|
||||
Requires(postun): /sbin/ldconfig
|
||||
Requires: gmp >= 4.2.1
|
||||
Version: 4.2.2
|
||||
Release: 2%{?dist}
|
||||
URL: https://www.mpfr.org/
|
||||
VCS: git:https://gitlab.inria.fr/mpfr/mpfr.git
|
||||
|
||||
License: LGPL-3.0-or-later
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gmp-devel
|
||||
BuildRequires: make
|
||||
BuildRequires: texinfo
|
||||
|
||||
Source: https://www.mpfr.org/%{name}-%{version}/%{name}-%{version}.tar.xz
|
||||
|
||||
# Upstream post-release patches. This currently contains:
|
||||
#Patch0: https://www.mpfr.org/%%{name}-%%{version}/allpatches
|
||||
|
||||
%description
|
||||
The MPFR library is a C library for multiple-precision floating-point
|
||||
computations with "correct rounding". The MPFR is efficient and
|
||||
also has a well-defined semantics. It copies the good ideas from the
|
||||
ANSI/IEEE-754 standard for double-precision floating-point arithmetic
|
||||
computations with "correct rounding". The MPFR is efficient and
|
||||
also has a well-defined semantics. It copies the good ideas from the
|
||||
ANSI/IEEE-754 standard for double-precision floating-point arithmetic
|
||||
(53-bit mantissa). MPFR is based on the GMP multiple-precision library.
|
||||
|
||||
%package devel
|
||||
Summary: Development tools A C library for mpfr library
|
||||
Group: Development/Libraries
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Requires(post): /sbin/install-info
|
||||
Requires(preun): /sbin/install-info
|
||||
Summary: Development files for the MPFR library
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
Requires: gmp-devel%{?_isa}
|
||||
|
||||
%description devel
|
||||
The static libraries, header files and documentation for using the MPFR
|
||||
Header files and documentation for using the MPFR
|
||||
multiple-precision floating-point library in applications.
|
||||
|
||||
If you want to develop applications which will use the MPFR library,
|
||||
you'll need to install the mpfr-devel package. You'll also need to
|
||||
you'll need to install the mpfr-devel package. You'll also need to
|
||||
install the mpfr package.
|
||||
|
||||
%package doc
|
||||
Summary: Documentation for the MPFR library
|
||||
License: GFDL-1.2-no-invariants-or-later
|
||||
BuildArch: noarch
|
||||
|
||||
%description doc
|
||||
Documentation for the MPFR library.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch0 -p1 -b .up
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
%configure --disable-assert --disable-static
|
||||
|
||||
%configure --disable-assert
|
||||
make %{?_smp_mflags}
|
||||
# Get rid of undesirable hardcoded rpaths; workaround libtool reordering
|
||||
# -Wl,--as-needed after all the libraries.
|
||||
sed -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \
|
||||
-e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \
|
||||
-e 's|CC="\(g..\)"|CC="\1 -Wl,--as-needed"|' \
|
||||
-i libtool
|
||||
|
||||
%make_build
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
iconv -f iso-8859-1 -t utf-8 mpfr.info >mpfr.info.aux
|
||||
mv mpfr.info.aux mpfr.info
|
||||
make install DESTDIR=$RPM_BUILD_ROOT
|
||||
rm -f $RPM_BUILD_ROOT%{_libdir}/libmpfr.la
|
||||
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
|
||||
rm -f $RPM_BUILD_ROOT%{_libdir}/libmpfr.a
|
||||
cd ..
|
||||
%make_install
|
||||
cp -p ChangeLog PATCHES README %{buildroot}%{_pkgdocdir}
|
||||
rm -f %{buildroot}%{_libdir}/*.la
|
||||
rm -f %{buildroot}%{_infodir}/dir
|
||||
|
||||
#these go into licenses, not doc
|
||||
rm -f %{buildroot}%{_pkgdocdir}/COPYING{,.LESSER}
|
||||
|
||||
%check
|
||||
make %{?_smp_mflags} check
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%post devel
|
||||
/sbin/install-info %{_infodir}/mpfr.info.gz %{_infodir}/dir || :
|
||||
|
||||
%preun devel
|
||||
if [ "$1" = 0 ]; then
|
||||
/sbin/install-info --delete %{_infodir}/mpfr.info.gz %{_infodir}/dir || :
|
||||
fi
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
export LD_LIBRARY_PATH=%{buildroot}%{_libdir}
|
||||
%make_build check
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%doc COPYING COPYING.LIB NEWS README
|
||||
%{_libdir}/libmpfr.so.*
|
||||
%license COPYING COPYING.LESSER
|
||||
%dir %{_pkgdocdir}
|
||||
%{_pkgdocdir}/NEWS
|
||||
%{_pkgdocdir}/README
|
||||
%{_libdir}/libmpfr.so.6*
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root,-)
|
||||
%{_libdir}/libmpfr.so
|
||||
%{_includedir}/*.h
|
||||
%{_includedir}/mpfr.h
|
||||
%{_includedir}/mpf2mpfr.h
|
||||
%{_libdir}/pkgconfig/mpfr.pc
|
||||
|
||||
%files doc
|
||||
%license COPYING COPYING.LESSER
|
||||
%dir %{_pkgdocdir}
|
||||
%{_pkgdocdir}/AUTHORS
|
||||
%{_pkgdocdir}/BUGS
|
||||
%{_pkgdocdir}/ChangeLog
|
||||
%{_pkgdocdir}/FAQ.html
|
||||
%{_pkgdocdir}/PATCHES
|
||||
%{_pkgdocdir}/TODO
|
||||
%{_pkgdocdir}/examples
|
||||
%{_infodir}/mpfr.info*
|
||||
|
||||
%changelog
|
||||
* Thu Jul 24 2025 Fedora Release Engineering <releng@fedoraproject.org> - 4.2.2-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
|
||||
|
||||
* Thu Mar 20 2025 Jerry James <loganjerry@gmail.com> - 4.2.2-1
|
||||
- Update to MPFR 4.2.2
|
||||
|
||||
* Fri Jan 17 2025 Fedora Release Engineering <releng@fedoraproject.org> - 4.2.1-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
||||
|
||||
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4.2.1-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
||||
|
||||
* Thu May 9 2024 Jerry James <loganjerry@gmail.com> - 4.2.1-4
|
||||
- Own the documentation directory (bz 2279758)
|
||||
|
||||
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4.2.1-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4.2.1-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Wed Oct 4 2023 Jerry James <loganjerry@gmail.com> - 4.2.1-1
|
||||
- Update to MPFR 4.2.1
|
||||
|
||||
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 4.2.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Tue Jul 18 2023 Jerry James <loganjerry@gmail.com> - 4.2.0-2
|
||||
- Update to MPFR 4.2.0-p12
|
||||
|
||||
* Wed Jul 12 2023 Jerry James <loganjerry@gmail.com> - 4.2.0-1
|
||||
- Update to MPFR 4.2.0-p9
|
||||
|
||||
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.1-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Wed Nov 23 2022 Jerry James <loganjerry@gmail.com> - 4.1.1-2
|
||||
- Update to MPFR 4.1.1-p1
|
||||
|
||||
* Thu Nov 17 2022 Jerry James <loganjerry@gmail.com> - 4.1.1-1
|
||||
- Update to MPFR version 4.1.1
|
||||
- Drop all patches
|
||||
- Convert License tags to SPDX
|
||||
|
||||
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-10
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-9
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Fri Jan 14 2022 Jerry James <loganjerry@gmail.com> - 4.1.0-8
|
||||
- Remove old obsoletes used in the 3.x to 4.x transition
|
||||
|
||||
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-8
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Sat May 22 2021 Jerry James <loganjerry@gmail.com> - 4.1.0-7
|
||||
- Add upstream patches 12-13
|
||||
|
||||
* Tue Apr 13 2021 Jerry James <loganjerry@gmail.com> - 4.1.0-6
|
||||
- Add upstream patches 10-11
|
||||
|
||||
* Tue Mar 9 2021 Jerry James <loganjerry@gmail.com> - 4.1.0-5
|
||||
- Add upstream patches 8-9
|
||||
|
||||
* Wed Feb 17 2021 Jerry James <loganjerry@gmail.com> - 4.1.0-4
|
||||
- Add upstream patches 1-7
|
||||
|
||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Sat Jul 11 2020 Jerry James <loganjerry@gmail.com> - 4.1.0-1
|
||||
- Update to MPFR version 4.1.0
|
||||
- Drop all patches
|
||||
|
||||
* Mon Jun 29 2020 Jerry James <loganjerry@gmail.com> - 4.0.2-5
|
||||
- Add upstream patches 8 and 9
|
||||
|
||||
* Thu Apr 16 2020 Jerry James <loganjerry@gmail.com> - 4.0.2-4
|
||||
- Add upstream patches 2 through 7
|
||||
|
||||
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.2-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Fri Oct 11 2019 Jerry James <loganjerry@gmail.com> - 4.0.2-2
|
||||
- Drop the mpfr3 and mpfr3-devel subpackages
|
||||
|
||||
* Tue Oct 8 2019 Jerry James <loganjerry@gmail.com> - 4.0.2-1
|
||||
- Update to MPFR version 4.0.2 plus patch01
|
||||
- Make mpfr3 and mpfr3-devel subpackages for version 3.1.6
|
||||
- Add a -doc subpackage to hold the GFDL-licensed content
|
||||
- The main package license is LGPLv3+; the GPLv3+ content is not packaged
|
||||
- Drop unnecessary autoconf and libtool BRs
|
||||
- Drop explicit R on gmp; it is autogenerated
|
||||
- Drop info scriptlets; this version can never appear in Fedora < 32 or RHEL < 9
|
||||
- Drop ldconfig_scriptlets for the same reason
|
||||
- Make sure there are no rpaths and that -Wl,--as-needed takes effect
|
||||
- Do not use the %%doc macro; the files have already been copied
|
||||
|
||||
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.1.6-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.1.6-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Tue Oct 30 2018 Rex Dieter <rdieter@fedoraproject.org> - 3.1.6-3
|
||||
- update scriptlets (#1644106)
|
||||
- use %%make_build %%make_install
|
||||
|
||||
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.1.6-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||
|
||||
* Sun Feb 25 2018 James Paul Turner <jamesturner246@fedoraproject.org> - 3.1.6-1
|
||||
- Update to MPFR version 3.1.6
|
||||
- Use autosetup specfile macro for applying patches (patches 1 and 2 applied)
|
||||
- Removed iconv calls, as they were breaking .info files, which are now unicode
|
||||
resolves #1299649
|
||||
- Other minor cleanups
|
||||
- BuildRequire gcc per https://fedoraproject.org/wiki/Packaging:C_and_C%2B%2B#BuildRequires_and_Requires
|
||||
|
||||
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.1.5-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||
|
||||
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.1.5-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
||||
|
||||
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.1.5-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
||||
|
||||
* Sat Mar 4 2017 Peter Robinson <pbrobinson@fedoraproject.org> 3.1.5-3
|
||||
- Examples should be in devel
|
||||
- Minor cleanups
|
||||
|
||||
* Wed Feb 01 2017 Stephen Gallagher <sgallagh@redhat.com> - 3.1.5-2
|
||||
- Add missing %%license macro
|
||||
|
||||
* Tue Sep 27 2016 Frantisek Kluknavsky <fkluknav@redhat.com> - 3.1.5-1
|
||||
- rebase
|
||||
|
||||
* Tue Mar 08 2016 Frantisek Kluknavsky <fkluknav@redhat.com> - 3.1.4-1
|
||||
- Rebase
|
||||
|
||||
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.1.3-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
||||
|
||||
* Thu Jan 21 2016 Dan Horák <dan[at]danny.cz> - 3.1.3-3
|
||||
- drop support for F<20
|
||||
|
||||
* Fri Oct 23 2015 David Sommerseth <davids@redhat.com> - 3.1.3-2
|
||||
- Fixed missing packaging of doc files
|
||||
|
||||
* Tue Jun 23 2015 Frantisek Kluknavsky <fkluknav@redhat.com> - 3.1.3-1
|
||||
- rebase to 3.1.3
|
||||
- limboverflow.patch already in tarball, dropped
|
||||
|
||||
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.2-9
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
||||
|
||||
* Fri Dec 12 2014 Frantisek Kluknavsky <fkluknav@redhat.com> - 3.1.2-8
|
||||
- added limboverflow.patch, rhbz#1171701, rhbz#1171710, there was one less limb allocated in strtofr
|
||||
|
||||
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.2-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
||||
|
||||
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.2-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
||||
|
||||
* Tue Aug 06 2013 Ralf Corsépius <corsepiu@fedoraproject.org> - 3.1.2-4
|
||||
- Install docs into unversioned docdir (Fix FTBFS RHBZ#992296).
|
||||
- Append --disable-static to %%configure.
|
||||
- Fix broken %%changelog date.
|
||||
- Remove stray cd ..
|
||||
|
||||
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.2-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
|
||||
|
||||
* Tue Jul 02 2013 Karsten Hopp <karsten@redhat.com> 3.1.2-2
|
||||
- bump release and rebuild to fix dependencies on PPC
|
||||
|
||||
* Fri Mar 22 2013 Frantisek Kluknavsky <fkluknav@redhat.com> - 3.1.2-1
|
||||
- Rebase to 3.1.2
|
||||
|
||||
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.1-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
|
||||
|
||||
* Thu Jul 26 2012 Peter Schiffer <pschiffe@redhat.com> - 3.1.1-1
|
||||
- resolves: #837563
|
||||
update to 3.1.1
|
||||
|
||||
* Fri Jul 20 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
|
||||
|
||||
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
||||
|
||||
* Thu Nov 10 2011 Peter Schiffer <pschiffe@redhat.com> - 3.1.0-1
|
||||
- resolves: #743237
|
||||
update to 3.1.0
|
||||
- removed compatibility symlinks and provides
|
||||
|
||||
* Wed Oct 26 2011 Marcela Mašláňová <mmaslano@redhat.com> - 3.0.0-4.2
|
||||
- rebuild with new gmp without compat lib
|
||||
|
||||
* Wed Oct 12 2011 Peter Schiffer <pschiffe@redhat.com> - 3.0.0-4.1
|
||||
- rebuild with new gmp
|
||||
|
||||
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0.0-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
|
||||
|
||||
* Tue Dec 7 2010 Dan Horák <dan[at]danny.cz> 3.0.0-3
|
||||
- update the compat Provides for non-x86 arches
|
||||
|
||||
* Wed Dec 1 2010 Ivana Hutarova Varekova <varekova@redhat.com> 3.0.0-2
|
||||
- fix -devel description (see 603021#c3)
|
||||
|
||||
* Tue Nov 16 2010 Ivana Hutarova Varekova <varekova@redhat.com> 3.0.0-1
|
||||
- update to 3.0.0
|
||||
- created links and provides to .1
|
||||
|
||||
* Fri Dec 18 2009 Ivana Hutarova Varekova <varekova@redhat.com> 2.4.2-1
|
||||
- update to 2.4.2
|
||||
|
||||
* Fri Nov 13 2009 Ivana Varekova <varekova@redhat.com> 2.4.1-5
|
||||
- fix 537328 - mpfr-devel should "Requires: gmp-devel"
|
||||
|
||||
* Wed Aug 12 2009 Ville Skyttä <ville.skytta@iki.fi> - 2.4.1-4
|
||||
- Use lzma compressed upstream tarball.
|
||||
|
||||
* Mon Aug 10 2009 Ivana Varekova <varekova redhat com> 2.4.1-3
|
||||
- fix installation with --excludedocs option (#515958)
|
||||
|
||||
* Sat Jul 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.4.1-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
|
||||
|
||||
* Wed Mar 11 2009 Ivana Varekova <varekova@redhat.com> - 2.4.1-1
|
||||
- update to 2.4.1
|
||||
|
||||
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.4.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
|
||||
|
||||
* Wed Feb 4 2009 Ivana Varekova <varekova@redhat.com> - 2.4.0-1
|
||||
- update to 2.4.0
|
||||
|
||||
* Wed Oct 15 2008 Ivana Varekova <varekova@redhat.com> - 2.3.2-1
|
||||
- update to 2.3.2
|
||||
|
||||
* Mon Jul 21 2008 Ivana Varekova <varekova@redhat.com> - 2.3.1-1
|
||||
- update to 2.3.1
|
||||
|
||||
* Wed Feb 20 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 2.3.0-3
|
||||
- Autorebuild for GCC 4.3
|
||||
|
||||
* Fri Jan 18 2008 Ivana Varekova <varekova@redhat.com> 2.3.0-2
|
||||
- rebuilt
|
||||
|
||||
* Thu Sep 20 2007 Ivana Varekova <varekova@redhat.com> 2.3.0-1
|
||||
- update to 2.3.0
|
||||
- fix license flag
|
||||
|
|
@ -92,6 +363,6 @@ rm -rf $RPM_BUILD_ROOT
|
|||
* Mon Aug 20 2007 Ivana Varekova <varekova@redhat.com> 2.2.1-2
|
||||
- spec file cleanup (#253440)
|
||||
|
||||
* Mon Jan 16 2007 Ivana Varekova <varekova@redhat.com> 2.2.1-1
|
||||
* Tue Jan 16 2007 Ivana Varekova <varekova@redhat.com> 2.2.1-1
|
||||
- started
|
||||
|
||||
|
|
|
|||
5
plans/ci.fmf
Normal file
5
plans/ci.fmf
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
summary: Basic smoke test
|
||||
discover:
|
||||
how: fmf
|
||||
execute:
|
||||
how: tmt
|
||||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
cf7c743e4be122e63eb6f372fc58b657 mpfr-2.3.0.tar.bz2
|
||||
SHA512 (mpfr-4.2.2.tar.xz) = eb9e7f51b5385fb349cc4fba3a45ffdf0dd53be6dfc74932dc01258158a10514667960c530c47dd9dfc5aa18be2bd94859d80499844c5713710581e6ac6259a9
|
||||
|
|
|
|||
6
tests/silvester-number/main.fmf
Normal file
6
tests/silvester-number/main.fmf
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
summary: Calculate Silvester Number
|
||||
framework: shell
|
||||
test: ./test.sh
|
||||
component: mpfr
|
||||
recommends:
|
||||
- gawk
|
||||
10
tests/silvester-number/test.sh
Executable file
10
tests/silvester-number/test.sh
Executable file
|
|
@ -0,0 +1,10 @@
|
|||
#!/bin/sh -eux
|
||||
|
||||
OUT="$(gawk -M 'BEGIN {
|
||||
s = 2
|
||||
for (i = 1; i <= 7; i++)
|
||||
s = s * (s - 1) + 1
|
||||
print s
|
||||
}')"
|
||||
|
||||
test "$OUT" = "113423713055421844361000443"
|
||||
Loading…
Add table
Add a link
Reference in a new issue