From d309727195f379aaa8e16efc7ec66ebfaec0c7a41d4bf3b87abdb5dd077ab781 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sat, 2 Nov 2024 22:24:29 +0000 Subject: [PATCH 1/2] [info=07b6b976e0b7c9d220a5c9259ebcb8cb537534a1fa2aa1e58ee54b18e7a4c98a] OBS-URL: https://build.opensuse.org/package/show/science/mpfi?expand=0&rev=7 --- .gitattributes | 23 +++++++++ .gitignore | 1 + _scmsync.obsinfo | 4 ++ build.specials.obscpio | 3 ++ mpfi-1.5.4.tgz | 3 ++ mpfi.changes | 30 ++++++++++++ mpfi.spec | 106 +++++++++++++++++++++++++++++++++++++++++ 7 files changed, 170 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 _scmsync.obsinfo create mode 100644 build.specials.obscpio create mode 100644 mpfi-1.5.4.tgz create mode 100644 mpfi.changes create mode 100644 mpfi.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/_scmsync.obsinfo b/_scmsync.obsinfo new file mode 100644 index 0000000..4fcb663 --- /dev/null +++ b/_scmsync.obsinfo @@ -0,0 +1,4 @@ +mtime: 1566894105 +commit: 07b6b976e0b7c9d220a5c9259ebcb8cb537534a1fa2aa1e58ee54b18e7a4c98a +url: https://src.opensuse.org/jengelh/mpfi +revision: master diff --git a/build.specials.obscpio b/build.specials.obscpio new file mode 100644 index 0000000..a371691 --- /dev/null +++ b/build.specials.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e3e46f4666ad7463c8cdb2edf6be127570f42f341cb9e72512c55641c16fe43 +size 256 diff --git a/mpfi-1.5.4.tgz b/mpfi-1.5.4.tgz new file mode 100644 index 0000000..b41a74b --- /dev/null +++ b/mpfi-1.5.4.tgz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b3938595d720af17973deaf727cfc0dd41c8b16c20adc103a970f4a43ae3a56 +size 261696 diff --git a/mpfi.changes b/mpfi.changes new file mode 100644 index 0000000..ff993bc --- /dev/null +++ b/mpfi.changes @@ -0,0 +1,30 @@ +------------------------------------------------------------------- +Sat Aug 24 20:24:49 UTC 2019 - Jan Engelhardt + +- Update to new upstream release 1.5.4 + * mp_exp_t replaced by mpfr_exp_t, mp_prec_t replaced by + mpfr_prec_t, mp_rnd_t replaced by mpfr_rnd_t GMP_RNDx + replaced by MPFR_RNDx. + +------------------------------------------------------------------- +Fri Jan 19 00:06:44 UTC 2018 - jengelh@inai.de + +- Update to new upstream release 1.5.3 + * be compatible with MPFR version 4.0.0 +- Changes introduced with 1.5.2 + * fix documentation of comparison functions + * fix bug in mpfi_sub_fr + * new symbols MPFI_VERSION_MAJOR, MPFI_VERSION_MINOR, + MPFI_VERSION_PATCHLEVEL, and MPFI_VERSION_STRING in mpfi.h + * detect availability of mpfr_z_sub, mpfr_z_div, and mpfr_q_sub + and use a custom implementation for the ones not provided by + MPFR (mpfr_z_sub appeared in MPFR 3.1.0, the other ones are + used in tests only) + * tadd_q does no more check overflow by default (required too + much memory) + * sign of zeros choice documented + +------------------------------------------------------------------- +Thu Dec 13 23:03:23 UTC 2012 - jengelh@inai.de + +- Initial package (version 1.5.1) for build.opensuse.org diff --git a/mpfi.spec b/mpfi.spec new file mode 100644 index 0000000..a285f9b --- /dev/null +++ b/mpfi.spec @@ -0,0 +1,106 @@ +# +# spec file for package mpfi +# +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +Name: mpfi +%define lname libmpfi0 +Version: 1.5.4 +Release: 0 +Summary: Multi-precision floating-point interval arithmetic computation library +License: LGPL-2.1-or-later +Group: Productivity/Scientific/Math +URL: http://mpfi.gforge.inria.fr/ + +#SVN-Clone: svn://scm.gforge.inria.fr/svnroot/mpfi/trunk +# Download depends on the file ID, not the filename! +Source: https://gforge.inria.fr/frs/download.php/file/38111/mpfi-1.5.4.tgz +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: gmp-devel >= 4.1.0 +BuildRequires: libtool +BuildRequires: makeinfo +BuildRequires: mpfr-devel >= 3 +BuildRequires: pkgconfig +Requires(post): %install_info_prereq +Requires(postun): %install_info_prereq + +%description +MPFI is a C library for arbitrary precision interval arithmetic with +intervals represented using MPFR reliable floating-point numbers. + +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. + +%package -n %lname +Summary: Multi-precision floating-point interval arithmetic computation library +Group: System/Libraries + +%description -n %lname +MPFI is a C library for arbitrary precision interval arithmetic with +intervals represented using MPFR reliable floating-point numbers. + +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. + +%package devel +Summary: Development files for the MPFI interval arithmetic computation library +Group: Development/Libraries/C and C++ +Requires: %lname = %version + +%description devel +MPFI is a C library for arbitrary precision interval arithmetic with +intervals represented using MPFR reliable floating-point numbers. + +This subpackage provides the development headers and libraries for it. + +%prep +%autosetup -p1 + +%build +./autogen.sh +%configure --disable-static +make %{?_smp_mflags} + +%install +%make_install +rm -f "%buildroot/%_libdir"/*.la + +%check +#make check #upstream broke it in 1.5.4 + +%post -n %lname -p /sbin/ldconfig +%postun -n %lname -p /sbin/ldconfig + +%post devel +%install_info --info-dir="%_infodir" "%_infodir/mpfi.info.gz" + +%postun devel +%install_info_delete --info-dir="%_infodir" "%_infodir/mpfi.info.gz" + +%files -n %lname +%_libdir/libmpfi.so.0* + +%files devel +%_includedir/mpfi*.h +%_libdir/libmpfi.so +%_infodir/mpfi.info* + +%changelog From 58808c1dcc715edeb13c0b0fb1b2ceecb3f3c1e83cf2f74f0c09f894c515d5c6 Mon Sep 17 00:00:00 2001 From: OBS User unknown Date: Sat, 2 Nov 2024 22:32:40 +0000 Subject: [PATCH 2/2] [info=2dca0a50aa85f54c1c5c01ac8670599105818b0669a69603cd27353ae51e37e8] OBS-URL: https://build.opensuse.org/package/show/science/mpfi?expand=0&rev=8 --- 0001-incorret-types-corrected.patch | 60 +++++++++++++++++++++++++++++ _scmsync.obsinfo | 4 +- build.specials.obscpio | 2 +- mpfi.changes | 5 +++ mpfi.spec | 16 ++++---- 5 files changed, 76 insertions(+), 11 deletions(-) create mode 100644 0001-incorret-types-corrected.patch diff --git a/0001-incorret-types-corrected.patch b/0001-incorret-types-corrected.patch new file mode 100644 index 0000000..474c719 --- /dev/null +++ b/0001-incorret-types-corrected.patch @@ -0,0 +1,60 @@ +From a02e3f9cc10767cc4284a2ef6554f6df85e41982 Mon Sep 17 00:00:00 2001 +From: REVOL Nathalie +Date: Sat, 19 Mar 2022 18:09:45 +0100 +Subject: [PATCH] incorret types: corrected + +--- + mpfi/src/div_ext.c | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/mpfi/src/div_ext.c b/mpfi/src/div_ext.c +index 30cd3db..f1e5c2d 100644 +--- a/src/div_ext.c ++++ b/src/div_ext.c +@@ -59,17 +59,17 @@ mpfi_div_ext (mpfi_ptr res1, mpfi_ptr res2, mpfi_srcptr op1, mpfi_srcptr op2) + mpfr_init2 (tmp1, mpfi_get_prec(res1)); + mpfr_init2 (tmp2, mpfi_get_prec(res2)); + if ( mpfr_number_p (&(op2->left)) ) { +- tmp = mpfr_div (&(tmp2), &(op1->right), &(op2->left), MPFI_RNDD); ++ tmp = mpfr_div (tmp2, &(op1->right), &(op2->left), MPFI_RNDD); + } + else { /* denominator has infinite left endpoint */ +- mpfr_set_zero (&(tmp2), 1); ++ mpfr_set_zero (tmp2, 1); + } + + if ( mpfr_number_p (&(op2->right)) ) { +- tmp = mpfr_div ( &(tmp1), &(op1->right), &(op2->right), MPFI_RNDU); ++ tmp = mpfr_div ( tmp1, &(op1->right), &(op2->right), MPFI_RNDU); + } + else { /* denominator has infinite right endpoint */ +- mpfr_set_zero( &(tmp1), -1); ++ mpfr_set_zero( tmp1, -1); + } + + mpfr_set_inf (&(res1->left), -1); +@@ -86,17 +86,17 @@ mpfi_div_ext (mpfi_ptr res1, mpfi_ptr res2, mpfi_srcptr op1, mpfi_srcptr op2) + mpfr_init2 (tmp1, mpfi_get_prec(res1)); + mpfr_init2 (tmp2, mpfi_get_prec(res2)); + if ( mpfr_number_p (&(op2->left)) ) { +- tmp = mpfr_div (&(tmp1), &(op1->left), &(op2->left), MPFI_RNDU); ++ tmp = mpfr_div (tmp1, &(op1->left), &(op2->left), MPFI_RNDU); + } + else { /* denominator has infinite left endpoint */ +- mpfr_set_zero (&(tmp1), -1); ++ mpfr_set_zero (tmp1, -1); + } + + if ( mpfr_number_p (&(op2->right)) ) { +- tmp = mpfr_div ( &(tmp2), &(op1->left), &(op2->right), MPFI_RNDD); ++ tmp = mpfr_div ( tmp2, &(op1->left), &(op2->right), MPFI_RNDD); + } + else { /* denominator has infinite right endpoint */ +- mpfr_set_zero( &(tmp2), 1); ++ mpfr_set_zero( tmp2, 1); + } + mpfr_set_inf (&(res1->left), -1); + mpfr_set (&(res1->right), tmp1, MPFI_RNDU); +-- +2.47.0 + diff --git a/_scmsync.obsinfo b/_scmsync.obsinfo index 4fcb663..03cac6d 100644 --- a/_scmsync.obsinfo +++ b/_scmsync.obsinfo @@ -1,4 +1,4 @@ -mtime: 1566894105 -commit: 07b6b976e0b7c9d220a5c9259ebcb8cb537534a1fa2aa1e58ee54b18e7a4c98a +mtime: 1730586723 +commit: 2dca0a50aa85f54c1c5c01ac8670599105818b0669a69603cd27353ae51e37e8 url: https://src.opensuse.org/jengelh/mpfi revision: master diff --git a/build.specials.obscpio b/build.specials.obscpio index a371691..0ff402f 100644 --- a/build.specials.obscpio +++ b/build.specials.obscpio @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1e3e46f4666ad7463c8cdb2edf6be127570f42f341cb9e72512c55641c16fe43 +oid sha256:24ad0d0b50735089d8cc8ea35b1b1b18236f6ea06e509644e6836cf75c633dc1 size 256 diff --git a/mpfi.changes b/mpfi.changes index ff993bc..f18dbb1 100644 --- a/mpfi.changes +++ b/mpfi.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Sat Nov 2 22:31:23 UTC 2024 - Jan Engelhardt + +- Add 0001-incorret-types-corrected.patch + ------------------------------------------------------------------- Sat Aug 24 20:24:49 UTC 2019 - Jan Engelhardt diff --git a/mpfi.spec b/mpfi.spec index a285f9b..460aa8a 100644 --- a/mpfi.spec +++ b/mpfi.spec @@ -23,11 +23,11 @@ Release: 0 Summary: Multi-precision floating-point interval arithmetic computation library License: LGPL-2.1-or-later Group: Productivity/Scientific/Math -URL: http://mpfi.gforge.inria.fr/ - -#SVN-Clone: svn://scm.gforge.inria.fr/svnroot/mpfi/trunk -# Download depends on the file ID, not the filename! -Source: https://gforge.inria.fr/frs/download.php/file/38111/mpfi-1.5.4.tgz +URL: https://gitlab.inria.fr/mpfi/mpfi +# gforge is gone and replaced by gitlab; tarballs apparently not retained +#Source: https://gforge.inria.fr/frs/download.php/file/38111/mpfi-1.5.4.tgz +Source: %name-%version.tgz +Patch1: 0001-incorret-types-corrected.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: gmp-devel >= 4.1.0 @@ -77,7 +77,7 @@ This subpackage provides the development headers and libraries for it. %build ./autogen.sh %configure --disable-static -make %{?_smp_mflags} +%make_build %install %make_install @@ -86,8 +86,7 @@ rm -f "%buildroot/%_libdir"/*.la %check #make check #upstream broke it in 1.5.4 -%post -n %lname -p /sbin/ldconfig -%postun -n %lname -p /sbin/ldconfig +%ldconfig_scriptlets -n %lname %post devel %install_info --info-dir="%_infodir" "%_infodir/mpfi.info.gz" @@ -102,5 +101,6 @@ rm -f "%buildroot/%_libdir"/*.la %_includedir/mpfi*.h %_libdir/libmpfi.so %_infodir/mpfi.info* +%license COPYING* %changelog