SHA256
1
0
forked from pool/gmp

- Update to GMP 5.1.0 release.

* Bug fixes and speedups
  * Many new CPUs recognised
  * New functions for multi-factorials, and primorial: mpz_2fac_ui,
    mpz_mfac_uiui and mpz_primorial_ui
  * The fat binary mechanism is now more robust in its CPU recognition
  * Drops support for BSD compatibility library

OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gmp?expand=0&rev=38
This commit is contained in:
Richard Biener 2012-12-19 10:11:52 +00:00 committed by Git OBS Bridge
parent 614cfe908c
commit 4009a4a8c4
5 changed files with 16 additions and 127 deletions

View File

@ -1,98 +0,0 @@
# HG changeset patch
# User Marco Bodrato <bodrato@mail.dm.unipi.it>
# Date 1338104524 -7200
# Node ID ffdad0cda019a912c0cbb4e159595c34a176139f
# Parent 5e296f996b87f5bd747fc7075313911b42494d1e
mpn/x86_64/fat/fat.c: abort iff longmode-capable-bit is turned off.
diff -r 5e296f996b87 -r ffdad0cda019 mpn/x86_64/fat/fat.c
--- a/mpn/x86_64/fat/fat.c Thu May 24 14:26:27 2012 +0200
+++ b/mpn/x86_64/fat/fat.c Sun May 27 09:42:04 2012 +0200
@@ -1,4 +1,4 @@
-/* x86 fat binary initializers.
+/* x86_64 fat binary initializers.
Contributed to the GNU project by Kevin Ryde (original x86_32 code) and
Torbjorn Granlund (port to x86_64)
@@ -7,7 +7,7 @@
THEY'RE ALMOST CERTAIN TO BE SUBJECT TO INCOMPATIBLE CHANGES OR DISAPPEAR
COMPLETELY IN FUTURE GNU MP RELEASES.
-Copyright 2003, 2004, 2009, 2011 Free Software Foundation, Inc.
+Copyright 2003, 2004, 2009, 2011, 2012 Free Software Foundation, Inc.
This file is part of the GNU MP Library.
@@ -187,6 +187,11 @@
family = ((fms >> 8) & 0xf) + ((fms >> 20) & 0xff);
model = ((fms >> 4) & 0xf) + ((fms >> 12) & 0xf0);
+ /* Check extended feature flags */
+ __gmpn_cpuid (dummy_string, 0x80000001);
+ if ((dummy_string[4 + 29 / 8] & (1 << (29 - 3 * 8))) == 0)
+ abort (); /* longmode-capable-bit turned off! */
+
/*********************************************************/
/*** WARNING: keep this list in sync with config.guess ***/
/*********************************************************/
@@ -194,30 +199,9 @@
{
switch (family)
{
- case 4:
- case 5:
- abort (); /* 32-bit processors */
-
case 6:
switch (model)
{
- case 0x00:
- case 0x01:
- case 0x02:
- case 0x03:
- case 0x04:
- case 0x05:
- case 0x06:
- case 0x07:
- case 0x08:
- case 0x09: /* Banias */
- case 0x0a:
- case 0x0b:
- case 0x0c:
- case 0x0d: /* Dothan */
- case 0x0e: /* Yonah */
- abort (); /* 32-bit processors */
-
case 0x0f: /* Conroe Merom Kentsfield Allendale */
case 0x10:
case 0x11:
@@ -276,10 +260,6 @@
{
switch (family)
{
- case 5:
- case 6:
- abort ();
-
case 15: /* k8 */
case 16: /* k10 */
/* CPUVEC_SETUP_athlon */
@@ -290,14 +270,9 @@
{
switch (family)
{
- case 5:
- abort (); /* 32-bit processors */
-
case 6:
- if (model < 15)
- abort (); /* 32-bit processors */
-
- CPUVEC_SETUP_nano;
+ if (model >= 15)
+ CPUVEC_SETUP_nano;
break;
}
}

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1f588aaccc41bb9aed946f9fe38521c26d8b290d003c5df807f65690f2aadec9
size 2052144

3
gmp-5.1.0.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:dfd9aba98fe5caa54a715b4584c7d45eb0ee0c8be9a3181164ad2fad5eefc796
size 2194942

View File

@ -1,3 +1,14 @@
-------------------------------------------------------------------
Wed Dec 19 09:47:43 UTC 2012 - rguenther@suse.com
- Update to GMP 5.1.0 release.
* Bug fixes and speedups
* Many new CPUs recognised
* New functions for multi-factorials, and primorial: mpz_2fac_ui,
mpz_mfac_uiui and mpz_primorial_ui
* The fat binary mechanism is now more robust in its CPU recognition
* Drops support for BSD compatibility library
------------------------------------------------------------------- -------------------------------------------------------------------
Thu Sep 13 14:32:57 UTC 2012 - coolo@suse.com Thu Sep 13 14:32:57 UTC 2012 - coolo@suse.com

View File

@ -22,7 +22,7 @@ BuildRequires: gcc-c++
%ifarch ppc64 %ifarch ppc64
Obsoletes: gmp-64bit Obsoletes: gmp-64bit
%endif %endif
Version: 5.0.5 Version: 5.1.0
Release: 0 Release: 0
Summary: The GNU MP Library Summary: The GNU MP Library
License: GPL-3.0+ and LGPL-3.0+ License: GPL-3.0+ and LGPL-3.0+
@ -31,7 +31,6 @@ Url: http://gmplib.org/
Source: gmp-%{version}.tar.bz2 Source: gmp-%{version}.tar.bz2
Source2: baselibs.conf Source2: baselibs.conf
Patch0: gmp-noexec.diff Patch0: gmp-noexec.diff
Patch1: gmp-5.0.5-remove-cpuid-abort.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description %description
@ -49,27 +48,17 @@ Shared library for the GNU MP Library.
%package -n libgmpxx4 %package -n libgmpxx4
Summary: C++ bindings for the GNU MP Library Summary: C++ bindings for the GNU MP Library
Group: System/Libraries Group: System/Libraries
Requires: libgmp10 = %{version} Requires: libgmp10 >= %{version}
%description -n libgmpxx4 %description -n libgmpxx4
C++ bindings for the GNU MP Library. C++ bindings for the GNU MP Library.
%package -n libmp3
Summary: BSD libmp bindings for the GNU MP Library
Group: System/Libraries
Requires: libgmp10 = %{version}
%description -n libmp3
BSD libmp bindings for the GNU MP Library.
%package devel %package devel
Summary: Include Files and Libraries for Development with the GNU MP Library Summary: Include Files and Libraries for Development with the GNU MP Library
Group: Development/Languages/C and C++ Group: Development/Languages/C and C++
Requires: libgmp10 = %{version} Requires: libgmp10 = %{version}
Requires: libgmpxx4 = %{version} Requires: libgmpxx4 = %{version}
Requires: libmp3 = %{version}
# bug437293 # bug437293
%ifarch ppc64 %ifarch ppc64
Obsoletes: gmp-devel-64bit Obsoletes: gmp-devel-64bit
@ -86,7 +75,6 @@ huge numbers (integer and floating point).
%ifnarch %arm %ifnarch %arm
%patch0 %patch0
%endif %endif
%patch1 -p1
%build %build
export CFLAGS="$RPM_OPT_FLAGS -fexceptions"; export CFLAGS="$RPM_OPT_FLAGS -fexceptions";
@ -105,15 +93,11 @@ make install DESTDIR=${RPM_BUILD_ROOT}
rm $RPM_BUILD_ROOT%{_libdir}/libgmp.la rm $RPM_BUILD_ROOT%{_libdir}/libgmp.la
rm $RPM_BUILD_ROOT%{_libdir}/libgmpxx.la rm $RPM_BUILD_ROOT%{_libdir}/libgmpxx.la
rm $RPM_BUILD_ROOT%{_libdir}/libgmpxx.a rm $RPM_BUILD_ROOT%{_libdir}/libgmpxx.a
rm $RPM_BUILD_ROOT%{_libdir}/libmp.a
rm $RPM_BUILD_ROOT%{_libdir}/libmp.la
%post -n libgmp10 -p /sbin/ldconfig %post -n libgmp10 -p /sbin/ldconfig
%post -n libgmpxx4 -p /sbin/ldconfig %post -n libgmpxx4 -p /sbin/ldconfig
%post -n libmp3 -p /sbin/ldconfig
%post devel %post devel
%install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz %install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz
@ -121,8 +105,6 @@ rm $RPM_BUILD_ROOT%{_libdir}/libmp.la
%postun -n libgmpxx4 -p /sbin/ldconfig %postun -n libgmpxx4 -p /sbin/ldconfig
%postun -n libmp3 -p /sbin/ldconfig
%postun devel %postun devel
%install_info_delete --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz %install_info_delete --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz
@ -134,10 +116,6 @@ rm $RPM_BUILD_ROOT%{_libdir}/libmp.la
%defattr(-,root,root) %defattr(-,root,root)
%{_libdir}/libgmpxx.so.4* %{_libdir}/libgmpxx.so.4*
%files -n libmp3
%defattr(-,root,root)
%{_libdir}/libmp.so.3*
%files devel %files devel
%defattr(-,root,root) %defattr(-,root,root)
%doc AUTHORS README NEWS %doc AUTHORS README NEWS
@ -146,9 +124,7 @@ rm $RPM_BUILD_ROOT%{_libdir}/libmp.la
%{_libdir}/libgmp.a %{_libdir}/libgmp.a
%{_libdir}/libgmp.so %{_libdir}/libgmp.so
%{_libdir}/libgmpxx.so %{_libdir}/libgmpxx.so
%{_libdir}/libmp.so
/usr/include/gmp.h /usr/include/gmp.h
/usr/include/gmpxx.h /usr/include/gmpxx.h
/usr/include/mp.h
%changelog %changelog