From a28736b03b50ff37ce2cd0fb2fa1ef2e37508108 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 9 Aug 2012 00:02:24 +0000 Subject: Thu Aug 9 00:02:24 UTC 2012 --- community/datemath/PKGBUILD | 11 +++++++---- community/datemath/y2k.patch | 29 +++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 4 deletions(-) create mode 100644 community/datemath/y2k.patch (limited to 'community/datemath') diff --git a/community/datemath/PKGBUILD b/community/datemath/PKGBUILD index a79868529..23688f4d4 100644 --- a/community/datemath/PKGBUILD +++ b/community/datemath/PKGBUILD @@ -1,21 +1,24 @@ -# $Id: PKGBUILD 65110 2012-02-20 04:48:43Z spupykin $ +# $Id: PKGBUILD 74846 2012-08-07 05:46:50Z spupykin $ # Maintainer: Sergej Pupykin # Maintainer: Todd Musall # Contributor: Todd Musall pkgname=datemath pkgver=2.0.10 -pkgrel=3 +pkgrel=4 pkgdesc="Command line date and time math utility." arch=('i686' 'x86_64') url="http://www.unixwiz.net/tools/datemath.html" license=("GPL") depends=('glibc') -source=(http://www.unixwiz.net/tools/$pkgname.tar.gz) -md5sums=('2c369d70a43313b71dbe3c7cc50207de') +source=(http://www.unixwiz.net/tools/$pkgname.tar.gz + y2k.patch) +md5sums=('2c369d70a43313b71dbe3c7cc50207de' + '87758503414a967f06566b94523fc010') build() { cd $srcdir + patch -Np0 <$srcdir/y2k.patch make install -D -m755 $srcdir/datemath $pkgdir/usr/bin/datemath } diff --git a/community/datemath/y2k.patch b/community/datemath/y2k.patch new file mode 100644 index 000000000..4605ad505 --- /dev/null +++ b/community/datemath/y2k.patch @@ -0,0 +1,29 @@ +diff -Naur ../datemath/util.c ./util.c +--- ../datemath/util.c 2004-03-06 18:27:59.000000000 +0100 ++++ ./util.c 2012-08-01 09:37:30.767738221 +0200 +@@ -18,6 +18,7 @@ + #include "defs.h" + + int century19_year = 40; /* 0..39 = 2000 / 40..99 = 1999 */ ++static int century; /* may not be 1900... */ + + /* + * jultoyymm() +@@ -35,6 +36,8 @@ + + if (mdy[YY] < 1900) /* too early? */ + mdy[YY] = 1900; ++ ++ century = mdy[YY] / 100; + + mdy[YY] %= 100; /* strip off 19xx */ + +@@ -59,7 +62,7 @@ + mdy[YY] = yymm / 100; + mdy[DD] = eflag ? daysinmm(mdy[MM], mdy[YY]) : 1; + +- mdy[YY] += 1900; ++ mdy[YY] += century * 100; + + if (rv = rmdyjul(mdy, &jdate), rv < 0) + die("bad date conversion in yymmtojul-(%d)", rv); -- cgit v1.2.3-54-g00ecf