From 0728fa7fbf8e377de29010f992a54b9d69fa68847eed6ec210b6c17387bcc9ac Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Mon, 8 Jul 2019 07:16:04 +0000 Subject: [PATCH 1/2] Accepting request 713885 from home:jengelh:branches:devel:libraries:c_c++ - Move prominent summary from description to the summary field, and update the main description. OBS-URL: https://build.opensuse.org/request/show/713885 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gmp?expand=0&rev=76 --- gmp.changes | 6 ++++++ gmp.spec | 20 ++++++++++++-------- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/gmp.changes b/gmp.changes index a7e021e..3f472a8 100644 --- a/gmp.changes +++ b/gmp.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Sun Jul 7 21:41:52 UTC 2019 - Jan Engelhardt + +- Move prominent summary from description to the summary field, + and update the main description. + ------------------------------------------------------------------- Mon Jul 1 07:48:02 UTC 2019 - Martin Liška diff --git a/gmp.spec b/gmp.spec index 68b1bb6..e50b962 100644 --- a/gmp.spec +++ b/gmp.spec @@ -19,9 +19,9 @@ Name: gmp Version: 6.1.2 Release: 0 -Summary: The GNU MP Library +Summary: A library for calculating huge numbers License: GPL-3.0-or-later AND LGPL-3.0-or-later -Group: System/Libraries +Group: Development/Libraries/C and C++ Url: https://gmplib.org/ Source0: https://gmplib.org/download/%{name}/%{name}-%{version}.tar.xz Source1: https://gmplib.org/download/%{name}/%{name}-%{version}.tar.xz.sig @@ -36,14 +36,18 @@ BuildRequires: xz BuildRoot: %{_tmppath}/%{name}-%{version}-build %description -A library for calculating huge numbers (integer and floating point). +GMP is a library for arbitrary precision arithmetic, operating on +signed integers, rational numbers, and floating-point numbers. There +is no practical limit to the precision except the ones implied by the +available memory in the machine GMP runs on. %package -n libgmp10 -Summary: Shared library for the GNU MP Library +Summary: A library for calculating huge numbers Group: System/Libraries %description -n libgmp10 -A library for calculating huge numbers (integer and floating point). +GMP is a library for arbitrary precision arithmetic, operating on +signed integers, rational numbers, and floating-point numbers. %package -n libgmpxx4 Summary: C++ bindings for the GNU MP Library @@ -51,10 +55,10 @@ Group: System/Libraries Requires: libgmp10 >= %{version} %description -n libgmpxx4 -A library for calculating huge numbers (integer and floating point). +GMP is a library for arbitrary precision arithmetic, operating on +signed integers, rational numbers, and floating-point numbers. -This package contains C++ bindings -C++ bindings for the GNU MP Library. +This package contains C++ bindings for the GNU MP Library. %package devel Summary: Include Files and Libraries for Development with the GNU MP Library From bdc1b892a88230b7aeb5b0091d8a5aa8d8c18fe8bd8716d9da7dc6b9456c6fd9 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Mon, 20 Jan 2020 07:56:31 +0000 Subject: [PATCH 2/2] Accepting request 765643 from home:AndreasStieger:branches:devel:libraries:c_c++ GMP 6.2.0 OBS-URL: https://build.opensuse.org/request/show/765643 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gmp?expand=0&rev=78 --- floating-point-format-no-lto.patch | 13 ------------ gmp-6.1.2-conftest.patch | 31 ----------------------------- gmp-6.1.2.tar.xz | 3 --- gmp-6.1.2.tar.xz.sig | Bin 351 -> 0 bytes gmp-6.2.0.tar.xz | 3 +++ gmp-6.2.0.tar.xz.sig | Bin 0 -> 374 bytes gmp-noexec.diff | 13 ------------ gmp.changes | 19 ++++++++++++++++++ gmp.spec | 23 ++++++--------------- 9 files changed, 28 insertions(+), 77 deletions(-) delete mode 100644 floating-point-format-no-lto.patch delete mode 100644 gmp-6.1.2-conftest.patch delete mode 100644 gmp-6.1.2.tar.xz delete mode 100644 gmp-6.1.2.tar.xz.sig create mode 100644 gmp-6.2.0.tar.xz create mode 100644 gmp-6.2.0.tar.xz.sig delete mode 100644 gmp-noexec.diff diff --git a/floating-point-format-no-lto.patch b/floating-point-format-no-lto.patch deleted file mode 100644 index 0041e4f..0000000 --- a/floating-point-format-no-lto.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/configure b/configure -index 12ddffd..a7890ed 100755 ---- a/configure -+++ b/configure -@@ -24563,7 +24563,7 @@ struct foo foo = { - { '\376', '\334', '\272', '\230', '\166', '\124', '\062', '\020' }, - }; - EOF --gmp_compile="$CC $CFLAGS $CPPFLAGS -c conftest.c >&5 2>&1" -+gmp_compile="$CC $CFLAGS $CPPFLAGS -fno-lto -c conftest.c >&5 2>&1" - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$gmp_compile\""; } >&5 - (eval $gmp_compile) 2>&5 - ac_status=$? diff --git a/gmp-6.1.2-conftest.patch b/gmp-6.1.2-conftest.patch deleted file mode 100644 index 65d5868..0000000 --- a/gmp-6.1.2-conftest.patch +++ /dev/null @@ -1,31 +0,0 @@ ---- acinclude.m4.orig 2017-01-04 11:40:34.672561902 +0100 -+++ acinclude.m4 2017-01-04 11:40:42.324648573 +0100 -@@ -741,7 +741,7 @@ - long i; - for (i = 0; i < 88 + 1; i++) - a[i] = ~0L; -- r = malloc (10000 * sizeof (unsigned long)); -+ r = calloc (10000, sizeof (unsigned long)); - r2 = r; - for (i = 0; i < 528; i += 23) - { ---- configure.orig 2017-01-04 11:42:54.678147652 +0100 -+++ configure 2017-01-04 11:46:36.468659624 +0100 -@@ -6776,7 +6776,7 @@ - long i; - for (i = 0; i < 88 + 1; i++) - a[i] = ~0L; -- r = malloc (10000 * sizeof (unsigned long)); -+ r = calloc (10000, sizeof (unsigned long)); - r2 = r; - for (i = 0; i < 528; i += 23) - { -@@ -8394,7 +8394,7 @@ - long i; - for (i = 0; i < 88 + 1; i++) - a[i] = ~0L; -- r = malloc (10000 * sizeof (unsigned long)); -+ r = calloc (10000, sizeof (unsigned long)); - r2 = r; - for (i = 0; i < 528; i += 23) - { diff --git a/gmp-6.1.2.tar.xz b/gmp-6.1.2.tar.xz deleted file mode 100644 index cdec5ec..0000000 --- a/gmp-6.1.2.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:87b565e89a9a684fe4ebeeddb8399dce2599f9c9049854ca8c0dfbdea0e21912 -size 1946336 diff --git a/gmp-6.1.2.tar.xz.sig b/gmp-6.1.2.tar.xz.sig deleted file mode 100644 index 1d765622bde82903aaac62e07536e5515180141b107d7f75182e59a6166b1544..0000000000000000000000000000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 351 zcmV-l0igbg0bB$C0RjL91p-)B?;`*T2@vyHpZF-oa+oyd3H~-si)FJ{OsN~=t6G}y~8hs&?qr&WkaJ;1<7?!5d-Nrw>HL}QKf^;U-ZYnZNB{m#BYg+g4o zEB-!(ZMz0+cHCCxCmJIec(=&DnXNc>%ilGj+Z`Z1utG|I+R)isQxq&pG0m6p&(T7B zP#98c?LW}AQjo-|@z)Fq4$qrAf5S5B_JAD$;L1bA^x{{(rB+tZ(8pZQR^QPHlS8tp zxRnsFhl&30CIzf|l3KNrrz@UX?iCza3^f*`?46yOHTf*X5cp=t(&}k==%#(v)%sZx zHvnvSG&*F7rW3xCyKU%^oFizyfE>K+yiWIc`5s%j;;KAxqQ*t!Y;Fx>U1<6jfv9Qy xte?)yz`@h%{Ql;|8!o8@!U-F!y?x%4-O+Aw$(x~9K0gGH6mlQtRQ1Qq*%btfvd;hj diff --git a/gmp-6.2.0.tar.xz b/gmp-6.2.0.tar.xz new file mode 100644 index 0000000..d6c0de2 --- /dev/null +++ b/gmp-6.2.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:258e6cd51b3fbdfc185c716d55f82c08aff57df0c6fbd143cf6ed561267a1526 +size 2012444 diff --git a/gmp-6.2.0.tar.xz.sig b/gmp-6.2.0.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..c992cd399b55cca894b74ce0989fe0e8170292547a750b12eb2ab46f42f83912 GIT binary patch literal 374 zcmV-+0g3*J0doWZ0SEvc79j*QJTLJ3?q0&}zVn&$S)ceQ#&Vbi0$w7?i~tG=5c64| z_$bD5m@ZKX|3`hsdxkwyI&G=6V{dFwpyN&Sd3jMlzO=(HzRu#c>43+wX^gbV&%Bmx zDwxK@#~NnXZqr=BJU#x0fW_V#8i92u#Pdstl~=}}CY~!#9Vxg6(%{(X!x%)7o>;Ja z!q&$Y8i-dMAX}EZj=j+8A1W8-Cw53`tQ^iV9^5V_B$k3viLVWB5Cesg`=Pgzwzh_f z$gJfbww!uFn|t2>+;0~z=i UX4DbZ$iLPdw>d4x@O$TMP" - $M4 $DEFS $ASM >$TMP || exit - -+echo '.section .note.GNU-stack,"",%progbits' >> $TMP -+ - echo "$CC" - $CC || exit - diff --git a/gmp.changes b/gmp.changes index 3f472a8..44b2e25 100644 --- a/gmp.changes +++ b/gmp.changes @@ -1,3 +1,22 @@ +------------------------------------------------------------------- +Sun Jan 19 21:19:41 UTC 2020 - Andreas Stieger + +- GMP 6.2.0: + * New C++ functions factorial, primorial and fibonacci for mpz_class + * Functions to detect primality now substitute the first 24 Miller-Rabin + iterations with the BPSW test + * Mini-GMP: new functions mpz_2fac_ui and mpz_mfac_uiui. + * Mini-GMP: mpz_sizeinbase, mpz_get_str, and mpz_set_str now support bases up + to 62. + * various bug fixes + * Major speedup on AMD Ryzen and Epyc, IBM POWER9, 64-bit ARM CPUs + from assembly code + * Speedups from reimplementations +- drop patches: + * gmp-6.1.2-conftest.patch, upstream + * gmp-noexec.diff, upstream + * floating-point-format-no-lto.patch, similar change + ------------------------------------------------------------------- Sun Jul 7 21:41:52 UTC 2019 - Jan Engelhardt diff --git a/gmp.spec b/gmp.spec index e50b962..eeed2a2 100644 --- a/gmp.spec +++ b/gmp.spec @@ -1,7 +1,7 @@ # # spec file for package gmp # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 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 @@ -17,23 +17,19 @@ Name: gmp -Version: 6.1.2 +Version: 6.2.0 Release: 0 Summary: A library for calculating huge numbers License: GPL-3.0-or-later AND LGPL-3.0-or-later Group: Development/Libraries/C and C++ -Url: https://gmplib.org/ +URL: https://gmplib.org/ Source0: https://gmplib.org/download/%{name}/%{name}-%{version}.tar.xz Source1: https://gmplib.org/download/%{name}/%{name}-%{version}.tar.xz.sig Source2: %{name}.keyring Source3: baselibs.conf -Patch0: gmp-noexec.diff -Patch1: gmp-6.1.2-conftest.patch -Patch2: floating-point-format-no-lto.patch BuildRequires: gcc-c++ BuildRequires: m4 -BuildRequires: xz -BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildRequires: pkgconfig %description GMP is a library for arbitrary precision arithmetic, operating on @@ -74,9 +70,6 @@ huge numbers (integer and floating point). %prep %setup -q -%patch0 -%patch1 -%patch2 -p1 %build export CFLAGS="%{optflags} -fexceptions" @@ -90,17 +83,15 @@ make %{?_smp_mflags} make %{?_smp_mflags} check %install -make %{?_smp_mflags} DESTDIR=%{buildroot} install +%make_install rm %{buildroot}%{_libdir}/libgmp.la rm %{buildroot}%{_libdir}/libgmpxx.la rm %{buildroot}%{_libdir}/libgmpxx.a %post -n libgmp10 -p /sbin/ldconfig %post -n libgmpxx4 -p /sbin/ldconfig - %postun -n libgmp10 -p /sbin/ldconfig %postun -n libgmpxx4 -p /sbin/ldconfig - %post devel %install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info%{ext_info} @@ -108,16 +99,13 @@ rm %{buildroot}%{_libdir}/libgmpxx.a %install_info_delete --info-dir=%{_infodir} %{_infodir}/%{name}.info%{ext_info} %files -n libgmp10 -%defattr(-,root,root) %license COPYING* %{_libdir}/libgmp.so.10* %files -n libgmpxx4 -%defattr(-,root,root) %{_libdir}/libgmpxx.so.4* %files devel -%defattr(-,root,root) %doc AUTHORS README NEWS %doc demos %{_infodir}/gmp.info*%{ext_info} @@ -126,5 +114,6 @@ rm %{buildroot}%{_libdir}/libgmpxx.a %{_libdir}/libgmpxx.so %{_includedir}/gmp.h %{_includedir}/gmpxx.h +%{_libdir}/pkgconfig/*.pc %changelog