summaryrefslogtreecommitdiff
path: root/time
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2017-06-16 11:09:21 +0000
committerJoseph Myers <joseph@codesourcery.com>2017-06-16 11:09:21 +0000
commit92bd70fb85bce57ac47ba5d8af008736832c955a (patch)
tree3fec830fb36ef1af2aaeb411f23dc76c3fcd7c15 /time
parenta448ee41e70a0b1d26557ffce8e550fe4aad2525 (diff)
Update timezone code from tzcode 2017b.
This patch updates files coming from tzcode to the versions in tzcode 2017b. A couple of changes to other glibc code are needed. time/tzset.c was using the SECSPERDAY macro from tzfile.h, which no longer defines that macro, so a local definition is added to tzset.c. Because timezone/private.h now defines the _ macro whenever HAVE_GETTEXT is true, even if it was previously defined, it is also necessary to avoid a conflict with the definition in include/libintl.h. Defining _ISOMAC is the obvious way to avoid such internal definitions being visible, together with defining TZ_DOMAIN so that zic and zdump continue to get the messages from the libc domain as desired. However, zic and zdump rely on PKGVERSION and REPORT_BUGS_TO from config.h, which is not included by default with _ISOMAC, so -include config.h needs adding to the options for these programs as well. Together those changes allow unmodified tzcode 2017b sources to work in glibc. Tested for x86_64. * timezone/private.h: Update from tzcode 2017b. * timezone/tzfile.h: Likewise. * timezone/tzselect.ksh: Likewise. * timezone/zdump.c: Likewise. * timezone/zic.c: Likewise. * timezone/Makefile (tz-cflags): Add -D_ISOMAC -DTZ_DOMAIN='"libc"' -include $(common-objpfx)config.h. * time/tzset.c (SECSPERDAY): New macro.
Diffstat (limited to 'time')
-rw-r--r--time/tzset.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/time/tzset.c b/time/tzset.c
index 8868e9aada..cf5fe969b6 100644
--- a/time/tzset.c
+++ b/time/tzset.c
@@ -27,6 +27,8 @@
#include <timezone/tzfile.h>
+#define SECSPERDAY 86400
+
char *__tzname[2] = { (char *) "GMT", (char *) "GMT" };
int __daylight = 0;
long int __timezone = 0L;