Makefile.am: Ship `debian/compat'.
[cfd] / getdate.y
index 4be26bf..a9de991 100644 (file)
--- a/getdate.y
+++ b/getdate.y
@@ -14,6 +14,7 @@
 
 #include <stdio.h>
 #include <ctype.h>
+#include <stdlib.h>
 
 #define ISSPACE(c) (isspace ((unsigned char)c))
 #define ISALPHA(c) (isalpha ((unsigned char)c))
@@ -836,6 +837,8 @@ yylex ()
 
 #define TM_YEAR_ORIGIN 1900
 
+#ifndef GETDATE_IGNORE_TIMEZONE
+
 /* Yield A - B, measured in seconds.  */
 static long
 difftm (a, b)
@@ -858,6 +861,8 @@ difftm (a, b)
          + (a->tm_sec - b->tm_sec));
 }
 
+#endif
+
 time_t
 get_date (p, now)
      const char *p;
@@ -927,6 +932,7 @@ get_date (p, now)
          zone by 24 hours to compensate.  This algorithm assumes that
          there is no DST transition within a day of the time_t boundaries.  */
 
+#ifndef GETDATE_IGNORE_TIMEZONE
       if (yyHaveZone)
        {
          tm = tm0;
@@ -942,6 +948,7 @@ get_date (p, now)
            }
          Start = mktime (&tm);
        }
+#endif
 
       if (Start == (time_t) -1)
        return Start;
@@ -956,6 +963,7 @@ get_date (p, now)
        return Start;
     }
 
+#ifndef GETDATE_IGNORE_TIMEZONE
   if (yyHaveZone)
     {
       long delta = yyTimezone * 60L + difftm (&tm, gmtime (&Start));
@@ -963,6 +971,7 @@ get_date (p, now)
        return -1;              /* time_t overflow */
       Start += delta;
     }
+#endif
 
   return Start;
 }