Skip to content

Commit 70de443

Browse files
author
GitHub Actions
committed
Update tzdata and zoneinfo to version 2016g.
1 parent 443471a commit 70de443

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

91 files changed

+1232
-1082
lines changed

tzdata/LICENSE

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
With a few exceptions, all files in the tz code and data (including
2-
this one) are in the public domain. The exceptions are tzcode's
3-
date.c, newstrftime.3, and strftime.c, which contain material derived
4-
from BSD and which use the BSD 3-clause license.
2+
this one) are in the public domain. The exceptions are date.c,
3+
newstrftime.3, and strftime.c, which contain material derived from BSD
4+
and which use the BSD 3-clause license.

tzdata/Makefile

Lines changed: 113 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
# Package name for the code distribution.
55
PACKAGE= tzcode
66

7-
# Version numbers of the code and data distributions.
8-
VERSION= 2016f
7+
# Version number for the distribution, overridden in the 'tarballs' rule below.
8+
VERSION= unknown
99

1010
# Email address for bug reports.
1111
@@ -240,7 +240,7 @@ GCC_DEBUG_FLAGS = -Dlint -g3 -O3 -fno-common -fstrict-aliasing \
240240
CFLAGS=
241241

242242
# Linker flags. Default to $(LFLAGS) for backwards compatibility
243-
# to tzcode2012h and earlier.
243+
# to release 2012h and earlier.
244244

245245
LDFLAGS= $(LFLAGS)
246246

@@ -256,7 +256,7 @@ ZIC= $(zic) $(ZFLAGS)
256256

257257
ZFLAGS=
258258

259-
# How to use zic to install tzdata binary files.
259+
# How to use zic to install tz binary files.
260260

261261
ZIC_INSTALL= $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS)
262262

@@ -272,16 +272,16 @@ AWK= awk
272272
KSHELL= /bin/bash
273273

274274
# The path where SGML DTDs are kept and the catalog file(s) to use when
275-
# validating. The default is appropriate for Ubuntu 13.10.
275+
# validating. The default should work on both Debian and Red Hat.
276276
SGML_TOPDIR= /usr
277277
SGML_DTDDIR= $(SGML_TOPDIR)/share/xml/w3c-sgml-lib/schema/dtd
278278
SGML_SEARCH_PATH= $(SGML_DTDDIR)/REC-html401-19991224
279279
SGML_CATALOG_FILES= \
280-
$(SGML_TOPDIR)/share/doc/w3-recs/html/www.w3.org/TR/1999/REC-html401-19991224/HTML4.cat
280+
$(SGML_TOPDIR)/share/doc/w3-recs/html/www.w3.org/TR/1999/REC-html401-19991224/HTML4.cat:$(SGML_TOPDIR)/share/sgml/html/4.01/HTML4.cat
281281

