commit f70deed0f0b040a891133c326022ed550e01a2cc Author: Jakub Bogusz <qbo...@pld-linux.org> Date: Sun Jul 9 22:13:35 2023 +0200
- new, but 2 tests fail mpfi-info.patch | 14 ++++++ mpfi-missing.patch | 41 ++++++++++++++++ mpfi.spec | 134 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 189 insertions(+) --- diff --git a/mpfi.spec b/mpfi.spec new file mode 100644 index 0000000..c79e766 --- /dev/null +++ b/mpfi.spec @@ -0,0 +1,134 @@ +# +# Conditional build: +%bcond_without static_libs # static library +%bcond_without tests # unit tests +# +Summary: Multiple-precision floating-point interval library +Summary(pl.UTF-8): Biblioteka przedziałów zmiennoprzecinkowych wielokrotnej precyzji +Name: mpfi +Version: 1.5.4 +Release: 1 +License: LGPL v2.1+ +Group: Libraries +Source0: http://perso.ens-lyon.fr/nathalie.revol/softwares/%{name}-%{version}.tar.xz +# Source0-md5: efff5c254d1af49f42ed75cbcd9166db +Patch0: %{name}-info.patch +Patch1: %{name}-missing.patch +URL: http://perso.ens-lyon.fr/nathalie.revol/software.html +BuildRequires: gmp-devel >= 4.1 +BuildRequires: mpfr-devel >= 4.0.1 +BuildRequires: tar >= 1:1.22 +BuildRequires: texinfo +BuildRequires: xz +Requires: gmp >= 4.1 +Requires: mpfr >= 4.0.1 +BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) + +%description +MPFI is intended to be a portable library written in C for arbitrary +precision interval arithmetic with intervals represented using MPFR +reliable floating-point numbers. It is based on the GNU MP library and +on the MPFR library. The purpose of an arbitrary precision interval +arithmetic is on the one hand to get guaranteed results, thanks to +interval computation, and on the other hand to obtain accurate +results, thanks to multiple precision arithmetic. The MPFI library is +built upon MPFR in order to benefit from the correct rounding +provided, for each operation or function, by MPFR. Further advantages +of using MPFR are its portability and compliance with the IEEE 754 +standard for floating-point arithmetic. + +%description -l pl.UTF-8 +MPFI jest przenośną, napisaną w C biblioteką do obliczeń na +przedziałach dowolnej precyzji, z przedziałami reprezentowanymi przy +użyciu niezawodnych liczby zmiennoprzecinkowych MPFR. Jest oparta na +bibliotekach GNU MP i MPFR. Celem arytmetyki na przedziałach dowolnej +precyzji jest gwarancja wyników, dzięki obliczeniom przedziałów, a +także dokładność wyników, dzięki arytmetyce wielokrotnej precyzji. +Biblioteka MPFI jest zbudowana w oparciu o MPFR, aby wykorzystać +poprawne zaokrąglenia przy każdej operacji lub funkcji wykonywanej +przez MPFR. Inne zalety MPFR to przenośność i zgodność ze standardem +IEEE 754 dla arytmetyki zmiennoprzecinkowej. + +%package devel +Summary: Header files for MPFI library +Summary(pl.UTF-8): Pliki nagłówkowe biblioteki MPFI +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} +Requires: gmp-devel >= 4.1 +Requires: mpfr-devel >= 4.0.1 + +%description devel +Header files for MPFI library. + +%description devel -l pl.UTF-8 +Pliki nagłówkowe biblioteki MPFI. + +%package static +Summary: Static MPFI library +Summary(pl.UTF-8): Statyczna biblioteka MPFI +Group: Development/Libraries +Requires: %{name}-devel = %{version}-%{release} + +%description static +Static MPFI library. + +%description static -l pl.UTF-8 +Statyczna biblioteka MPFI. + +%prep +%setup -q +%patch0 -p1 +%patch1 -p1 + +%build +%configure \ + %{!?with_static_libs:--disable-static} + +%{__make} + +%if %{with tests} +%{__make} check +%endif + +%install +rm -rf $RPM_BUILD_ROOT + +%{__make} install \ + DESTDIR=$RPM_BUILD_ROOT + +# obsoleted by pkg-config +%{__rm} $RPM_BUILD_ROOT%{_libdir}/libmpfi.la +# packaged as %doc +%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/mpfi + +rm -f $RPM_BUILD_ROOT%{_infodir}/dir + +%clean +rm -rf $RPM_BUILD_ROOT + +%post -p /sbin/ldconfig +%postun -p /sbin/ldconfig + +%post devel -p /sbin/postshell +-/usr/sbin/fix-info-dir -c %{_infodir} + +%postun devel -p /sbin/postshell +-/usr/sbin/fix-info-dir -c %{_infodir} + +%files +%defattr(644,root,root,755) +%doc AUTHORS ChangeLog NEWS README TODO +%attr(755,root,root) %{_libdir}/libmpfi.so.*.*.* +%attr(755,root,root) %ghost %{_libdir}/libmpfi.so.0 + +%files devel +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/libmpfi.so +%{_includedir}/mpfi.h +%{_includedir}/mpfi_io.h +%{_pkgconfigdir}/mpfi.pc +%{_infodir}/mpfi.info* + +%files static +%defattr(644,root,root,755) +%{_libdir}/libmpfi.a diff --git a/mpfi-info.patch b/mpfi-info.patch new file mode 100644 index 0000000..24f0b3f --- /dev/null +++ b/mpfi-info.patch @@ -0,0 +1,14 @@ +--- mpfi-1.5.4/doc/mpfi.texi.orig 2022-03-25 17:57:26.000000000 +0100 ++++ mpfi-1.5.4/doc/mpfi.texi 2023-07-07 21:33:43.704071666 +0200 +@@ -8,9 +8,9 @@ + @end iftex + @comment %**end of header + +-@dircategory Software libraries ++@dircategory Libraries: + @direntry +-* mpfi: (mpfi.info). Multiple Precision Floating-Point Interval Library. ++* mpfi: (mpfi.info). Multiple Precision Floating-Point Interval Library + @end direntry + + @c smallbook diff --git a/mpfi-missing.patch b/mpfi-missing.patch new file mode 100644 index 0000000..17f7228 --- /dev/null +++ b/mpfi-missing.patch @@ -0,0 +1,41 @@ +--- mpfi-1.5.4/tests/exp10.dat.orig 1970-01-01 01:00:00.000000000 +0100 ++++ mpfi-1.5.4/tests/exp10.dat 2023-07-07 21:25:42.226680053 +0200 +@@ -0,0 +1,38 @@ ++# data file for mpfi_exp10 ++# ++# column fields: ++# 1: inexact flag (returned value) ++# 2: precision of result ++# 3: left endpoint value of result ++# 4: right endpoint value of result ++# ++# 5: precision of input parameter ++# 6: left endpoint value of input parameter ++# 7: right endpoint value of input parameter ++ ++# special values ++0 53 nan nan 53 nan nan ++0 53 nan -0 53 nan -inf ++0 53 10 nan 53 1 nan ++0 53 nan 1 53 nan -0 ++0 53 1 nan 53 +0 nan ++0 53 nan 10 53 nan 1 ++0 53 +inf nan 53 +inf nan ++0 53 +0 -0 53 -inf -inf ++0 53 +0 10 53 -inf 1 ++0 53 +0 1 53 -inf -0 ++0 53 +0 100 53 -inf 2 ++0 53 +0 +inf 53 -inf +inf ++0 53 1 1 53 +0 -0 ++0 53 1 10 53 +0 +1 ++0 53 1 +inf 53 +0 +inf ++0 53 +inf +inf 53 +inf +inf ++ ++# regular values ++0 53 100 100000 53 2 5 ++0 53 1000 10000 53 3 4 ++3 53 0xb.ff911208aecc8p-4 0x1.c73d51c54470fp+0 53 -0.125 0.25 ++1 53 0xb.ff911208aecc8p-4 1 53 -0.125 -0 ++2 53 1 0x1.c73d51c54470fp+0 53 +0 0.25 ++3 53 0x1.00000000002ep+0 0x1.000000000032bp+0 53 0xap-47 0xbp-47 ++3 53 0x4.378b053ea2148p+0 0x2.6b69b3525bbc4p+4676 53 0xap-4 0xbp7 ================================================================ ---- gitweb: http://git.pld-linux.org/gitweb.cgi/packages/mpfi.git/commitdiff/f70deed0f0b040a891133c326022ed550e01a2cc _______________________________________________ pld-cvs-commit mailing list pld-cvs-commit@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit