debian/0000755000000000000000000000000012262543461007173 5ustar debian/libgmp10-doc.README.Debian0000644000000000000000000000112111534330677013410 0ustar No Docs ------- Please see http://gmplib.org/manual/ for the documentation. Sadly, due to licensing it cannot be shipped in Debian. See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=335403 and http://lists.debian.org/debian-legal/2006/03/msg00536.html Demo Code --------- The code in /usr/share/doc/libgmp10-doc/examples/demos comes straight out of the GMP source distribution. As such, the "Makefile.am" files are not expected to be directly useful, but should serve as a model for building the code. -- Steve M. Robbins , Sat, 06 Nov 2010 18:00:20 -0500 debian/libgmpxx4ldbl.lintian-overrides0000644000000000000000000000010211534330677015324 0ustar libgmpxx4ldbl binary: package-name-doesnt-match-sonames libgmpxx4 debian/copyright0000644000000000000000000000313011534330677011127 0ustar GMP Debian Package ------------------ This gmp package was built for Debian by Steve M. Robbins Philipp Matthias Hahn from sources obtained at http://gmplib.org/ . GMP Source Code --------------- Copyright 1991, 1993, 1994, 1995, 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. The GNU MP Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. The license text is contained in /usr/share/common-licenses/LGPL-3. GMP Documentation ----------------- The documentation is released under the GNU Free Documentation License (GFDL) and it has cover texts. As such, it has been determined not to meet the Debian Free Software Guidelines, and is not shipped in the debian packages. The demo code in the -doc package is covered either by the LGPL, or under the GNU General Public License /usr/share/common-licenses/GPL. See the individual source files to determine the license under which it falls. debian/changelog0000644000000000000000000011407112262543416011051 0ustar gmp (2:5.1.3+dfsg-1ubuntu1) trusty; urgency=medium * Merge with Debian; remaining changes: - Recommend libstdc++-4.8-dev as a real alternative for the virtual libstdc++-dev. - Build using dh-autoreconf. - Add powerpc64 little-endian support. -- Matthias Klose Mon, 06 Jan 2014 15:56:16 +0100 gmp (2:5.1.3+dfsg-1) unstable; urgency=low * New upstream. * patches/preserve-ia64-registers.patch: * patches/mpn_sbpi1_div.patch: Remove. Applied upstream. * control: Update Standards-Version to 3.9.5. * watch: New watch file from bartm. -- Steve M. Robbins Sat, 14 Dec 2013 14:51:41 -0600 gmp (2:5.1.2+dfsg-3ubuntu3) trusty; urgency=medium * debian/patches/ppc64el_mod.patch: Add little-endian support to ppc64 asm. -- William Grant Mon, 16 Dec 2013 09:11:53 +0000 gmp (2:5.1.2+dfsg-3ubuntu2) trusty; urgency=low * Run autoreconf. -- Matthias Klose Tue, 26 Nov 2013 12:20:10 +0100 gmp (2:5.1.2+dfsg-3ubuntu1) trusty; urgency=low * Resynchronise with Debian. Remaining changes: - Recommend libstdc++-4.8-dev as a real alternative for the virtual libstdc++-dev. -- Colin Watson Tue, 29 Oct 2013 08:24:59 -0700 gmp (2:5.1.2+dfsg-3) unstable; urgency=low * patches/mpn_sbpi1_div.patch: New. Upstream patch to fix computation of mpn_sbpi1_div_qr_sec and mpn_sbpi1_div_r_sec. * Remove lib32gmp* packages. Closes: #714998. -- Steve M. Robbins Sat, 14 Sep 2013 13:52:27 -0500 gmp (2:5.1.2+dfsg-2ubuntu1) saucy; urgency=low * Recommend libstdc++-4.8-dev as a real alternative for the virtual libstdc++-dev. -- Colin Watson Fri, 04 Oct 2013 14:46:51 +0100 gmp (2:5.1.2+dfsg-2) unstable; urgency=low * rules: Install gmp.h into multi-arch include directory. For libgmp32-dev, header installed into /usr/include/gmp32/$(triplet). Closes: #675577. * rules(lib32gmp-dev): Don't ship libtool .la files. * Remove lib64gmp* packages. -- Steve M. Robbins Sun, 30 Jun 2013 22:38:49 -0500 gmp (2:5.1.2+dfsg-1) unstable; urgency=low * New upstream. - reduced SQR_TOOM2_THRESHOLD to 30. Closes: #706984. * patches/preserve-ia64-registers.patch: New. Upstream patch to preserve registers. Closes: #708264. -- Steve M. Robbins Thu, 23 May 2013 23:23:44 -0500 gmp (2:5.1.1+dfsg-3) unstable; urgency=low * Upload to unstable. -- Steve M. Robbins Sun, 05 May 2013 20:38:15 -0500 gmp (2:5.1.1+dfsg-2) experimental; urgency=low * rules: Need to set ABI=x32 at configure time. Closes: #698000. * Change to source format 3.0 (quilt). -- Steve M. Robbins Sun, 17 Mar 2013 21:54:08 -0500 gmp (2:5.1.1+dfsg-1) experimental; urgency=low * New upstream. - added support for x32. Closes: #698000. * fix-gmp.sh: Add support for __aarch64__ (closes: #693467). -- Steve M. Robbins Mon, 18 Feb 2013 18:01:16 -0600 gmp (2:5.1.0+dfsg-1) experimental; urgency=low * New upstream. * rules: Use hardening build flags. * control: Update to debhelper compat level 9. -- Steve M. Robbins Tue, 18 Dec 2012 23:52:36 -0600 gmp (2:5.0.5+dfsg-2) unstable; urgency=low * Revert to FAT binary situation of 5.0.4: disabled for amd64, kfreebsd-amd64, and lpia; enabled for all other architectures. * control: Mark libgmp-dev as "Multi-arch: same", requested by Wookey http://lists.alioth.debian.org/pipermail/debian-science-maintainers/2012-May/013386.html -- Steve M. Robbins Fri, 01 Jun 2012 17:22:56 -0500 gmp (2:5.0.5+dfsg-1.1) unstable; urgency=low * Non-maintainer upload. * Revert to --disable-fat, as it seems to cause gcc to abort on some machines (closes: #671866) -- Julien Cristau Tue, 08 May 2012 19:24:03 +0200 gmp (2:5.0.5+dfsg-1) unstable; urgency=low * New upstream. * rules: Always built FAT binary, on advice from upstream. By default, GMP compiles for the CPU it detect at configure time. But with --enable-fat it detects the CPU at run time. This is important for cpu-dependent workarounds. -- Steve M. Robbins Sun, 06 May 2012 12:24:35 -0500 gmp (2:5.0.4+dfsg-1) unstable; urgency=low * New upstream version. - Fix for buffer overruns. Closes: #658821. * rules: add build-arch, build-indep rules. -- Steve M. Robbins Sat, 11 Feb 2012 11:41:31 -0600 gmp (2:5.0.3+dfsg-1) unstable; urgency=low * New upstream version. Supports s390x. * patches/s390x.patch: Remove. * patches/upstream-dcpi1_bdiv_q.patch: Remove. Applied upstream. -- Steve M. Robbins Sat, 28 Jan 2012 02:43:35 -0600 gmp (2:5.0.2+dfsg-2) unstable; urgency=low * gmp.h: Add case for s390x. * control: Add Breaks relations from libgmp-dev to force upgrade of packages that relied on libgmp.la (thanks, Jonathan Nieder). Closes: #645475. * rules: Remove .la file from the libgmp-dev package. Anyone relying on it would not be able to find it after it moved from /usr/lib to /usr/lib/, anyway (thanks, Jonathan Nieder). -- Steve M. Robbins Wed, 19 Oct 2011 22:42:12 -0500 gmp (2:5.0.2+dfsg-1) unstable; urgency=low * New upstream version. Closes: #627012. * rules: Empty dependency_libs. Closes: #633312. * orig-source.patch: New. * patches/s390x.patch: New. * rules: Patches to enable building on s390x (thanks, Andreas Krebbel). Closes: #635461. * patches/upstream-dcpi1_bdiv_q.patch. New. Upstream fix: There is a GMP bug in mpn/generic/dcpi1_bdiv_q.c that causes incorrect computation with extremely low probability, for unnormalised dividends. The bug might also result in a decrement of memory above dividends, with some potential security impact. The bug might affect several user-level routines, e.g., mpz_invert, but only for operands of at least 3000 bits (for smaller operands, a simpler algorithm is used). * control: * rules: Apply patch (thanks, Riku Voipio) for multiarch, except we do not mark libgmp-dev as multiarch. Closes: #638959. -- Steve M. Robbins Mon, 29 Aug 2011 23:06:19 -0500 gmp (2:5.0.1+dfsg-7) unstable; urgency=low [ Peter Pearse ] * For cross builds, strip GNU_TYPES & pass --target. Closes: #605038. [ Steve Langasek ] * We don't need to use $(strip), just avoid having whitespace in the first place. * For that matter, this s/i386/i486/ substitution is entirely unnecessary to begin with; the DEB_HOST_GNU_TYPE is already i486 on Debian, and i686 on Ubuntu. So as long as we're modifying this line, let's simplify it some more. [ Steve Robbins ] * control: Make libgmp-dev, and lib{32,64}-dev real packages, providing virtual packages libgmp10-dev, etc. Add real package libgmp3-dev, a dummy package to pull in libgmp-dev. Required to ease transition of mlton because it build-depends on itself and on versioned libgmp3-dev. See http://lists.debian.org/debian-release/2011/03/msg00374.html. -- Steve M. Robbins Tue, 22 Mar 2011 22:00:03 -0500 gmp (2:5.0.1+dfsg-6) unstable; urgency=low * control: libgmp10-dev provides the old libgmp3-dev package. This is a temporary measure to ease the transition for ghc, which build-depends on itself as well as libgmp3-dev; c.f. http://lists.debian.org/debian-haskell/2011/03/msg00013.html -- Steve M. Robbins Sun, 06 Mar 2011 09:38:56 -0600 gmp (2:5.0.1+dfsg-5) unstable; urgency=low * Merge the v5 branch back to trunk. * Package libgmp10-dev also provides libgmp-dev so you can build-depend on an unversioned GMP -dev package. * Remove archaic MP compatibility library (libmp3 and 32/64-bit variants). * control: Set Standards-Version to 3.9.1. - rules: don't build with -D_REENTRANT -- Steve M. Robbins Sat, 05 Mar 2011 10:25:02 -0600 gmp (2:5.0.1+dfsg-4) experimental; urgency=low * rules: Build with -O2 on ia64, to work around ICE (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43603). -- Steve M. Robbins Mon, 14 Feb 2011 21:39:01 -0600 gmp (2:5.0.1+dfsg-3) experimental; urgency=low [ Sylvestre Ledru ] * Package moved to Debian Science. * gmp.h: Add support for __m68k__ (thanks, Thorsten Glaser). Closes: #601287. * libgmp3-doc.examples: * libgmp3-doc.README.Debian: Rename to libgmp10-doc.xxx. * libgmp3.prerm: Remove obsolete file. Was used to remove /usr/doc/xxx symlinks from back at the time of the /usr/doc --> /usr/share/doc transition. -- Steve M. Robbins Sat, 06 Nov 2010 17:55:15 -0500 gmp (2:5.0.1+dfsg-2) experimental; urgency=low * control: * rules: New packages libmp3, lib32mp3, lib64mp3. Split library mp out from the libgmp package as they have evolved to use different major numbers now. Make libgmp10-dev conflict & replace libgmp3-dev packages; ditto for 32-bit and 64-bit variants. Closes: #570225. -- Steve M. Robbins Sun, 28 Feb 2010 03:31:42 -0600 gmp (2:5.0.1+dfsg-1) experimental; urgency=low * New upstream release. Library gmp SOVERSION bumped from 3 to 10. * control: New packages (libgmp10, libgmp10-dev, etc) replace corresponding packages due to SOVERSION change. Drop some now-obsolete conflicts on libgmp3 and libgmp2 pacakges. Bump Standards-Version to 3.8.4. -- Steve M. Robbins Sun, 07 Feb 2010 11:04:56 -0600 gmp (2:5.0.0+dfsg-1) experimental; urgency=low * New upstream release. -- Steve M. Robbins Sat, 09 Jan 2010 19:38:41 -0600 gmp (2:4.3.2+dfsg-2) UNRELEASED; urgency=low * Package moved to Debian Science [ Steve M. Robbins ] * control: Set Standards-Version to 3.8.3. Add ${misc:Depends} to each package. -- Sylvestre Ledru Wed, 28 Apr 2010 14:24:45 +0200 gmp (2:4.3.2+dfsg-1) unstable; urgency=low * New upstream version. - patches/fix-lib-versioning.patch: Remove. Libraries are properly versioned. -- Steve M. Robbins Sat, 09 Jan 2010 00:27:30 -0600 gmp (2:4.3.1+dfsg-3) unstable; urgency=low * rules: On amd64, install 32-bit libs in /usr/lib32. Closes: #533849. * control: Conflict with libc6-i386 versions prior to change removing /emul/ia32-linux/lib; see #533849 for details. -- Steve M. Robbins Mon, 03 Aug 2009 11:09:08 -0500 gmp (2:4.3.1+dfsg-2) unstable; urgency=low * rules: Explicitly set NM for the powerpc 64-bit build. Disable FAT binary for kfreebsd-amd64. Closes: #537072. Remove bashism (touch Makefile.{am,in}). Closes: #535383. -- Steve M. Robbins Thu, 23 Jul 2009 05:16:25 -0500 gmp (2:4.3.1+dfsg-1) unstable; urgency=low * New upstream. - Incorporate previous NMU patch. Closes: #528923. - Remote patches applied upstream: mpf_eq.diff, mpf_set_str.c.4.diff, perfpow.c.diff - Upstream includes fix for scanf/sscanffuns.c. Closes: #523076. * gmp.h: Add case for SH processor. Closes: #530747. Add case for AVR32. Closes: #528511. * patches/fix-lib-versioning.patch: New. Fix versioning of shared libs; c.f. http://gmplib.org/list-archives/gmp-bugs/2009-May/001475.html. -- Steve M. Robbins Fri, 29 May 2009 21:42:35 -0500 gmp (2:4.2.4+dfsg-8.1) unstable; urgency=low * Non-maintainer upload. * Don't build libgmp3c2 as 64bit library on powerpc. Closes: #528768, #528840. -- Matthias Klose Sat, 16 May 2009 13:39:16 +0200 gmp (2:4.2.4+dfsg-8) unstable; urgency=low * Upload of -7 to unstable. No source changes. -- Steve M. Robbins Sat, 09 May 2009 10:03:22 -0500 gmp (2:4.2.4+dfsg-7) experimental; urgency=low * control: * rules: Do not build multilibs for sparc. Closes: #522524. Reinstate 64-bit libs for powerpc since last change reintroduced bugs #454494, and #506791. Build lib64* packages only for powerpc. * gmp.h: Add case for mips. -- Steve M. Robbins Mon, 20 Apr 2009 00:15:56 -0500 gmp (2:4.2.4+dfsg-6) experimental; urgency=low * gmp.h: Add cases for arm, hppa, sparc. * control: * rules: Do not build multilibs for i386, powerpc, s390. Closes: #522460. -- Steve M. Robbins Fri, 03 Apr 2009 23:54:21 -0500 gmp (2:4.2.4+dfsg-5) experimental; urgency=low * rules: Support bi-arch builds (32 and 64 bit) where possible. Closes: #454494, #506791. * control: Standards-Version 3.8.1; no changes. -- Steve M. Robbins Thu, 02 Apr 2009 22:57:14 -0500 gmp (2:4.2.4+dfsg-4) experimental; urgency=low * rules: Add --build and --host options to configure. Supply jobs option (-jN) only to initial make rather than setting MAKEFLAGS. Run test suite if build machine is same as target machine. -- Steve M. Robbins Sun, 15 Mar 2009 03:43:27 -0500 gmp (2:4.2.4+dfsg-3) experimental; urgency=low * rules: Revert to debhelper in preparation for building 32- and 64-bit flavours on amd64 and ppc. Upload to experimental to check that the package builds across all arches. -- Steve M. Robbins Sun, 01 Mar 2009 23:31:22 -0600 gmp (2:4.2.4+dfsg-2) unstable; urgency=low * patches/mpf_eq.diff: * patches/mpf_set_str.c.4.diff: * patches/perfpow.c.diff: New. Patches from upstream http://gmplib.org/ -- Steve M. Robbins Tue, 24 Feb 2009 18:21:42 -0600 gmp (2:4.2.4+dfsg-1) experimental; urgency=low * New upstream version. Closes: #499632. * Set Standards-Version to 3.8.0; no changes required. -- Steve M. Robbins Sun, 21 Sep 2008 00:22:19 -0500 gmp (2:4.2.3+dfsg-1) experimental; urgency=low * New upstream version. Upload to experimental to avoid interfering with Lenny release. * debian/patches/01_gmp.h-std-file.diff: * debian/patches/02_noexec-stack.diff: * debian/patches/03_gnu89-inline.diff: Removed. Applied upstream. * debian/README.source: New. Describe how to use simple patchsys. * debian/rules: New target get-orig-source. Target runs autoreconf before generating the .orig.tar.gz file, so we remove DEB_AUTO_UPDATE_AUTOCONF and DEB_AUTO_UPDATE_AUTOMAKE settings. * debian/control: Remove build-dependency on automake, autoconf, and libtool. * Switch to Debian-Scicomp subversion repository. * debian/control: Add Vcs-Browser and Vcs-Svn fields. Change maintainer to pkg-scicomp-devel, change uploaders to me. * debian/rules: Base decision for --disable-fat on DEB_HOST_ARCH_CPU instead of DEB_HOST_ARCH, to build on freebsd-amd64. Closes: #490555. -- Steve M. Robbins Sat, 09 Aug 2008 16:43:50 -0500 gmp (2:4.2.2+dfsg-3) unstable; urgency=low * debian/rules: * debian/control: Move from automake 1.8 to automake 1.9. Closes: #473306. * debian/patches/03_gnu89-inline.diff: Add gnu_inline function attribute to extern inline functions. Closes: #430598. Patch courtesy of Ludovic Courtès; see http://gmplib.org/list-archives/gmp-bugs/2008-April/000980.html. * debian/rules: Install upstream changelog only in -dev package. Closes: #442895. * debian/control: Replace Source-Version by binary:Version. Bump Standards-Version from 2.7.2 to 2.7.3; no changes required. Add HomePage field. * debian/copyright: Freshen; include copyright statement. -- Steve M. Robbins Wed, 09 Apr 2008 01:15:29 -0500 gmp (2:4.2.2+dfsg-2) unstable; urgency=low * gmp-h.in: include cstdio to obtain std::FILE. Closes: #463187. -- Steve M. Robbins Sat, 02 Feb 2008 03:08:02 -0600 gmp (2:4.2.2+dfsg-1) unstable; urgency=low * New upstream version. * Remove patches: 01_libversion, 03_x86-fat, 04_gcc4.3-inline, and 05_remove-docs. -- Steve M. Robbins Sat, 15 Sep 2007 21:45:17 -0500 gmp (2:4.2.1+dfsg-6) unstable; urgency=low * debian/rules: * debian/patches: Rework packaging using cdbs. -- Steve M. Robbins Sat, 15 Sep 2007 15:11:21 -0500 gmp (2:4.2.1+dfsg-5) unstable; urgency=low * debian/control: Rename libgmpxx4 to libgmpxx4ldbl. Closes: #430253. Set Standards-Version to 3.7.2; no changes. * Apply patch gcc4.3-inline.diff (http://gmplib.org/list-archives/gmp-devel/2007-May/000745.html). Closes: #431495. -- Steve M. Robbins Wed, 11 Jul 2007 00:05:28 -0500 gmp (2:4.2.1+dfsg-4) unstable; urgency=high * Build with -O0 on m68k due to a bug in gcc-4.1. Closes: #378719. -- Steve M. Robbins Wed, 19 Jul 2006 22:06:09 -0400 gmp (2:4.2.1+dfsg-3) unstable; urgency=high * Disable fat support for amd64, as it is broken upstream. Thanks to Steinar H. Gunderson for initial version of patch. Closes: #376353. -- Steve M. Robbins Mon, 17 Jul 2006 23:15:30 -0400 gmp (2:4.2.1+dfsg-2) unstable; urgency=low * Enable fat libraries. Closes: #362759. Applied patch debian/patches/x86-fat.diff, adapted from http://www.swox.com/gmp/patches/x86-fat.diff. -- Steve M. Robbins Fri, 30 Jun 2006 22:34:47 -0400 gmp (2:4.2.1+dfsg-1) unstable; urgency=low * New upstream. * Fix SONAME on libgmpxx. Closes: #368310. - introduces package libgmpxx4. * A test case miscompiles with -O3. Build with -O2. Closes: #372563. * Do not install private headers. Closes: #363692. -- Steve M. Robbins Sun, 18 Jun 2006 21:20:03 -0400 gmp (4.2.dfsg-1) unstable; urgency=low * New upstream version. Closes: #359147, #362273. - Remove all patches except gmp-4.2-noexecstack_cfgs.diff for non-executable stack. * Remove non-DFSG documentation. Closes: #335403. -- Steve M. Robbins Sat, 15 Apr 2006 02:34:55 -0400 gmp (4.1.4-11) unstable; urgency=low * Apply two more upstream patches: - http://www.swox.com/gmp/patches/gmp-impl.h.MPF_SIGNIFICANT_DIGITS.diff - http://www.swox.com/gmp/patches/gmp-impl.h.MPN_SIZEINBASE.diff * Apply patch for big-endian ARM (thanks, Lennert Buytenhek). Closes: #333612. * Apply patch to turn off executable stack (thanks, Sheplyakov Alexei). Closes: #323944. * Run "autoreconf" to update autotools files. Closes: #304635. -- Steve M. Robbins Thu, 13 Oct 2005 23:13:04 -0400 gmp (4.1.4-10) unstable; urgency=low * debian/rules: provide only libgmp3c2 in libgmp3c2.shlib file. Closes: #322691 -- Steve M. Robbins Sat, 13 Aug 2005 13:38:00 -0400 gmp (4.1.4-9) unstable; urgency=low * Build with -O2 on m68k (thanks, Matthias Klose and Laurent Fousse). Closes: #319205. -- Steve M. Robbins Sun, 7 Aug 2005 23:23:08 -0400 gmp (4.1.4-8) unstable; urgency=low * Re-release to fix i386 build. The -7.1 upload was built against a non-existent libstdc++6. Closes: #317636. -- Steve M. Robbins Sun, 10 Jul 2005 09:42:44 -0400 gmp (4.1.4-7.1) unstable; urgency=medium * NMU. * debian/rules: Fix typo in dh_makeshlibs, referencing a non existing package. -- Matthias Klose Sat, 9 Jul 2005 18:22:58 +0200 gmp (4.1.4-7) unstable; urgency=low * CXX transition (thanks to Matthias Klose for patches): - Split out the C++ library into package libgmp3xx. Closes: #311610. - Rename libgmp3 to libgmp3c2, otherwise packages relying on the C++ library in libgmp3 will break. -- Steve M. Robbins Fri, 8 Jul 2005 23:38:22 -0400 gmp (4.1.4-6) unstable; urgency=low * mpn/generic/rootrem.c: Fix buffer overrun in mpz_root(), mpz_rootrem(). Upstream patch: http://www.swox.com/gmp/patches/mpn_rootrem.c.diff * debian/FAQ: New; taken from http://www.swox.com/gmp. Explains the segfaulting problem. Closes: #284978. -- Steve M. Robbins Fri, 8 Apr 2005 20:13:58 -0400 gmp (4.1.4-5) unstable; urgency=low * debian/rules: Don't run test suite when cross-compiling (thanks, NIIBE Yutaka). Closes: #282060. -- Steve M. Robbins Sun, 28 Nov 2004 09:21:11 -0500 gmp (4.1.4-4) unstable; urgency=low * debian/rules: Don't package gmp-developer docs. * debian/README.Debian: Clarify that the primary documentation consists of info files. Closes: #276856. * debian/control: Suggest libmpfr-dev (now available in the Debian archive). Closes: #278005. -- Steve M. Robbins Sun, 24 Oct 2004 03:22:47 -0400 gmp (4.1.4-3) unstable; urgency=low * debian/rules: Do not build mpfr library; it will be packaged separately from an updated source (see bug #276085). * debian/rules: Install some internal headers needed to build mpfr. -- Steve M. Robbins Wed, 13 Oct 2004 00:15:01 -0400 gmp (4.1.4-2) unstable; urgency=high * gmp-impl.h: Apply patch to fix build on amd64 (http://swox.com/list-archives/gmp-discuss/2004-September/001376.html) (thanks, Torbjorn Granlund). Closes: #275129. * debian/rules: Add "make check". -- Steve M. Robbins Mon, 11 Oct 2004 14:39:03 -0400 gmp (4.1.4-1) unstable; urgency=low * New upstream version. Closes: #272930. -- Steve M. Robbins Mon, 11 Oct 2004 14:38:49 -0400 gmp (4.1.3-3) unstable; urgency=low * mpf/sub.c: Apply patch http://www.swox.com/list-archives/gmp-announce/2004-July.txt to fix mpf_sub(). Closes: #263861. -- Steve M. Robbins Wed, 11 Aug 2004 23:07:23 -0400 gmp (4.1.3-2) unstable; urgency=low * debian/control: Weaken the relationship of libgmp3-dev with libstdc++-dev from "depends" to "recommends" as it is perfectly possible to develop on a C-only system. Closes: #254265. -- Steve M. Robbins Sat, 24 Jul 2004 22:14:44 -0400 gmp (4.1.3-1) unstable; urgency=low * New upstream. Closes: #248317. - debian/rules: The FFT bug (#234984) has been fixed, so we configure with fft again. * Update to standards version 3.6.1 - debian/rules: Set LDFLAGS to '-Wl,-z,defs' so that any undefined reference in building the shared libs is flagged. -- Steve M. Robbins Sun, 16 May 2004 00:30:32 -0400 gmp (4.1.2-4) unstable; urgency=low * Configure using --disable-fft; a workaround for a critical bug in FFT multiply code. Closes: #234984. * debian/rules: Do not install /usr/share/info/dir*. Closes: #219599. -- Steve M. Robbins Wed, 17 Mar 2004 20:01:01 -0500 gmp (4.1.2-3) unstable; urgency=low * control: Build-depend on debhelper (>=4.1.1) since we use dh_shlibdeps -L (thanks, Bill Allombert). Closes: #188037. Set Standards-Version to 3.5.9 (no changes). Move libgmp3-dev to libdevel-section. * Back out of the changes to ltmain.sh (libtool), mpn/Makeasm.am, and all the associated autotools-generated files (configure, Makefile.in, etc). Kevin Ryde explained that in fact gmp ships with a newer ltmain.sh than exists in Debian, and it is necessary to use the newer version to have libgmpxx correctly linked with g++ rather than gcc. See the discussion in bug #143543. Thanks, Kevin! * Remove pa32 EPILOGUE statement patches. Closes: #186786. * gmp-impl.h: Add __s390__ case for the ieee_double_extract union #ifdefs. Corrects a build failure. Thanks, Kevin Ryde. * mpfr/rnd_mode.c: #ifdef around each case in mpfr_set_machine_rnd_mode(). Corrects build failure on arm. Thanks again, Kevin Ryde. * debian/README.Debian: Don't mention C++ interface package. * debian/rules: Remove commented-out debhelper cruft. -- Steve M. Robbins Sat, 19 Apr 2003 13:00:03 -0400 gmp (4.1.2-2) unstable; urgency=low * Could find no debian packages that rely on internal GMP headers being installed. Do not install longlong.h (closes: #184540) nor gmp-mparam.h (closes: #184543). * Build C++ libraries. Closes: #143543. Requires updated libtool in order to correctly support inter-library dependency. Had to re-run all the autotools, so the diff is much larger, alas. * debian/rules: Remove m68k compiler bug workaround. Closes: #186787. * mpn/Makeasm.am: Remove "--tag=CC" from libtool invocation as new libtool does not grok --tag. * configfsf.guess: * configfsf.sub: Update with newest version of file in /usr/share/misc. * Build MPFR library. -- Steve M. Robbins Fri, 4 Apr 2003 23:15:59 -0500 gmp (4.1.2-1) unstable; urgency=low * New maintainer team. * New upstream source. Closes: #158397. * Adhere to policy version to 3.5.8. * Make -dev package depend on ${Source-Version} of library package. Closes: #146604. * Make -doc package replace old libgmp3 packages that formerly held the info files. -- Steve M. Robbins Wed, 26 Feb 2003 19:10:43 -0500 libgmp3 (4.0.1-3) unstable; urgency=low * Installed upstream patch to gmp_printf and gmp_scanf. closes: #141879 * Removed bashism from echo in rules file for shlibs. closes: #141877 -- Dale Scheetz (Dwarf #1) Tue, 9 Apr 2002 11:10:41 -0400 libgmp3 (4.0.1-2) unstable; urgency=low * Installed patch provided by LaMont Jones for hppa. closes: #140816 * Added GFDL information to the copyright file. closes: #141411 * Typo in last changelog entry for wrong bug number. closes: #123659 -- Dale Scheetz (Dwarf #1) Sun, 7 Apr 2002 15:20:00 -0400 libgmp3 (4.0.1-1) unstable; urgency=low * New upstream source. closes: #133279 * changed CNFL option "target" to "build". * provides compilable examples. closes: #123695 * added >= version to shlibs file. closes: #70754 * libgmp4-dev Suggests: libgmp4-doc. closes: #130864 * Removed old libgmp3.so symlinks from lib and -dev package. -- Dale Scheetz (Dwarf #1) Tue, 12 Mar 2002 17:57:18 -0500 libgmp3 (3.1.1-13) unstable; urgency=low * REALLY removed gmp-impl.h instead of gmp_impl.h. closes: #110758 -- Dale Scheetz (Dwarf #1) Sun, 16 Dec 2001 23:29:21 -0500 libgmp3 (3.1.1-12) unstable; urgency=low * Fixed info entry for mpn-lshift. closes: #77146 -- Dale Scheetz (Dwarf #1) Tue, 20 Nov 2001 10:24:31 -0500 libgmp3 (3.1.1-11) unstable; urgency=low * corrected typo in copyright file. closes: #118890 -- Dale Scheetz (Dwarf #1) Fri, 9 Nov 2001 18:55:41 -0500 libgmp3 (3.1.1-10) unstable; urgency=low * incorporated NMU patch. Thanks John! closes: #112711 * applied John's get_str.c patch. closes: #112589 * removed gmp_impl.h. Thanks Steve! closes; #110758 -- Dale Scheetz (Dwarf #1) Fri, 12 Oct 2001 14:38:10 -0400 libgmp3 (3.1.1-9.1) unstable; urgency=low * NMU * Applied Red Hat patch to fix gmp for IA-64, closes: #112711 -- John R. Daily Thu, 11 Oct 2001 09:10:14 -0500 libgmp3 (3.1.1-9) unstable; urgency=low * Added patch from Kevin Ryde adding mp to shlibs, closes: #96454 * Changed priority on -dev to match new overrides file (optional) * Added newest config.sub and config.guess files taken from * http://subversions.gnu.org/cgi-bin/cvsweb/config/ * closes: #97363 * Stripped note and comment sections from libs to satisfy lintian -- Dale Scheetz (Dwarf #1) Wed, 16 May 2001 11:34:55 -0400 libgmp3 (3.1.1-8) unstable; urgency=low * created new package (libgmp3-doc) containing gmp.info and * additional docs and demos previously in runtime, closes: #96224 * added README.headers explaining the additional header files in -dev * added README.doc to include in runtime and -dev packages * explaining the new location for the documentation files * added patch provided by LaMont Jones for PARISC, closes: #96235 -- Dale Scheetz (Dwarf #1) Sat, 5 May 2001 19:45:00 -0400 libgmp3 (3.1.1-7) unstable; urgency=low * added memory patch for m68k, closes: #96029 * finally changed priority to match the overrides file... -- Dale Scheetz (Dwarf #1) Wed, 2 May 2001 10:15:58 -0400 libgmp3 (3.1.1-6) unstable; urgency=low * changed config option to use --enable-mpbsd, creating the * needed mp libs, closes: #93361 -- Dale Scheetz (Dwarf #1) Wed, 25 Apr 2001 09:04:04 -0400 libgmp3 (3.1.1-5) unstable; urgency=low * provided --prefix=/usr to config to properly configure .la file. -- Dale Scheetz (Dwarf #1) Mon, 23 Apr 2001 10:51:39 -0400 libgmp3 (3.1.1-4) unstable; urgency=low * added --enable-bsdmp in configure. closes: #92544 * added compatablity links for libmp (.a .so). closes: #92545 * used make install to use libtool on .la libs. closes: #89552 -- Dale Scheetz (Dwarf #1) Sun, 8 Apr 2001 13:34:14 -0400 libgmp3 (3.1.1-3) unstable; urgency=low * Changed maintainer in control to match key, for maintainer upload credit * closes: #70777, #78501, #79136, #70781, #78819, #79847, #80996 * closes: #79283, #71696, #70751 * Added updated version of config.guess and config.sub closes: #84911 -- Dale Scheetz (Dwarf #1) Tue, 27 Feb 2001 05:09:10 -0500 libgmp3 (3.1.1-2) unstable; urgency=low * Fixed info file conflict between libgmp2 and libgmp3 closes: #70777 * Removed acconfig.h (actually *config.h) closes: #78501 * Removed broken and unneccessary info symlinks closes: #79136 * Added "Conflicts: libgmp2-dev" closes: #70781, #78819, #79847, #80996, #79283 * Added libgmp.la to -dev package closes: #71696 * Added demos and doc to /usr/share/doc/libgmp3 closes #70751 * Added Build-Depends: m4 -- Dale Scheetz (Dwarf #1) Sun, 25 Feb 2001 15:53:26 -0500 libgmp3 (3.1.1-1) unstable; urgency=low * new upstream source * distclean fixed in upstream source to remove config.cache closes: #70919 * added --target=`dpkg-architecture -qDEB_BUILD_GNU_TYPE` closes: #70808 * removed config.h from header files in -dev package closes: #70775 * also closes: #70748 * moved ldconfig into 'configure' stage only closes: #70809 * created /usr/share symlinks as per policy -- Dale Scheetz Sun, 22 Oct 2000 16:09:31 -0400 libgmp3 (3.1.0-1) unstable; urgency=low * new upstream source -- Dale Scheetz Sat, 26 Aug 2000 06:46:26 -0400 libgmp2 (2.0.2-6) frozen unstable; urgency=low * stripping libgmp2.a creates unsatisfied references by removing * desirable entry points. Stopped stripping this file. (no bug report) * removed superfluous /usr/include/gmp2 directory. closes: #56720 * removed bash file globbing from install commands. closes: #61588 -- Dale Scheetz Sun, 9 Apr 2000 04:12:22 -0400 libgmp2 (2.0.2-5) frozen unstable; urgency=low * Applied patch from Ben Collins for longlong.h - closes: #59210 -- Dale Scheetz Tue, 29 Feb 2000 10:33:30 -0500 libgmp2 (2.0.2-4) unstable; urgency=low * Added all header files to /usr/include - closes: #48948 * Removed /usr/include/gmp2 and replaced links with header files. * Applied patch to package description - closes: #51818 * Added conflict with older -dev packages - closes: #49284 * Moved sparc rules patch into all architectures * (by adding -DPIC to CFLAGS) -- Dale Scheetz Thu, 16 Dec 1999 22:26:19 -0500 libgmp2 (2.0.2-3.1) unstable; urgency=low * NMU for sparc, PLEASE INCLUDE THIS PATCH FROM THE BTS! * Fixes sparc failure (apparent in ssh when generating 'p') -- Ben Collins Sat, 14 Aug 1999 19:11:48 -0400 libgmp2 (2.0.2-3) unstable; urgency=low * Compiled against latest potato libc6 * Corrected line wrap in patch for power-pc: fixes 41303 -- Dale Scheetz Sun, 18 Jul 1999 14:47:43 -0400 libgmp2 (2.0.2-2) unstable; urgency=low * Returned the mistakenly removed '-Wl,...' option for the linker. * fixes: 38686, 38693, 38786, 38800, 38846, 38849, 38859 * fixes: 38664, 38665, 38697 * Added compatibility links for the old and the new linked programs. * Changed cp to install for install scripts, giving proper execute * permissions with any umask, fixes: 38696 * Added Conflicts: gmp2, gmp * fixes: 38666, 38683, 38515, 38913, 38773, 38677 * New Replaces: Conflicts: gmp2-dev, fixes: 38653 -- Dale Scheetz Sat, 5 Jun 1999 19:24:10 -0400 libgmp2 (2.0.2-1) unstable; urgency=low * Installed the following Daniel Jacobowitz set of patches: * * * Add patch for powerpc-linux support (fixes bug#31032, bug#31731). * * Remove debian/files in clean target (fixes bug#32323). * * Add the patches from the author at * to fix a number of upstream * bugs (fixes bug#26804): * * A typo in mpq_equal makes it fail if the first compared operand is * negative. This patch corrects the problem. Joe Keane found the * problem and wrote the patch. * * Several errors in mpf_set_str and mpf_get_str make these functions * segfault, and possibly generate incorrect results. This also * affects mpf_out_str, mpf_inp_str, and mpf_init_set_str. This * gzip'ed patch fixes these errors. * * A bug in a test case makes ake check' fail using the N32 ABI * under Irix6. Apply this patch to mpz/tests/t-powm_ui.c to fix the * bug. (Note that the N32 ABI isn't really supported in GMP; you * need to pass -n32 -mips3 -D_LONG_LONG_LIMB' manually to make GMP * build correctly.) * * The performance on SPARC is poor because of a typo that causes * some of the assembly code to be omitted. Apply this patch to * mpn/configure.in to fix this. * * A bug in mpz_invert makes it sometimes return a negative result, * and sometimes not detect when an inverse does not exist. Apply * this patch to mpz/invert.c to fix this. * * A bug in mpq_add and mpq_sub makes them work unreliably due to * references outside of allocated memory. Apply this patch to the * mpq subdirectory to fix this. * * A change to GCC (I think from version 2.8) makes GMP fail to build * on IBM RS/6000 computers running AIX. You'll see complaints of * unrecognized assembly instructions. Pass CFLAGS="-g -O2 * -mcpu=power" or CFLAGS="-g -O2 -mcpu=powerpc" to ake' to work * around this. (Choose the form that is appropriate for your system; * if you're unsure which processor type you have, try running * config.guess from the GMP top level directory.) * * A bug in mpz_probab_prime_p makes it work unreliably for numbers < * 4. Apply this patch to mpz/pprime_p.c to fix the bug. * * Update debian/control to reflect that GNU MP is covered by the LGPL, * not the GPL (fixes: bug#21326). * * Build libgmp2.so with -fPIC (fixes: bug#17746, bug#20022). * * Fix make check to run with a libgmp2.a; run make check during build. * * In addition to the above patches, the following changes were made: * * Renamed the package libgmp2, making it conflict with those replaced. * fixes: #28923, #28924 * Remove both debian/file* and debian/substvars* in clean tag. fixes: #32323 * provide generic links in libgmp2-dev for header files, libgmp.a, and * libgmp.so. Fixes: #25760, #31309 * Applied the ARM patches delivered by Jim Pick. Fixes: #33740 * Removed -Wl from makefile.in to conform to policy. -- Dale Scheetz Sun, 4 Apr 1999 22:16:41 -0400 gmp2 (2.0.2-6) unstable; urgency=low * Removed: Replaces, Conflicts, and Provides, gmp * Modified info files to reflect the new name: removes last overlap -- Dale Scheetz Sun, 8 Mar 1998 17:27:07 -0500 gmp2 (2.0.2-5) unstable; urgency=low * Changed linking from static to dynamic, fixes bug#16530, 14345 * Added dependency information, fixes bug#14060, 15377 * Properly strip both static and shared libraries, fixes bug#15668 * Now Provides: gmp, fixes bug#16086 * gmp2-dev now only Depends: gmp2. Removed Replaces: gmp, Conflicts: gmp -- Dale Scheetz Sun, 18 Jan 1998 10:44:43 -0500 gmp2 (2.0.2-4) unstable; urgency=low * split package into gmp2 and gmp2-dev...was gmp -- Dale Scheetz Sat, 22 Nov 1997 18:43:32 -0500 gmp (2.0.2-3) unstable stable; urgency=low * Added gmp-mparam.h to /usr/include, bug #9108 * Fixed copyright to reflect new license, bug #10739 * Added missing info files to installation, bug #10163 * Added changelog.Debian.gz and changelog.gz to /usr/doc/gmp -- Dale Scheetz Wed, 25 Jun 1997 14:47:17 -0400 gmp (2.0.2-2) unstable frozen; urgency=low * Removed execute bit from libgmp.a and so lib permissions. -- Dale Scheetz Sat, 26 Apr 1997 18:03:49 -0400 gmp (2.0.2-1) unstable; urgency=high * Upgraded to new upstream source -- Dale Scheetz Sun, 16 Mar 1997 20:48:20 -0500 gmp (1.3.2-8) unstable; urgency=low * bug#6999 fixed, removed executable flag from docs. -- Dale Scheetz Tue, 4 Feb 1997 11:12:07 -0500 gmp (1.3.2-7) unstable; urgency=low * bug#6825 fixed .shlibs to use package name instead of library name. -- Dale Scheetz Thu, 30 Jan 1997 09:48:30 -0500 gmp (1.3.2-6) unstable; urgency=low * added shlibs to debian/tmp/DEBIAN -- Dale Scheetz Thu, 14 Nov 1996 15:35:34 -0500 gmp (1.3.2-5) unstable; urgency=low * fixed debian/rules to get so numbers from the changelog -- Dale Scheetz Fri, 27 Sep 1996 11:34:36 -0400 gmp (1.3.2-4) unstable; urgency=low * removed log files from source files to "fix" the diff. -- Dale Scheetz Fri, 20 Sep 1996 09:36:18 -0400 gmp (1.3.2-3) unstable; urgency=low * added shared libraries * converted to new source format -- Dale Scheetz Tue, 10 Sep 1996 22:43:15 -0400 gmp (1.3.2-2) - dcs * Rebuild as ELF * New package maintainer: Dale Scheetz gmp (1.3.2-1) * Initial Debian release. -- Ian Jackson Sat, 29 Jul 1995 03:20:19 +0100 debian/NEWS.Debian0000644000000000000000000000031312164174705011052 0ustar gmp (2:5.1.2+dfsg-2) unstable; urgency=low * The bi-arch lib32gmp-dev header is now found in /usr/include/gmp32/$(triplet). -- Steve M. Robbins Sun, 30 Jun 2013 22:38:44 -0500 debian/compat0000644000000000000000000000000312064226267010374 0ustar 9 debian/patches/0000755000000000000000000000000012262543115010616 5ustar debian/patches/ELFv2-diff-elfv2abi_gmp-5.1.2.patch0000644000000000000000000000413512262542762016431 0ustar Index: b/mpn/powerpc64/elf.m4 =================================================================== --- a/mpn/powerpc64/elf.m4 +++ b/mpn/powerpc64/elf.m4 @@ -18,7 +18,11 @@ dnl You should have received a copy of the GNU Lesser General Public License dnl along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. -define(`ASM_START',`') +define(`ASM_START', +`ifdef(`ELFv2_ABI', +` + .abiversion 2 +')') dnl Called: PROLOGUE_cpu(GSYM_PREFIX`'foo) dnl EPILOGUE_cpu(GSYM_PREFIX`'foo) @@ -26,7 +30,17 @@ define(`PROLOGUE_cpu', m4_assert_numargs(1) - ` +`ifdef(`ELFv2_ABI', +` + .globl $1 + .type $1, @function + .section ".text" + .align 5 +$1: +0: addis 2, 12, (.TOC.-0b)@ha + addi 2, 2, (.TOC.-0b)@l + .localentry $1, .-$1 +',` .globl $1 .globl .$1 .section ".opd","aw" @@ -37,11 +51,16 @@ .type .$1, @function .section ".text" .align 5 -.$1:') +.$1: +')') define(`EPILOGUE_cpu', m4_assert_numargs(1) -` .size .$1, .-.$1') +`ifdef(`ELFv2_ABI',` + .size $1, .-$1 +',` + .size .$1, .-.$1 +')') define(`TOC_ENTRY', `') Index: b/configure =================================================================== --- a/configure +++ b/configure @@ -28473,6 +28473,23 @@ echo "include_mpn(\`powerpc32/powerpc-defs.m4')" >> $gmp_tmpconfigm4i + + # Check for Linux ELFv2 ABI + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if _CALL_ELF == 2 +yes +#endif +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "yes" >/dev/null 2>&1; then : + +echo "define()" >> $gmp_tmpconfigm4 + +fi +rm -f conftest* + + case $host in *-*-aix*) case $ABI in Index: b/configure.ac =================================================================== --- a/configure.ac +++ b/configure.ac @@ -3399,6 +3399,14 @@ GMP_ASM_POWERPC_PIC_ALWAYS GMP_ASM_POWERPC_R_REGISTERS GMP_INCLUDE_MPN(powerpc32/powerpc-defs.m4) + + # Check for Linux ELFv2 ABI + AC_EGREP_CPP(yes, +[#if _CALL_ELF == 2 +yes +#endif], + [GMP_DEFINE_RAW(["define()"])]) + case $host in *-*-aix*) case $ABI in debian/patches/ppc64el_mod.patch0000644000000000000000000000223712262542446013765 0ustar Description: Support ppc64el. Author: Torbjorn Granlund Origin: upstream, https://gmplib.org/repo/gmp/rev/221a3c6d87fd Index: gmp-5.1.2+dfsg/mpn/powerpc64/mode64/mod_1_1.asm =================================================================== --- gmp-5.1.2+dfsg.orig/mpn/powerpc64/mode64/mod_1_1.asm 2013-05-20 14:59:57.000000000 +0000 +++ gmp-5.1.2+dfsg/mpn/powerpc64/mode64/mod_1_1.asm 2013-12-16 09:10:30.830071826 +0000 @@ -69,7 +69,10 @@ adde r9, r9, r10 bdnz L(top) -L(end): lwz r0, 12(r6) +L(end): +ifdef(`HAVE_LIMB_LITTLE_ENDIAN', +` lwz r0, 8(r6)', +` lwz r0, 12(r6)') ld r3, 0(r6) cmpdi cr7, r0, 0 beq- cr7, L(4) Index: gmp-5.1.2+dfsg/mpn/powerpc64/mode64/mod_1_4.asm =================================================================== --- gmp-5.1.2+dfsg.orig/mpn/powerpc64/mode64/mod_1_4.asm 2013-05-20 14:59:57.000000000 +0000 +++ gmp-5.1.2+dfsg/mpn/powerpc64/mode64/mod_1_4.asm 2013-12-16 09:10:30.830071826 +0000 @@ -144,7 +144,10 @@ adde r9, r7, r4 bdnz L(top) -L(end): lwz r3, 12(cps) +L(end): +ifdef(`HAVE_LIMB_LITTLE_ENDIAN', +` lwz r3, 8(cps)', +` lwz r3, 12(cps)') mulld r10, r9, r26 mulhdu r9, r9, r26 addc r11, r0, r10 debian/patches/libtool-powerpc64le.patch0000644000000000000000000000071312262542767015470 0ustar Index: b/config.guess =================================================================== --- a/config.guess +++ b/config.guess @@ -1001,6 +1001,12 @@ ppcle:Linux:*:*) echo powerpcle-unknown-linux-${LIBC} exit ;; + ppc64el:Linux:*:*) + echo powerpc64le-unknown-linux-${LIBC} + exit ;; + ppcle:Linux:*:*) + echo powerpcle-unknown-linux-${LIBC} + exit ;; s390:Linux:*:* | s390x:Linux:*:*) echo ${UNAME_MACHINE}-ibm-linux-${LIBC} exit ;; debian/patches/preserve-ia64-registers.patch0000644000000000000000000000411712147566567016265 0ustar Patch taken from upstream repository http://gmplib.org:8000/gmp-5.1/rev/394bdf8fdaee # HG changeset patch # User Torbjorn Granlund # Date 1369216954 -7200 # Node ID 394bdf8fdaee749660cc5680cc0636ea0242fae7 # Parent 0771124b9f13b218a3f07f7dd7c127961974489d Don't clobber f16-f18. diff -r 0771124b9f13 -r 394bdf8fdaee mpn/ia64/divrem_2.asm --- a/mpn/ia64/divrem_2.asm Mon May 20 16:56:05 2013 +0200 +++ b/mpn/ia64/divrem_2.asm Wed May 22 12:02:34 2013 +0200 @@ -1,6 +1,6 @@ dnl IA-64 mpn_divrem_2 -- Divide an mpn number by a normalized 2-limb number. -dnl Copyright 2010 Free Software Foundation, Inc. +dnl Copyright 2010, 2013 Free Software Foundation, Inc. dnl This file is part of the GNU MP Library. @@ -98,17 +98,17 @@ br.call.sptk.many b0 = mpn_invert_limb ;; setf.sig f11 = r8 // di (non-final) - setf.sig f18 = r39 // d1 - setf.sig f17 = r36 // d0 + setf.sig f34 = r39 // d1 + setf.sig f33 = r36 // d0 mov r1 = r43 ;; mov r17 = 1 setf.sig f9 = r38 // n2 - xma.l f6 = f11, f18, f0 // t0 = LO(di * d1) + xma.l f6 = f11, f34, f0 // t0 = LO(di * d1) ;; setf.sig f10 = r37 // n1 setf.sig f15 = r17 // 1 - xma.hu f8 = f11, f17, f0 // s0 = HI(di * d0) + xma.hu f8 = f11, f33, f0 // s0 = HI(di * d0) ;; getf.sig r17 = f6 getf.sig r16 = f8 @@ -178,7 +178,7 @@ (p9) br.cond.dptk .L52 .L46: ') - setf.sig f16 = r8 // di + setf.sig f32 = r8 // di shladd r32 = r35, 3, r32 ;; @@ -189,8 +189,8 @@ ;; (p8) mov r37 = r0 (p9) ld8 r37 = [r34], -8 - xma.hu f8 = f9, f16, f10 // 0,29 - xma.l f12 = f9, f16, f10 // 0 + xma.hu f8 = f9, f32, f10 // 0,29 + xma.l f12 = f9, f32, f10 // 0 ;; getf.sig r20 = f12 // q0 4 xma.l f13 = f15, f8, f9 // q += n2 4 @@ -198,8 +198,8 @@ ;; getf.sig r18 = f13 // 8 xma.l f7 = f14, f13, f10 // 8 - xma.l f6 = f17, f13, f17 // t0 = LO(d0*q+d0) 8 - xma.hu f9 = f17, f13, f17 // t1 = HI(d0*q+d0) 9 + xma.l f6 = f33, f13, f33 // t0 = LO(d0*q+d0) 8 + xma.hu f9 = f33, f13, f33 // t1 = HI(d0*q+d0) 9 ;; getf.sig r38 = f7 // n1 12 getf.sig r16 = f6 // 13 debian/patches/series0000644000000000000000000000012112262543106012025 0ustar ELFv2-diff-elfv2abi_gmp-5.1.2.patch libtool-powerpc64le.patch ppc64el_mod.patch debian/patches/mpn_sbpi1_div.patch0000644000000000000000000001327312215127470014377 0ustar # HG changeset patch # User Torbjorn Granlund # Date 1373624469 -7200 # Node ID a447c0c537891ed23edf180594a89616364ee633 # Parent 6540e0b2925ead29f7158bb182e4fabfb9441433 Partial rewrite. diff -r 6540e0b2925e -r a447c0c53789 mpn/generic/sbpi1_div_sec.c --- a/mpn/generic/sbpi1_div_sec.c Mon Jul 01 19:16:32 2013 +0200 +++ b/mpn/generic/sbpi1_div_sec.c Fri Jul 12 12:21:09 2013 +0200 @@ -8,7 +8,7 @@ SAFE TO REACH THEM THROUGH DOCUMENTED INTERFACES. IN FACT, IT IS ALMOST GUARANTEED THAT THEY WILL CHANGE OR DISAPPEAR IN A FUTURE GNU MP RELEASE. -Copyright 2011, 2012 Free Software Foundation, Inc. +Copyright 2011, 2012, 2013 Free Software Foundation, Inc. This file is part of the GNU MP Library. @@ -29,6 +29,28 @@ #include "gmp-impl.h" #include "longlong.h" +/* This side-channel silent division algorithm reduces the partial remainder by + GMP_NUMB_BITS/2 bits at a time, compared to GMP_NUMB_BITS for the main + division algorithm. We do not insists on reducing by exactly + GMP_NUMB_BITS/2, but may leave a partial remainder that is D*B^i to 3D*B^i + too large (B is the limb base, D is the divisor, and i is the induction + variable); the subsequent step will handle the extra partial remainder bits. + + WIth that partial remainder reduction, each step generates a quotient "half + limb". The outer loop generates two quotient half limbs, an upper (q1h) and + a lower (q0h) which are stored sparsely in separate limb arrays. These + arrays are added at the end; using separate arrays avoids data-dependent + carry propagation which could else pose a side-channel leakage problem. + + The quotient half limbs may be between -3 to 0 from the accurate value + ("accurate" being the one which corresponds to a reduction to a principal + partial remainder). Too small quotient half limbs correspond to too large + remainders, which we reduce later, as described above. + + In order to keep quotients from getting too big, corresponding to a negative + partial remainder, we use an inverse which is sligtly smaller than usually. +*/ + #if OPERATION_sbpi1_div_qr_sec /* Needs (dn + 1) + (nn - dn) + (nn - dn) = 2nn - dn + 1 limbs at tp. */ #define FNAME mpn_sbpi1_div_qr_sec @@ -49,7 +71,7 @@ mp_limb_t dinv, mp_ptr tp) { - mp_limb_t nh, cy, q1h, q0h, dummy, h; + mp_limb_t nh, cy, q1h, q0h, dummy, cnd; mp_size_t i; mp_ptr hp; #if OPERATION_sbpi1_div_qr_sec @@ -72,77 +94,69 @@ #endif } + /* Decremenet inverse to keep quotient half limbs from being too large. */ + dinv -= dinv != 0; /* FIXME: cmp-to-int */ + /* Create a divisor copy shifted half a limb. */ hp = tp; /* (dn + 1) limbs */ - cy = mpn_lshift (hp, dp, dn, GMP_NUMB_BITS / 2); - hp[dn] = dp[dn - 1] >> GMP_NUMB_BITS / 2; + hp[dn] = mpn_lshift (hp, dp, dn, GMP_NUMB_BITS / 2); #if OPERATION_sbpi1_div_qr_sec qlp = tp + (dn + 1); /* (nn - dn) limbs */ qhp = tp + (nn + 1); /* (nn - dn) limbs */ #endif - np += nn; + np += nn - dn; + nh = 0; - /* Main loop. Develop one full limb per iteration, but do it in two steps in - order to avoid conditionals. Quotient bits will be either correct or - underestimates. When a quotient is underestimated, the next quotient will - compensate, since quotients are to be added at consecutive weight distance - GMP_NUMB_BITS/2. We make two quotient arrays, each with GMP_NUMB_BITS/2+2 - bits per entry. The arrays are added late after the loop. Separate - arrays avoid data-dependent carry propagation. */ - nh = 0; for (i = nn - dn - 1; i >= 0; i--) { np--; - nh = (nh << GMP_NUMB_BITS/2) + (np[0] >> GMP_NUMB_BITS/2); + nh = (nh << GMP_NUMB_BITS/2) + (np[dn] >> GMP_NUMB_BITS/2); umul_ppmm (q1h, dummy, nh, dinv); q1h += nh; #if OPERATION_sbpi1_div_qr_sec qhp[i] = q1h; #endif - cy = mpn_submul_1 (np - dn, hp, dn + 1, q1h); + mpn_submul_1 (np, hp, dn + 1, q1h); - nh = np[0]; + nh = np[dn]; umul_ppmm (q0h, dummy, nh, dinv); q0h += nh; #if OPERATION_sbpi1_div_qr_sec qlp[i] = q0h; #endif - cy = mpn_submul_1 (np - dn, dp, dn, q0h); - - nh -= cy; + nh -= mpn_submul_1 (np, dp, dn, q0h); } - np[0] = nh; + /* 1st adjustment depends on extra high remainder limb. */ + cnd = nh != 0; /* FIXME: cmp-to-int */ +#if OPERATION_sbpi1_div_qr_sec + qlp[0] += cnd; +#endif + nh -= mpn_subcnd_n (np, np, dp, dn, cnd); - np -= dn; - - /* 1st adjustment depends on extra high remainder limb. */ - h = np[dn]; -#if OPERATION_sbpi1_div_qr_sec - qlp[0] += h; -#endif - h -= mpn_subcnd_n (np, np, dp, dn, h); - - /* 2nd adjustment depends on remainder/divisor comparision as well as whether + /* 2nd adjustment depends on remainder/divisor comparison as well as whether extra remainder limb was nullified by previous subtract. */ cy = mpn_sub_n (np, np, dp, dn); - cy = cy == h; /* FIXME: might leak on some archs */ + cy = cy - nh; #if OPERATION_sbpi1_div_qr_sec - qlp[0] += cy; + qlp[0] += 1 - cy; #endif - mpn_addcnd_n (np, np, dp, dn, 1 - cy); + mpn_addcnd_n (np, np, dp, dn, cy); + /* 3rd adjustment depends on remainder/divisor comparison. */ + cy = mpn_sub_n (np, np, dp, dn); +#if OPERATION_sbpi1_div_qr_sec + qlp[0] += 1 - cy; +#endif + mpn_addcnd_n (np, np, dp, dn, cy); + +#if OPERATION_sbpi1_div_qr_sec /* Combine quotient halves into final quotient. */ -#if OPERATION_sbpi1_div_qr_sec - qh = 0; - if (nn - dn != 0) - { - qh = mpn_lshift (qhp, qhp, nn - dn, GMP_NUMB_BITS/2); - qh += mpn_add_n (qp, qhp, qlp, nn - dn); - } + qh = mpn_lshift (qhp, qhp, nn - dn, GMP_NUMB_BITS/2); + qh += mpn_add_n (qp, qhp, qlp, nn - dn); return qh; #else debian/libgmp10-doc.examples0000644000000000000000000000000611534330677013111 0ustar demos debian/README.Debian0000644000000000000000000000051611534330677011242 0ustar Documentation and Example Code ------------------------------ Sadly, due to licensing the GMP documentation is no longer shipped in Debian. The package libgmp10-doc now contains only demo code. Please see http://gmplib.org/manual/ for the documentation. -- Steve M. Robbins , Sat, 06 Nov 2010 18:00:53 -0500 debian/control0000644000000000000000000000603312262542637010604 0ustar Source: gmp Homepage: http://gmplib.org/ Section: libs Priority: optional Build-Depends: m4, debhelper (>= 9), dpkg-dev (>= 1.16.1~), dh-autoreconf Maintainer: Ubuntu Developers XSBC-Original-Maintainer: Debian Science Team Uploaders: Steve M. Robbins Vcs-Svn: svn://svn.debian.org/svn/debian-science/packages/gmp/trunk/ Vcs-Browser: http://svn.debian.org/viewsvn/debian-science/packages/gmp/trunk/ Standards-Version: 3.9.5 Package: libgmp10 Section: libs Priority: optional Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Pre-Depends: ${misc:Pre-Depends} Multi-Arch: same Description: Multiprecision arithmetic library GNU MP is a programmer's library for arbitrary precision arithmetic (ie, a bignum package). It can operate on signed integer, rational, and floating point numeric types. . It has a rich set of functions, and the functions have a regular interface. Package: libgmpxx4ldbl Section: libs Priority: optional Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Pre-Depends: ${misc:Pre-Depends} Multi-Arch: same Conflicts: libgmp3, libgmpxx4 Replaces: libgmp3 Description: Multiprecision arithmetic library (C++ bindings) GNU MP is a programmer's library for arbitrary precision arithmetic (ie, a bignum package). It can operate on signed integer, rational, and floating point numeric types. Package: libgmp-dev Section: libdevel Priority: optional Architecture: any Depends: libgmp10 (= ${binary:Version}), libgmpxx4ldbl (= ${binary:Version}), ${misc:Depends} Provides: libgmp10-dev Conflicts: libgmp3-dev (<< 5.0.1), libgmp10-dev Breaks: guile-1.8-dev (<< 1.8.8+1-1), libcdd-dev (<< 094b.dfsg-4.2), libcln-dev (<< 1.3.2-1.1), libmpc-dev (<< 0.9-3), libmpfr-dev (<< 3.0.1-5), librep-dev (<< 0.90.2-1.3), regina-normal-dev (<< 4.6-3) Replaces: libgmp3-dev, libgmp10-dev Recommends: libstdc++-4.8-dev | libstdc++-dev Suggests: libgmp10-doc, libmpfr-dev Multi-Arch: same Description: Multiprecision arithmetic library developers tools This development package provides the header files and the symbolic links to allow compilation and linking of programs that use the libraries provided in the libgmp10 package. . Both C and C++ bindings are present in this package. Package libstdc++-dev is required to use the C++ bindings. . The MPFR library (multiple-precision floating-point) used to be included, but has since been moved to package libmpfr-dev. Package: libgmp10-doc Section: doc Priority: optional Architecture: all Depends: ${misc:Depends} Description: Multiprecision arithmetic library example code This package provides example code illustrating the use of GMP. Package: libgmp3-dev Section: libdevel Priority: optional Architecture: any Depends: ${misc:Depends}, libgmp-dev (= ${binary:Version}) Conflicts: libgmp10-dev (<< 2:5.0.1+dfsg-7) Replaces: libgmp10-dev Description: Multiprecision arithmetic library developers tools This is a dummy package that simply pulls in libgmp-dev. It can safely be removed. debian/Notes0000644000000000000000000000125111534330677010211 0ustar Documentation ------------- The GMP documentation is licensed under terms of the GNU Free Documentation License. Sadly, Debian has decided to take a hard line on this license: the presence of two sentences is enough to prevent Debian from shipping the documentation. See: BTS 335403 http://lists.debian.org/debian-legal/2006/03/msg00536.html Split Upstream Source --------------------- tar xzf gmp-4.2.2.tar.gz mv gmp-4.2.2 gmp-4.2.2+dfsg mkdir gmp-doc-4.2.2 mv gmp-4.2.2+dfsg/doc/ gmp-doc-4.2.2/ mkdir gmp-4.2.2+dfsg/doc touch gmp-4.2.2+dfsg/doc/Makefile.{am,in} tar czf gmp_4.2.2+dfsg.orig.tar.gz gmp-4.2.2+dfsg tar czf gmp-doc_4.2.2.orig.tar.gz gmp-doc-4.2.2 debian/rules0000755000000000000000000001201212262542700010242 0ustar #!/usr/bin/make -f ORIG_SRC_VERSION = 5.1.3 DPKG_EXPORT_BUILDFLAGS = 1 include /usr/share/dpkg/buildflags.mk # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 # This has to be exported to make some magic below work. export DH_OPTIONS ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) JOBSFLAG = -j$(NUMJOBS) endif DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) export DEB_HOST_GNU_TYPE := $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) export DEB_BUILD_GNU_TYPE := $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) export DEB_HOST_MULTIARCH := $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) MAKE_CHECK = : disabled make check ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE)) MAKE_CHECK = $(MAKE) check endif endif #export CFLAGS = -Wall -g #export LDFLAGS = -Wl,-Bsymbolic-functions ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) CFLAGS += -O0 else ifneq (,$(findstring $(DEB_HOST_ARCH), ia64)) CFLAGS += -O2 else CFLAGS += -O3 endif endif confflags = --prefix=/usr --enable-cxx ifneq (,$(filter $(DEB_HOST_ARCH), amd64 kfreebsd-amd64 lpia)) confflags += --disable-fat else confflags += --enable-fat endif ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE)) AR = ar confflags_build += --build $(DEB_BUILD_GNU_TYPE) else AR = $(DEB_HOST_GNU_TYPE)-ar confflags_build += --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE) --target $(DEB_HOST_GNU_TYPE) endif ifneq (,$(findstring $(DEB_HOST_ARCH), x32)) confflags += ABI=x32 endif confflags_ma = $(confflags) $(confflags_build) --libdir=/usr/lib/$(DEB_HOST_MULTIARCH) CC = $(DEB_HOST_GNU_TYPE)-gcc CXX = $(DEB_HOST_GNU_TYPE)-g++ get-orig-source: gmp-$(ORIG_SRC_VERSION).tar.bz2 tar --bzip -xf $< mv gmp-$(ORIG_SRC_VERSION) gmp-$(ORIG_SRC_VERSION)+dfsg mkdir gmp-doc-$(ORIG_SRC_VERSION) mv gmp-$(ORIG_SRC_VERSION)+dfsg/doc/ gmp-doc-$(ORIG_SRC_VERSION)/ mkdir gmp-$(ORIG_SRC_VERSION)+dfsg/doc touch gmp-$(ORIG_SRC_VERSION)+dfsg/doc/Makefile.am touch gmp-$(ORIG_SRC_VERSION)+dfsg/doc/Makefile.in cd gmp-$(ORIG_SRC_VERSION)+dfsg/ && autoreconf --force --install tar czf gmp_$(ORIG_SRC_VERSION)+dfsg.orig.tar.gz gmp-$(ORIG_SRC_VERSION)+dfsg tar czf gmp-doc_$(ORIG_SRC_VERSION).orig.tar.gz gmp-doc-$(ORIG_SRC_VERSION) rm -rf gmp-$(ORIG_SRC_VERSION)+dfsg gmp-doc-$(ORIG_SRC_VERSION) gmp-$(ORIG_SRC_VERSION).tar.gz gmp-$(ORIG_SRC_VERSION).tar.bz2: wget ftp://ftp.gnu.org/gnu/gmp/$@ configure: configure-stamp configure-stamp: dh_autoreconf mkdir -p build cd build && ../configure $(confflags_ma) \ AR=$(AR) CC="$(CC)" CFLAGS="$(CFLAGS)" \ CXX="$(CXX)" CXXFLAGS="$(CXXFLAGS)" touch $@ build: build-stamp build-stamp: configure dh_testdir $(MAKE) $(JOBSFLAG) -C build $(MAKE_CHECK) -C build touch $@ clean: dh_testdir dh_testroot rm -rf build build-stamp dh_autoreconf_clean dh_clean install-prep: dh_testdir dh_testroot dh_prep dh_installdirs install: build-stamp install-prep rm -rf debian/tmp # Install places gmp.h in 'includeexecdir' which is non-standard and cannot be set at compile time, # so override it at install. $(MAKE) DESTDIR=`pwd`/debian/tmp includeexecdir=/usr/include/$(DEB_HOST_MULTIARCH) -C build install dh_install -plibgmp10 usr/lib/*/libgmp.so.* dh_install -plibgmpxx4ldbl usr/lib/*/libgmpxx.so.* dh_install -plibgmp-dev usr/lib/*/lib*.so dh_install -plibgmp-dev usr/lib/*/lib*.a dh_install -plibgmp-dev usr/include # Install upstream ChangeLog, AUTHORS, NEWS, and README only in -dev package dh_installchangelogs -plibgmp-dev dh_installdocs -plibgmp-dev AUTHORS NEWS README # This single target is used to build all the packages, all at once, or # one at a time. So keep in mind: any options passed to commands here will # affect _all_ packages. Anything you want to only affect one package # should be put in another target, such as the install target. binary-common: # See 633312, http://wiki.debian.org/ReleaseGoals/LAFileRemoval sed -i "/dependency_libs/ s/'.*'/''/" `find debian/ -name '*.la'` dh_testdir dh_testroot # User lower compatibility to avoid installing upstream changelog in all packages DH_COMPAT=6 dh_installchangelogs dh_installdocs dh_installexamples dh_installmenu dh_lintian dh_strip dh_link dh_compress dh_fixperms dh_makeshlibs dh_installdeb dh_shlibdeps dh_gencontrol dh_md5sums dh_builddeb # Build architecture independant packages using the common target. binary-indep: build install $(MAKE) -f debian/rules DH_OPTIONS=-i binary-common # Build architecture dependant packages using the common target. binary-arch: build install $(EXTRA_INSTALL) $(MAKE) -f debian/rules DH_OPTIONS=-s binary-common # Any other binary targets build just one binary package at a time. binary-%: build install make -f debian/rules binary-common DH_OPTIONS=-p$* build-arch: build build-indep: build binary: binary-indep binary-arch .PHONY: build build-arch build-indep clean binary-indep binary-arch binary-common binary install install-prep debian/source/0000755000000000000000000000000012253145256010473 5ustar debian/source/format0000644000000000000000000000001412121500500011656 0ustar 3.0 (quilt) debian/README.source0000644000000000000000000000350711534330677011363 0ustar This package uses quilt to manage all modifications to the upstream source. Changes are stored in the source package as diffs in debian/patches and applied during the build. To configure quilt to use debian/patches instead of patches, you want either to export QUILT_PATCHES=debian/patches in your environment or use this snippet in your ~/.quiltrc: for where in ./ ../ ../../ ../../../ ../../../../ ../../../../../; do if [ -e ${where}debian/rules -a -d ${where}debian/patches ]; then export QUILT_PATCHES=debian/patches fi done To get the fully patched source after unpacking the source package, cd to the root level of the source package and run: quilt push -a The last patch listed in debian/patches/series will become the current patch. To add a new set of changes, first run quilt push -a, and then run: quilt new where is a descriptive name for the patch, used as the filename in debian/patches. Then, for every file that will be modified by this patch, run: quilt add before editing those files. You must tell quilt with quilt add what files will be part of the patch before making changes or quilt will not work properly. After editing the files, run: quilt refresh to save the results as a patch. Alternately, if you already have an external patch and you just want to add it to the build system, run quilt push -a and then: quilt import -P /path/to/patch quilt push -a (add -p 0 to quilt import if needed). as above is the filename to use in debian/patches. The last quilt push -a will apply the patch to make sure it works properly. To remove an existing patch from the list of patches that will be applied, run: quilt delete You may need to run quilt pop -a to unapply patches first before running this command. debian/watch0000644000000000000000000000021612253143213010212 0ustar version=3 opts=dversionmangle=s/\+dfsg\d*$// \ http://gmplib.org/ \ (?:|.*/)gmp(?:[_\-]v?|)(\d\S*)\.(?:tar\.xz|txz|tar\.bz2|tbz2|tar\.gz|tgz)