282282
# The name, arguments and environment of a program to validate your web pages.
283-
# See <http://www.jclark.com/sp/> for a validator, and
284-
# <http://validator.w3.org/source/> for a validation library.
283+
# See <http://openjade.sourceforge.net/doc/> for a validator, and
284+
# <https://validator.w3.org/source/> for a validation library.
285285
VALIDATE = nsgmls
286286
VALIDATE_FLAGS = -s -B -wall -wno-unused-param
287287
VALIDATE_ENV = \
@@ -326,7 +326,7 @@ OK_LINE= '^'$(OK_CHAR)'*$$'
326326
327327
# Flags to give 'tar' when making a distribution.
328328
# Try to use flags appropriate for GNU tar.
329-
GNUTARFLAGS= --numeric-owner --owner=0 --group=0 --mode=go+u,go-w
329+
GNUTARFLAGS= --numeric-owner --owner=0 --group=0 --mode=go+u,go-w --sort=name
330330
TARFLAGS= `if tar $(GNUTARFLAGS) --version >/dev/null 2>&1; \
331331
then echo $(GNUTARFLAGS); \
332332
else :; \
@@ -356,7 +356,7 @@ HEADERS= tzfile.h private.h
356356
NONLIBSRCS= zic.c zdump.c
357357
NEWUCBSRCS= date.c strftime.c
358358
SOURCES= $(HEADERS) $(LIBSRCS) $(NONLIBSRCS) $(NEWUCBSRCS) \
359-
tzselect.ksh workman.sh
359+
tzselect.ksh version workman.sh
360360
MANS= newctime.3 newstrftime.3 newtzset.3 time2posix.3 \
361361
tzfile.5 tzselect.8 zic.8 zdump.8
362362
MANTXTS= newctime.3.txt newstrftime.3.txt newtzset.3.txt \
@@ -378,7 +378,32 @@ DATA= $(YDATA) $(NDATA) backzone $(TABDATA) \
378378
leap-seconds.list yearistype.sh
379379
AWK_SCRIPTS= checklinks.awk checktab.awk leapseconds.awk
380380
MISC= $(AWK_SCRIPTS) zoneinfo2tdf.pl
381-
ENCHILADA= $(COMMON) $(DOCS) $(SOURCES) $(DATA) $(MISC)
381+
TZS_YEAR= 2050
382+
TZS= to$(TZS_YEAR).tzs
383+
TZS_NEW= to$(TZS_YEAR)new.tzs
384+
TZS_DEPS= $(PRIMARY_YDATA) asctime.c localtime.c \
385+
private.h tzfile.h zdump.c zic.c
386+
ENCHILADA= $(COMMON) $(DOCS) $(SOURCES) $(DATA) $(MISC) $(TZS)
387+
388+
# Consult these files when deciding whether to rebuild the 'version' file.
389+
# This list is not the same as the output of 'git ls-files', since
390+
# .gitignore is not distributed.
391+
VERSION_DEPS= \
392+
CONTRIBUTING LICENSE Makefile NEWS README Theory \
393+
africa antarctica asctime.c asia australasia \
394+
backward backzone \
395+
checklinks.awk checktab.awk \
396+
date.1 date.c difftime.c \
397+
etcetera europe factory iso3166.tab \
398+
leap-seconds.list leapseconds.awk localtime.c \
399+
newctime.3 newstrftime.3 newtzset.3 northamerica \
400+
pacificnew private.h \
401+
southamerica strftime.c systemv \
402+
time2posix.3 tz-art.htm tz-how-to.html tz-link.htm \
403+
tzfile.5 tzfile.h tzselect.8 tzselect.ksh \
404+
workman.sh yearistype.sh \
405+
zdump.8 zdump.c zic.8 zic.c \
406+
zone.tab zone1970.tab zoneinfo2tdf.pl
382407
383408
# And for the benefit of csh users on systems that assume the user
384409
# shell should be used to handle commands in Makefiles. . .
@@ -408,9 +433,16 @@ INSTALL: ALL install date.1
408433
cp date $(DESTDIR)$(BINDIR)/.
409434
cp -f date.1 $(DESTDIR)$(MANDIR)/man1/.
410435
411-
version.h:
436+
version: $(VERSION_DEPS)
437+
{ V=$$(git describe --match '[0-9][0-9][0-9][0-9][a-z]*' \
438+
--abbrev=7 --dirty) || \
439+
V=$(VERSION); } && \
440+
printf '%s\n' "$$V" >$@
441+
442+
version.h: version
412443
(echo 'static char const PKGVERSION[]="($(PACKAGE)) ";' && \
413-
echo 'static char const TZVERSION[]="$(VERSION)";' && \
444+
printf 'static char const TZVERSION[]="%s";\n' \
445+
"$$(cat version)" && \
414446
echo 'static char const REPORT_BUGS_TO[]="$(BUGEMAIL)";') >$@
415447
416448
zdump: $(TZDOBJS)
@@ -477,26 +509,47 @@ posix_packrat:
477509
478510
zones: $(REDO)
479511
512+
$(TZS_NEW): $(TDATA) zdump zic
513+
mkdir -p tzs.dir
514+
$(zic) -d tzs.dir $(TDATA)
515+
$(AWK) '/^Link/{print $$1 "\t" $$2 "\t" $$3}' \
516+
$(TDATA) | LC_ALL=C sort >$@.out
517+
zones=$$($(AWK) -v wd="$$(pwd)" \
518+
'/^Zone/{print wd "/tzs.dir/" $$2}' $(TDATA) \
519+
| LC_ALL=C sort) && \
520+
./zdump -i -c $(TZS_YEAR) $$zones >>$@.out
521+
sed 's,^TZ=".*tzs\.dir/,TZ=",' $@.out >$@
522+
rm -fr tzs.dir $@.out
523+
524+
# If $(TZS) does not already exist (e.g., old-format tarballs), create it.
525+
# If it exists but 'make check_tzs' fails, a maintainer should inspect the
526+
# failed output and fix the inconsistency, perhaps by running 'make force_tzs'.
527+
$(TZS):
528+
$(MAKE) force_tzs
529+
530+
force_tzs: $(TZS_NEW)
531+
cp $(TZS_NEW) $(TZS)
532+
480533
libtz.a: $(LIBOBJS)
481534
$(AR) ru $@ $(LIBOBJS)
482535
$(RANLIB) $@
483536
484537
date: $(DATEOBJS)
485538
$(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(DATEOBJS) $(LDLIBS)
486539
487-
tzselect: tzselect.ksh
540+
tzselect: tzselect.ksh version
488541
sed \
489542
-e 's|#!/bin/bash|#!$(KSHELL)|g' \
490543
-e 's|AWK=[^}]*|AWK=$(AWK)|g' \
491544
-e 's|\(PKGVERSION\)=.*|\1='\''($(PACKAGE)) '\''|' \
492545
-e 's|\(REPORT_BUGS_TO\)=.*|\1=$(BUGEMAIL)|' \
493546
-e 's|TZDIR=[^}]*|TZDIR=$(TZDIR)|' \
494-
-e 's|\(TZVERSION\)=.*|\1=$(VERSION)|' \
495-
<$? >$@
547+
-e 's|\(TZVERSION\)=.*|\1='"$$(cat version)"'|' \
548+
<$@.ksh >$@
496549
chmod +x $@
497550
498551
check: check_character_set check_white_space check_links check_sorted \
499-
check_tables check_web
552+
check_tables check_tzs check_web
500553
501554
check_character_set: $(ENCHILADA)
502555
LC_ALL=en_US.utf8 && export LC_ALL && \
@@ -532,19 +585,22 @@ check_tables: checktab.awk $(PRIMARY_YDATA) $(ZONETABLES)
532585
|| exit; \
533586
done
534587
588+
check_tzs: $(TZS) $(TZS_NEW)
589+
diff -u $(TZS) $(TZS_NEW)
590+
535591
check_web: $(WEB_PAGES)
536592
$(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) $(WEB_PAGES)
537593
538594
clean_misc:
539595
rm -f core *.o *.out \
540596
date tzselect version.h zdump zic yearistype libtz.a
541597
clean: clean_misc
542-
rm -fr tzpublic
598+
rm -fr *.dir tzdb-*/ $(TZS_NEW)
543599
544600
maintainer-clean: clean
545601
@echo 'This command is intended for maintainers to use; it'
546602
@echo 'deletes files that may need special tools to rebuild.'
547-
rm -f leapseconds $(MANTXTS) *.asc *.tar.gz
603+
rm -f leapseconds version $(MANTXTS) $(TZS) *.asc *.tar.*
548604
549605
names:
550606
@echo $(ENCHILADA)
@@ -591,6 +647,8 @@ set-timestamps.out: $(ENCHILADA)
591647
touch -cmr `ls -t $$file workman.sh | sed 1q` $$file.txt || \
592648
exit; \
593649
done
650+
touch -cmr $$(ls -t $(TZS_DEPS) | sed 1q) $(TZS)
651+
touch -cmr $$(ls -t $(VERSION_DEPS) | sed 1q) version
594652
touch $@
595653
596654
# The zics below ensure that each data file can stand on its own.
@@ -599,12 +657,12 @@ set-timestamps.out: $(ENCHILADA)
599657
check_public:
600658
$(MAKE) maintainer-clean
601659
$(MAKE) "CFLAGS=$(GCC_DEBUG_FLAGS)" ALL
602-
mkdir tzpublic
660+
mkdir -p public.dir
603661
for i in $(TDATA) ; do \
604-
$(zic) -v -d tzpublic $$i 2>&1 || exit; \
662+
$(zic) -v -d public.dir $$i 2>&1 || exit; \
605663
done
606-
$(zic) -v -d tzpublic $(TDATA)
607-
rm -fr tzpublic
664+
$(zic) -v -d public.dir $(TDATA)
665+
rm -fr public.dir
608666
609667
# Check that the code works under various alternative
610668
# implementations of time_t.
@@ -616,15 +674,15 @@ check_time_t_alternatives:
616674
fi && \
617675
zones=`$(AWK) '/^[^#]/ { print $$3 }' <zone1970.tab` && \
618676
for type in $(TIME_T_ALTERNATIVES); do \
619-
mkdir -p tzpublic/$$type && \
677+
mkdir -p time_t.dir/$$type && \
620678
$(MAKE) clean_misc && \
621-
$(MAKE) TOPDIR=`pwd`/tzpublic/$$type \
679+
$(MAKE) TOPDIR=$$(pwd)/time_t.dir/$$type \
622680
CFLAGS='$(CFLAGS) -Dtime_tz='"'$$type'" \
623681
REDO='$(REDO)' \
624682
install && \
625683
diff $$quiet_option -r \
626-
tzpublic/int64_t/etc/zoneinfo \
627-
tzpublic/$$type/etc/zoneinfo && \
684+
time_t.dir/int64_t/etc/zoneinfo \
685+
time_t.dir/$$type/etc/zoneinfo && \
628686
case $$type in \
629687
int32_t) range=-2147483648,2147483647;; \
630688
uint32_t) range=0,4294967296;; \
@@ -633,16 +691,20 @@ check_time_t_alternatives:
633691
*) range=-10000000000,10000000000;; \
634692
esac && \
635693
echo checking $$type zones ... && \
636-
tzpublic/int64_t/etc/zdump -V -t $$range $$zones \
637-
>tzpublic/int64_t.out && \
638-
tzpublic/$$type/etc/zdump -V -t $$range $$zones \
639-
>tzpublic/$$type.out && \
640-
diff -u tzpublic/int64_t.out tzpublic/$$type.out \
694+
time_t.dir/int64_t/etc/zdump -V -t $$range $$zones \
695+
>time_t.dir/int64_t.out && \
696+
time_t.dir/$$type/etc/zdump -V -t $$range $$zones \
697+
>time_t.dir/$$type.out && \
698+
diff -u time_t.dir/int64_t.out time_t.dir/$$type.out \
641699
|| exit; \
642700
done
643-
rm -fr tzpublic
701+
rm -fr time_t.dir
702+
703+
tarballs signatures: version
704+
$(MAKE) VERSION="$$(cat version)" $@_version
644705

645-
tarballs: tzcode$(VERSION).tar.gz tzdata$(VERSION).tar.gz
706+
tarballs_version: tzcode$(VERSION).tar.gz tzdata$(VERSION).tar.gz \
707+
tzdb-$(VERSION).tar.lz
646708

647709
tzcode$(VERSION).tar.gz: set-timestamps.out
648710
LC_ALL=C && export LC_ALL && \
@@ -655,14 +717,26 @@ tzdata$(VERSION).tar.gz: set-timestamps.out
655717
tar $(TARFLAGS) -cf - $(COMMON) $(DATA) $(MISC) | \
656718
gzip $(GZIPFLAGS) > $@
657719

658-
signatures: tzcode$(VERSION).tar.gz.asc tzdata$(VERSION).tar.gz.asc
720+
tzdb-$(VERSION).tar.lz: set-timestamps.out
721+
rm -fr tzdb-$(VERSION)
722+
mkdir tzdb-$(VERSION)
723+
ln $(ENCHILADA) tzdb-$(VERSION)
724+
touch -cmr $$(ls -t tzdb-$(VERSION)/* | sed 1q) tzdb-$(VERSION)
725+
LC_ALL=C && export LC_ALL && \
726+
tar $(TARFLAGS) -cf - tzdb-$(VERSION) | lzip -9 > $@
727+
728+
signatures_version: tzcode$(VERSION).tar.gz.asc tzdata$(VERSION).tar.gz.asc \
729+
tzdb-$(VERSION).tar.lz.asc
659730

660731
tzcode$(VERSION).tar.gz.asc: tzcode$(VERSION).tar.gz
661732
gpg --armor --detach-sign $?
662733

663734
tzdata$(VERSION).tar.gz.asc: tzdata$(VERSION).tar.gz
664735
gpg --armor --detach-sign $?
665736

737+
tzdb-$(VERSION).tar.lz.asc: tzdb-$(VERSION).tar.lz
738+
gpg --armor --detach-sign $?
739+
666740
typecheck:
667741
$(MAKE) clean
668742
for i in "long long" unsigned; \
@@ -688,8 +762,10 @@ zic.o: private.h tzfile.h version.h
688762
.PHONY: ALL INSTALL all
689763
.PHONY: check check_character_set check_links
690764
.PHONY: check_public check_sorted check_tables
691-
.PHONY: check_time_t_alternatives check_web check_white_space clean clean_misc
765+
.PHONY: check_time_t_alternatives check_tzs check_web check_white_space
766+
.PHONY: clean clean_misc force_tzs
692767
.PHONY: install install_data maintainer-clean names
693768
.PHONY: posix_only posix_packrat posix_right
694-
.PHONY: public right_only right_posix signatures tarballs typecheck
769+
.PHONY: public right_only right_posix signatures signatures_version
770+
.PHONY: tarballs tarballs_version typecheck
695771
.PHONY: zonenames zones

0 commit comments

Comments
 (0)