diff options
author | tnn <tnn@pkgsrc.org> | 2009-01-20 00:33:56 +0000 |
---|---|---|
committer | tnn <tnn@pkgsrc.org> | 2009-01-20 00:33:56 +0000 |
commit | 6b7f45461ec53bc863f1e392b1f0391b3787f967 (patch) | |
tree | 025be1fd9596ab3aa68c8fcc11a63a91b2f11077 /archivers | |
parent | 9e705de7c45516419d70e56bbc34dd92d3adb85d (diff) | |
download | pkgsrc-6b7f45461ec53bc863f1e392b1f0391b3787f967.tar.gz |
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 (limited to 'archivers')
-rw-r--r-- | archivers/gtar-base/distinfo | 4 | ||||
-rw-r--r-- | archivers/gtar-base/patches/patch-ah | 17 | ||||
-rw-r--r-- | archivers/gtar-base/patches/patch-ai | 17 |
3 files changed, 37 insertions, 1 deletions
diff --git a/archivers/gtar-base/distinfo b/archivers/gtar-base/distinfo index 995d6d9830a..d96c09f3424 100644 --- a/archivers/gtar-base/distinfo +++ b/archivers/gtar-base/distinfo @@ -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-ad) = c5106ba2d0a0414ccbc55dfbf71c95280080b190 SHA1 (patch-ae) = 99323cf270e3e60dd21db42aea3556dd9255cef2 SHA1 (patch-af) = 8e57e09e3b1a79310dc343c3741fc94916788b79 SHA1 (patch-ag) = 8e1f6d2b6d38a029485cd7a1987cc6acb6a4cc84 +SHA1 (patch-ah) = f1e26c3474982b9cef494554cd6e876c86afc22c +SHA1 (patch-ai) = 93904441dc0bfc100ce07845a0ba3c3b2c74ba25 diff --git a/archivers/gtar-base/patches/patch-ah b/archivers/gtar-base/patches/patch-ah new file mode 100644 index 00000000000..36eaf427d4a --- /dev/null +++ b/archivers/gtar-base/patches/patch-ah @@ -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 --git a/archivers/gtar-base/patches/patch-ai b/archivers/gtar-base/patches/patch-ai new file mode 100644 index 00000000000..4b16c24de57 --- /dev/null +++ b/archivers/gtar-base/patches/patch-ai @@ -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. */ |