pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/archivers/gtar-base 64-bit time_t fallout:
details: https://anonhg.NetBSD.org/pkgsrc/rev/14210e53f111
branches: trunk
changeset: 553386:14210e53f111
user: tnn <tnn%pkgsrc.org@localhost>
date: Tue Jan 20 00:33:56 2009 +0000
description:
64-bit time_t fallout:
gtar cowardly refuses to build if time_t doesn't fit in "long int",
as happens to be the case now on 32-bit NetBSD hosts.
Supress the error and turn it into a warning instead.
"make test" still OK
diffstat:
archivers/gtar-base/distinfo | 4 +++-
archivers/gtar-base/patches/patch-ah | 17 +++++++++++++++++
archivers/gtar-base/patches/patch-ai | 17 +++++++++++++++++
3 files changed, 37 insertions(+), 1 deletions(-)
diffs (57 lines):
diff -r c644e2c111f7 -r 14210e53f111 archivers/gtar-base/distinfo
--- a/archivers/gtar-base/distinfo Tue Jan 20 00:33:42 2009 +0000
+++ b/archivers/gtar-base/distinfo Tue Jan 20 00:33:56 2009 +0000
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.22 2008/05/18 01:48:09 tnn Exp $
+$NetBSD: distinfo,v 1.23 2009/01/20 00:33:56 tnn Exp $
SHA1 (tar-1.20.tar.gz) = 1bc0731a00f2483f381c48e0b3f359877ddff910
RMD160 (tar-1.20.tar.gz) = 6ac6847b4d0f4fcd61408f63df18b503699f2fb9
@@ -8,3 +8,5 @@
SHA1 (patch-ae) = 99323cf270e3e60dd21db42aea3556dd9255cef2
SHA1 (patch-af) = 8e57e09e3b1a79310dc343c3741fc94916788b79
SHA1 (patch-ag) = 8e1f6d2b6d38a029485cd7a1987cc6acb6a4cc84
+SHA1 (patch-ah) = f1e26c3474982b9cef494554cd6e876c86afc22c
+SHA1 (patch-ai) = 93904441dc0bfc100ce07845a0ba3c3b2c74ba25
diff -r c644e2c111f7 -r 14210e53f111 archivers/gtar-base/patches/patch-ah
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/archivers/gtar-base/patches/patch-ah Tue Jan 20 00:33:56 2009 +0000
@@ -0,0 +1,17 @@
+$NetBSD: patch-ah,v 1.5 2009/01/20 00:33:56 tnn Exp $
+
+--- lib/getdate.c.orig 2008-02-16 13:14:35.000000000 +0100
++++ lib/getdate.c
+@@ -227,8 +227,12 @@
+ long int. It also assumes that signed integer overflow silently
+ wraps around, but there's no portable way to check for that at
+ compile-time. */
++#ifdef __NetBSD__
++#warning this might break with 64-bit time_t on 32-bit hosts
++#else
+ verify (TYPE_IS_INTEGER (time_t));
+ verify (LONG_MIN <= TYPE_MINIMUM (time_t) && TYPE_MAXIMUM (time_t) <= LONG_MAX);
++#endif
+
+ /* An integer value, and the number of digits in its textual
+ representation. */
diff -r c644e2c111f7 -r 14210e53f111 archivers/gtar-base/patches/patch-ai
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/archivers/gtar-base/patches/patch-ai Tue Jan 20 00:33:56 2009 +0000
@@ -0,0 +1,17 @@
+$NetBSD: patch-ai,v 1.4 2009/01/20 00:33:56 tnn Exp $
+
+--- lib/mktime.c.orig 2007-10-30 21:48:29.000000000 +0100
++++ lib/mktime.c
+@@ -167,8 +167,12 @@ ydhms_diff (long int year1, long int yda
+ int year0, int yday0, int hour0, int min0, int sec0)
+ {
+ verify (C99_integer_division, -1 / 2 == 0);
++#ifdef __NetBSD__
++#warning this might break with 64-bit time_t on 32-bit hosts
++#else
+ verify (long_int_year_and_yday_are_wide_enough,
+ INT_MAX <= LONG_MAX / 2 || TIME_T_MAX <= UINT_MAX);
++#endif
+
+ /* Compute intervening leap days correctly even if year is negative.
+ Take care to avoid integer overflow here. */
Home |
Main Index |
Thread Index |
Old Index