summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormycroft <mycroft@pkgsrc.org>2003-02-21 12:25:22 +0000
committermycroft <mycroft@pkgsrc.org>2003-02-21 12:25:22 +0000
commit5d3ea311dda020adea4a997d0bbb3e02c012fdf4 (patch)
tree8dbe07059fff957030882faa7c4d4210c0b13e3c
parent8c561533940cbdfac01519c22de36cfb97eedba7 (diff)
downloadpkgsrc-5d3ea311dda020adea4a997d0bbb3e02c012fdf4.tar.gz
Update to gmp 4.1.2. Many changes, but the relevant bug fixes seems to be:
* mpn/generic/rootrem.c: In Newton loop, pad qp with leading zero. * mpn/generic/rootrem.c: Allocate 1.585 (log2(3)) times more space for pp temporary to allow for worst case overestimate of root. Add some asserts. * tests/mpz/t-root.c: Generalize and speed up. * mpfr/pow.c: Fixed bug (infinite loop) for exact powers. * mpfr/sub.c: Fixed wrong inexact flag for a - b where a and b are of different signs and EXP(a) < EXP(b). * printf/printffuns.c (gmp_fprintf_reps): Make it actually work for padding > 256. * gmp-impl.h (USE_LEADING_REGPARM): Disable for PIC code generation. * mpn/generic/tdiv_qr.c: Remove a bogus assert. * mpn/generic/mode1o.c, mpn/alpha/ev5/mode1o.c: Correction to ASSERTs. Reported by Christoph Ludwig. * mpf/urandomb.c: Truncate nbits to precision of rop. * configure.in (sparc v9 *bsd*): Add NetBSD and OpenBSD sparc64. (x86 openbsd*): Extra underscore for _GLOBAL_OFFSET_TABLE_. * mpn/generic/rootrem.c: Avoid overflow in xnb calculation. * mpz/root.c: Avoid overflow in rootnb calculation. * gmpxx.h (__gmp_binary_equal, __gmp_binary_not_equal): Fix broken mpq/double functions. * mpn/m68k/lshift.asm: Fix typo in !scale_available_p code. * mpn/m68k/rshift.asm: Likewise. * mpz/remove.c: Make src==0 return 0, not do DIVIDE_BY_ZERO. * mpfr/acinclude.m4 (MPFR_CONFIGS): Patch by Vincent for an apparent float rounding gremlin on powerpc. * mpf/inp_str.c: Fix returned count of chars read, reported by Paul Zimmermann. Also fix a memory leak for invalid input. * mpfr/set_q.c: Allow for 1 bit numerator or denominator.
-rw-r--r--devel/gmp/Makefile4
-rw-r--r--devel/gmp/PLIST7
-rw-r--r--devel/gmp/buildlink2.mk4
-rw-r--r--devel/gmp/distinfo10
-rw-r--r--devel/gmp/patches/patch-ga25
-rw-r--r--devel/gmp/patches/patch-gb33
-rw-r--r--devel/gmp/patches/patch-gc27
-rw-r--r--devel/gmp/patches/patch-gd30
8 files changed, 11 insertions, 129 deletions
diff --git a/devel/gmp/Makefile b/devel/gmp/Makefile
index 39fc084c4b0..78fb5f3e2d3 100644
--- a/devel/gmp/Makefile
+++ b/devel/gmp/Makefile
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.15 2003/01/02 20:30:59 hubertf Exp $
+# $NetBSD: Makefile,v 1.16 2003/02/21 12:25:22 mycroft Exp $
#
-DISTNAME= gmp-4.1
+DISTNAME= gmp-4.1.2
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_GNU:=gmp/}
diff --git a/devel/gmp/PLIST b/devel/gmp/PLIST
index 85313335c72..2751cbae2ba 100644
--- a/devel/gmp/PLIST
+++ b/devel/gmp/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.6 2002/08/25 21:49:42 jlam Exp $
+@comment $NetBSD: PLIST,v 1.7 2003/02/21 12:25:22 mycroft Exp $
include/gmp.h
include/gmpxx.h
@unexec ${INSTALL_INFO} --delete --info-dir=%D/info %D/info/gmp.info
@@ -12,12 +12,13 @@ info/gmp.info-5
info/gmp.info-6
info/gmp.info-7
info/gmp.info-8
+info/gmp.info-9
lib/libgmp.a
lib/libgmp.la
lib/libgmp.so
-lib/libgmp.so.6.0
+lib/libgmp.so.6.2
lib/libgmp.so.6
-lib/libgmpxx.so.3.2
+lib/libgmpxx.so.3.4
lib/libgmpxx.so.3
lib/libgmpxx.a
lib/libgmpxx.la
diff --git a/devel/gmp/buildlink2.mk b/devel/gmp/buildlink2.mk
index 00e9b1cae46..50e616f052e 100644
--- a/devel/gmp/buildlink2.mk
+++ b/devel/gmp/buildlink2.mk
@@ -1,10 +1,10 @@
-# $NetBSD: buildlink2.mk,v 1.1 2002/08/27 06:23:53 jlam Exp $
+# $NetBSD: buildlink2.mk,v 1.2 2003/02/21 12:25:22 mycroft Exp $
.if !defined(GMP_BUILDLINK2_MK)
GMP_BUILDLINK2_MK= # defined
BUILDLINK_PACKAGES+= gmp
-BUILDLINK_DEPENDS.gmp?= gmp>=4.1
+BUILDLINK_DEPENDS.gmp?= gmp>=4.1.2
BUILDLINK_PKGSRCDIR.gmp?= ../../devel/gmp
EVAL_PREFIX+= BUILDLINK_PREFIX.gmp=gmp
diff --git a/devel/gmp/distinfo b/devel/gmp/distinfo
index e456ad7bd98..b97cec96e27 100644
--- a/devel/gmp/distinfo
+++ b/devel/gmp/distinfo
@@ -1,8 +1,4 @@
-$NetBSD: distinfo,v 1.6 2002/08/25 21:49:43 jlam Exp $
+$NetBSD: distinfo,v 1.7 2003/02/21 12:25:22 mycroft Exp $
-SHA1 (gmp-4.1.tar.gz) = 6385fdfda2da9bd8c47256f5766b917f767c181b
-Size (gmp-4.1.tar.gz) = 2145387 bytes
-SHA1 (patch-ga) = 59b4b5cca8a78c3220b35b5abdbe9354f0c9865e
-SHA1 (patch-gb) = fc15a237f4bfc74aec382b3926dbfa1a224b7480
-SHA1 (patch-gc) = 811a6e3ce6691ce63338ca6283ba589db3ed6c84
-SHA1 (patch-gd) = 771fa505e8d2c8eed1e8c09f3d340c461ab350df
+SHA1 (gmp-4.1.2.tar.gz) = 68a6ee6488e9c660f201be70bc55b8e2c40b16b1
+Size (gmp-4.1.2.tar.gz) = 2159329 bytes
diff --git a/devel/gmp/patches/patch-ga b/devel/gmp/patches/patch-ga
deleted file mode 100644
index 9eeddc4628b..00000000000
--- a/devel/gmp/patches/patch-ga
+++ /dev/null
@@ -1,25 +0,0 @@
-$NetBSD: patch-ga,v 1.2 2002/08/25 21:49:43 jlam Exp $
-
-This is a patch for 4.1 from the GNU MP Homepage, it should be
-removed in future versions
-
-Index: randraw.c
-===================================================================
-RCS file: /home/cvsfiles/gmp/randraw.c,v
-retrieving revision 1.18
-retrieving revision 1.19
-diff -u -r1.18 -r1.19
---- randraw.c 2002/05/14 16:59:44 1.18
-+++ randraw.c 2002/06/09 08:12:03 1.19
-@@ -112,10 +112,8 @@
- if (seedn == 0)
- {
- /* Seed is 0. Result is C % M. Assume table is sensibly stored,
-- with C smaller than M*/
-+ with C smaller than M. */
- *rp = c;
--
-- ASSERT_ALWAYS (((mp_limb_t) 1 << m2exp) > c);
-
- *seedp = c;
- SIZ (rstate->_mp_seed) = 1;
diff --git a/devel/gmp/patches/patch-gb b/devel/gmp/patches/patch-gb
deleted file mode 100644
index 9ed1fd35e1f..00000000000
--- a/devel/gmp/patches/patch-gb
+++ /dev/null
@@ -1,33 +0,0 @@
-$NetBSD: patch-gb,v 1.2 2002/08/25 21:49:44 jlam Exp $
-
-This is a patch for 4.1 from the GNU MP Homepage, it should be
-removed in future versions
-
---- mpz/powm_ui.c.~1.16.~ Thu May 16 09:20:49 2002
-+++ mpz/powm_ui.c Sat Jun 1 10:41:34 2002
-@@ -115,6 +115,17 @@
-
- /* Main loop. */
-
-+ /* If m is already normalized (high bit of high limb set), and b is the
-+ same size, but a bigger value, and e==1, then there's no modular
-+ reductions done and we can end up with a result out of range at the
-+ end. */
-+ if (c == 0)
-+ {
-+ if (xn == mn && mpn_cmp (xp, mp, mn) >= 0)
-+ mpn_sub_n (xp, xp, mp, mn);
-+ goto finishup;
-+ }
-+
- while (c != 0)
- {
- mpn_sqr_n (tp, xp, xn);
-@@ -149,6 +160,7 @@
- c--;
- }
-
-+ finishup:
- /* We shifted m left m_zero_cnt steps. Adjust the result by reducing
- it with the original MOD. */
- if (m_zero_cnt != 0)
diff --git a/devel/gmp/patches/patch-gc b/devel/gmp/patches/patch-gc
deleted file mode 100644
index bb138ee94d1..00000000000
--- a/devel/gmp/patches/patch-gc
+++ /dev/null
@@ -1,27 +0,0 @@
-$NetBSD: patch-gc,v 1.2 2002/08/25 21:49:44 jlam Exp $
-
-This is a patch for 4.1 from the GNU MP Homepage, it should be
-removed in future versions
-
---- mpf/inp_str.c.old Tue Jan 2 18:53:42 2001
-+++ mpf/inp_str.c Wed Jul 3 10:57:33 2002
-@@ -64,6 +64,7 @@
- c = getc (stream);
- }
- ungetc (c, stream);
-+ nread--;
-
- if (str_size >= alloc_size)
- {
-@@ -74,9 +75,10 @@
- str[str_size] = 0;
-
- retval = mpf_set_str (rop, str, base);
-+ (*__gmp_free_func) (str, alloc_size);
-+
- if (retval == -1)
- return 0; /* error */
-
-- (*__gmp_free_func) (str, alloc_size);
- return str_size + nread;
- }
diff --git a/devel/gmp/patches/patch-gd b/devel/gmp/patches/patch-gd
deleted file mode 100644
index a5fcf6edff1..00000000000
--- a/devel/gmp/patches/patch-gd
+++ /dev/null
@@ -1,30 +0,0 @@
-$NetBSD: patch-gd,v 1.2 2002/08/25 21:49:45 jlam Exp $
-
-This is a patch for 4.1 from the GNU MP Homepage, it should be
-removed in future versions
-
---- gmpxx.h.old Wed Jul 3 10:45:48 2002
-+++ gmpxx.h Wed Jul 3 10:49:28 2002
-@@ -2633,10 +2633,18 @@
- }
-
- // conversion functions
-- const mpz_classref get_num() const { return mpz_classref(mpq_numref(mp)); }
-- mpz_classref get_num() { return mpz_classref(mpq_numref(mp)); }
-- const mpz_classref get_den() const { return mpz_classref(mpq_denref(mp)); }
-- mpz_classref get_den() { return mpz_classref(mpq_denref(mp)); }
-+
-+ // casting a reference to an mpz_t to mpz_class & is a dirty hack,
-+ // but works because the internal representation of mpz_class is
-+ // exactly an mpz_t
-+ const mpz_class & get_num() const
-+ { return reinterpret_cast<const mpz_class &>(*mpq_numref(mp)); }
-+ mpz_class & get_num()
-+ { return reinterpret_cast<mpz_class &>(*mpq_numref(mp)); }
-+ const mpz_class & get_den() const
-+ { return reinterpret_cast<const mpz_class &>(*mpq_denref(mp)); }
-+ mpz_class & get_den()
-+ { return reinterpret_cast<mpz_class &>(*mpq_denref(mp)); }
-
- mpq_srcptr get_mpq_t() const { return mp; }
- mpq_ptr get_mpq_t() { return mp; }