summaryrefslogtreecommitdiff
path: root/community/datemath
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2013-08-13 01:33:19 -0700
committerroot <root@rshg054.dnsready.net>2013-08-13 01:33:19 -0700
commit7a65a910b77ad191d69881098c47f9b0c852d92e (patch)
tree9564e611af1442f8952a8cbddb3b0ad25ed71aab /community/datemath
parent60da6abff6c9577a783d72865f11de7a585e912e (diff)
Tue Aug 13 01:31:08 PDT 2013
Diffstat (limited to 'community/datemath')
-rw-r--r--community/datemath/PKGBUILD24
-rw-r--r--community/datemath/y2k.patch29
2 files changed, 53 insertions, 0 deletions
diff --git a/community/datemath/PKGBUILD b/community/datemath/PKGBUILD
new file mode 100644
index 000000000..23688f4d4
--- /dev/null
+++ b/community/datemath/PKGBUILD
@@ -0,0 +1,24 @@
+# $Id: PKGBUILD 74846 2012-08-07 05:46:50Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Todd Musall <tmusall@comcast.net>
+# Contributor: Todd Musall <tmusall@comcast.net>
+
+pkgname=datemath
+pkgver=2.0.10
+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
+ 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);