Commit af252fa7 authored by Edwin Groothuis's avatar Edwin Groothuis
Browse files

Flatting the vendor dist tree of tzdata.

Approved by:	bde (mentor, implicit), des
parent dbe4cee6
# @(#)Makefile 8.1 (Berkeley) 6/8/93
# Change the line below for your time zone (after finding the zone you want in
# the time zone files, or adding it to a time zone file).
# Alternately, if you discover you've got the wrong time zone, you can just
# zic -l rightzone
LOCALTIME= US/Pacific
# If you want something other than Eastern United States time as a template
# for handling POSIX-style time zone environment variables,
# change the line below (after finding the zone you want in the
# time zone files, or adding it to a time zone file).
# Alternately, if you discover you've got the wrong time zone, you can just
# zic -p rightzone
POSIXRULES= US/Pacific
# Use an absolute path name for TZDIR unless you're just testing the software.
TZDIR= ${DESTDIR}/usr/share/zoneinfo
# If you always want time values interpreted as "seconds since the epoch
# (not counting leap seconds)", use
# REDO= posix_only
# below. If you always want right time values interpreted as "seconds since
# the epoch" (counting leap seconds)", use
# REDO= right_only
# below. If you want both sets of data available, with leap seconds not
# counted normally, use
# REDO= posix_right
# below. If you want both sets of data available, with leap seconds counted
# normally, use
# REDO= right_posix
# below.
REDO= right_only
# If you're running on a System V-style system and don't want lint grief,
# add
# -DUSG
# to the end of the "CFLAGS=" line.
#
# If you're running on a system where "strchr" is known as "index",
# (for example, a 4.[012]BSD system), add
# -Dstrchr=index
# to the end of the "CFLAGS=" line.
#
# If you're running on a system with a "mkdir" function, feel free to add
# -Demkdir=mkdir
# to the end of the "CFLAGS=" line
#
# If you want to use System V compatibility code, add
# -DUSG_COMPAT
# to the end of the "CFLAGS=" line.
#
# If your system has a "GMT offset" field in its "struct tm"s
# (or if you decide to add such a field in your system's "time.h" file),
# add the name to a define such as
# -DTM_GMTOFF=tm_gmtoff
# or
# -DTM_GMTOFF=_tm_gmtoff
# to the end of the "CFLAGS=" line.
#
# If your system has a "GMT offset" field in its "struct tm"s
# (or if you decide to add such a field in your system's "time.h" file),
# add the name to a define such as
# -DTM_ZONE=tm_zone
# or
# -DTM_ZONE=_tm_zone
# to the end of the "CFLAGS=" line.
#
# If you want code inspired by certain emerging standards, add
# -DSTD_INSPIRED
# to the end of the "CFLAGS=" line.
#
# If you want Source Code Control System ID's left out of object modules, add
# -DNOID
# to the end of the "CFLAGS=" line.
#
# If you'll never want to handle solar-time-based time zones, add
# -DNOSOLAR
# to the end of the "CFLAGS=" line
# (and comment out the "SDATA=" line below).
#
# If you want to allocate state structures in localtime, add
# -DALL_STATE
# to the end of the "CFLAGS=" line.
#
# If you want an "altzone" variable (a la System V Release 3.1), add
# -DALTZONE
# to the end of the "CFLAGS=" line.
#
# If you want a "gtime" function (a la MACH), add
# -DCMUCS
# to the end of the "CFLAGS=" line
.PATH: ${.CURDIR}/datfiles
CFLAGS= -DTM_GMTOFF=tm_gmtoff -DTM_ZONE=tm_zone
PROG= zic
MAN5= tzfile.0
SRCS= zic.c scheck.c ialloc.c
YDATA= africa antarctica asia australasia europe northamerica \
southamerica pacificnew etcetera factory
NDATA= systemv
#SDATA= solar87 solar88 solar89
TDATA= ${YDATA} ${NDATA} ${SDATA}
DATA= ${YDATA} ${NDATA} ${SDATA} leapseconds
USNO= usno1988 usno1989
posix_only: ${TDATA}
(cd ${.CURDIR}/datfiles; \
../obj/zic -d ${TZDIR} -L /dev/null ${TDATA})
right_only: leapseconds ${TDATA}
(cd ${.CURDIR}/datfiles; \
../obj/zic -d ${TZDIR} -L leapseconds ${TDATA})
other_two: leapseconds ${TDATA}
(cd ${.CURDIR}/datfiles; \
../obj/zic -d ${TZDIR}/posix -L /dev/null ${TDATA})
(cd ${.CURDIR}/datfiles; \
../obj/zic -d ${TZDIR}/right -L leapseconds ${TDATA})
posix_right: posix_only other_two
right_posix: right_only other_two
install: maninstall ${DATA} ${REDO}
(cd ${.CURDIR}/datfiles && ../obj/zic -d ${TZDIR} -p ${POSIXRULES})
install -c -o ${BINOWN} -g ${BINGRP} -m 444 \
${TZDIR}/${LOCALTIME} ${DESTDIR}/etc/localtime
chown -R ${BINOWN}.${BINGRP} ${TZDIR}
chmod -R a-w ${TZDIR}
.include <bsd.prog.mk>
# @(#)asia 7.1
# From Guy Harris:
# Incorporates data for Singapore from Robert Elz' asia 1.1, as well as
# additional information from Tom Yap, Sun Microsystems Intercontinental
# Technical Support (including a page from the Official Airline Guide -
# Worldwide Edition). The names for time zones are guesses.
###############################################################################
# People's Republic of China
# From Guy Harris:
# People's Republic of China. Yes, they really have only one time zone.
# From Bob Devine (January 28, 1988):
# No they don't. See TIME mag, February 17, 1986 p.52. Even though
# China is across 4 physical time zones, before Feb 1, 1986 only the
# Peking (Bejing) time zone was recognized. Since that date, China
# has two of 'em -- Peking's and Urumqi (named after the capital of
# the Xinjiang Uighur Autonomous Region). I don't know about DST for it.
#
# . . .I just deleted the DST table and this editor makes it too
# painful to suck in another copy.. So, here is what I have for
# DST start/end dates for Peking's time zone (info from AP):
#
# 1986 May 4 - Sept 14
# 1987 mid-April - ??
# From U. S. Naval Observatory (January 19, 1989):
# CHINA 8 H AHEAD OF UTC ALL OF CHINA, INCL TAIWAN
# CHINA 9 H AHEAD OF UTC APR 17 - SEP 10
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule PRC 1970 max - Apr Sun<=14 2:00 1:00 D
Rule PRC 1970 max - Sep Sun<=14 3:00 0 S
# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
Zone PRC 8:00 PRC C%sT
###############################################################################
# Republic of China
# From Guy Harris
# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
Zone ROC 8:00 - CST
###############################################################################
# Hongkong
# From Guy Harris
# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
Zone Hongkong 8:00 - HKT
###############################################################################
# Iran
# From Bob Devine (January 28, 1988):
# Iran: Last Sunday in March to third (?) Sunday in
# September. Since the revolution, the official calendar is Monarchic
# calendar; I have no idea what the correspondence between dates are.
# From U. S. Naval Observatory (January 19, 1989):
# IRAN 3.5H AHEAD OF UTC
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule Iran 1988 max - Mar lastSun 2:00 1:00 D
Rule Iran 1988 max - Sep Sun>=15 2:00 0 S
# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
Zone Iran 3:30 Iran I%sT
###############################################################################
# Israel
# From U. S. Naval Observatory (January 19, 1989):
# ISRAEL 2 H AHEAD OF UTC
# ISRAEL 3 H AHEAD OF UTC APR 10 - SEP 3
# From Ephraim Silverberg (April 18, 1989):
# Prior to 1989, the rules concerning Daylight Savings Time changed every
# year; as information, regarding exact times and dates during this period,
# is not readily available at the present time, the rules commence starting
# with the year 1989.
# From 1989 onwards the rules are as follows:
#
# 1. Daylight Savings Time commences midnight of the first Saturday night
# following the seven-day festival of Pesach (Passover). The transition
# is from midnight Israel Standard Time to 1 a.m. Israel Daylight Savings
# time. As the Pesach festival is dependent on the Lunar calendar (the
# first day is always on the 15th day of the month of Nisan), the rule
# changes every year on the Gregorian calendar.
#
# 2. Standard Time is reinstated on the Saturday night whereupon Jews
# following the Ashkenazi (European) rite begin to recite the Selichot
# (forgiveness) prayers prior to the Jewish Lunar New Year. The transition
# is from midnight Israel Daylight Savings time to 11 p.m. Israel Standard
# Time. The law (according to the Ashkenazi custom) concerning the
# commencement of the Selichot prayers is described in chapter 128, section
# 5 of the "Code of Jewish Law," by Rabbi Shlomo Ganzfried (translated by
# Hyman E. Goldin):
#
# Beginning with the Sunday [**] before Rosh Hashanah [***],
# we rise early for the service of Selichot (supplications for
# forgiveness). If Rosh Hashanah occurs on Monday or Tuesday, we
# begin saying the Selichot from the Sunday of the preceding week.
#
# This, too, varies from year to year on the Gregorian calendar and, thus,
# two explicit timezone rules are required for each Gregorian year.
#
# [**] actually Saturday night as the Jewish day commences at nightfall.
# [***] the Jewish Lunar New Year.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule Zion 1989 only - Apr 30 0:00 1:00 D
Rule Zion 1989 only - Sep 24 0:00 0:00 S
Rule Zion 1990 only - Apr 22 0:00 1:00 D
Rule Zion 1990 only - Sep 16 0:00 0:00 S
Rule Zion 1991 only - Apr 7 0:00 1:00 D
Rule Zion 1991 only - Sep 1 0:00 0:00 S
Rule Zion 1992 only - Apr 26 0:00 1:00 D
Rule Zion 1992 only - Sep 20 0:00 0:00 S
Rule Zion 1993 only - Apr 18 0:00 1:00 D
Rule Zion 1993 only - Sep 12 0:00 0:00 S
Rule Zion 1994 only - Apr 3 0:00 1:00 D
Rule Zion 1994 only - Aug 28 0:00 0:00 S
Rule Zion 1995 only - Apr 23 0:00 1:00 D
Rule Zion 1995 only - Sep 17 0:00 0:00 S
Rule Zion 1996 only - Apr 14 0:00 1:00 D
Rule Zion 1996 only - Sep 8 0:00 0:00 S
Rule Zion 1997 only - May 4 0:00 1:00 D
Rule Zion 1997 only - Sep 28 0:00 0:00 S
Rule Zion 1998 only - Apr 19 0:00 1:00 D
Rule Zion 1998 only - Sep 13 0:00 0:00 S
Rule Zion 1999 only - Apr 11 0:00 1:00 D
Rule Zion 1999 only - Sep 5 0:00 0:00 S
Rule Zion 2000 only - Apr 30 0:00 1:00 D
Rule Zion 2000 only - Sep 24 0:00 0:00 S
Rule Zion 2001 only - Apr 15 0:00 1:00 D
Rule Zion 2001 only - Sep 9 0:00 0:00 S
Rule Zion 2002 only - Apr 7 0:00 1:00 D
Rule Zion 2002 only - Sep 1 0:00 0:00 S
Rule Zion 2003 only - Apr 27 0:00 1:00 D
Rule Zion 2003 only - Sep 21 0:00 0:00 S
Rule Zion 2004 only - Apr 18 0:00 1:00 D
Rule Zion 2004 only - Sep 12 0:00 0:00 S
Rule Zion 2005 only - May 1 0:00 1:00 D
Rule Zion 2005 only - Sep 25 0:00 0:00 S
Rule Zion 2006 only - Apr 23 0:00 1:00 D
Rule Zion 2006 only - Sep 17 0:00 0:00 S
Rule Zion 2007 only - Apr 15 0:00 1:00 D
Rule Zion 2007 only - Sep 9 0:00 0:00 S
Rule Zion 2008 only - Apr 27 0:00 1:00 D
Rule Zion 2008 only - Sep 21 0:00 0:00 S
Rule Zion 2009 only - Apr 19 0:00 1:00 D
Rule Zion 2009 only - Sep 13 0:00 0:00 S
# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
Zone Israel 2:00 Zion I%sT
# The following is a chart of the day of the week and Gregorian date of
# the first day of Pesach and the first day of Rosh Hashanah for the years
# 1989 through 2009 inclusive.
#
# First Day of Passover
# ---------------------
# Gregorian Year Day of Week Month Day
# -------------- ----------- ----- ---
# 1989 Thursday April 20
# 1990 Tuesday April 10
# 1991 Saturday March 30
# 1992 Saturday April 18
# 1993 Tuesday April 6
# 1994 Sunday March 27
# 1995 Saturday April 15
# 1996 Thursday April 4
# 1997 Tuesday April 22
# 1998 Saturday April 11
# 1999 Thursday April 1
# 2000 Thursday April 20
# 2001 Sunday April 8
# 2002 Thursday March 28
# 2003 Thursday April 17
# 2004 Tuesday April 6
# 2005 Sunday April 24
# 2006 Thursday April 13
# 2007 Tuesday April 3
# 2008 Sunday April 20
# 2009 Thursday April 9
#
# First Day of Rosh Hashanah
# --------------------------
# Gregorian Year Day of Week Month Day
# -------------- ----------- ----- ---
# 1989 Saturday September 30
# 1990 Thursday September 20
# 1991 Monday September 9
# 1992 Monday September 28
# 1993 Thursday September 16
# 1994 Tuesday September 6
# 1995 Monday September 25
# 1996 Saturday September 14
# 1997 Thursday October 2
# 1998 Monday September 21
# 1999 Saturday September 11
# 2000 Saturday September 30
# 2001 Tuesday September 18
# 2002 Saturday September 7
# 2003 Saturday September 27
# 2004 Thursday September 16
# 2005 Tuesday October 4
# 2006 Saturday September 23
# 2007 Thursday September 13
# 2008 Tuesday September 30
# 2009 Saturday September 19
###############################################################################
# Japan
# From Guy Harris
# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
Zone Japan 9:00 - JST
###############################################################################
# Republic of Korea
# From Guy Harris:
# According to someone at the Korean Times in San Francisco,
# Daylight Savings Time was not observed until 1987. He did not know
# at what time of day DST starts or ends.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule ROK 1987 max - May Sun<=14 2:00 1:00 D
Rule ROK 1987 max - Oct Sun<=14 3:00 0 S
# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
Zone ROK 9:00 ROK K%sT
###############################################################################
# Lebanon
# From Bob Devine (January 28, 1988):
# Lebanon: They do have DST but I don't know the dates.
###############################################################################
# Singapore
# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
Zone Singapore 8:00 - SST
# @(#)europe 4.10
# International country codes are used to identify countries' rules and
# zones
#
# This data is by no means authoritative; if you think you know better, go
# ahead and edit the file (and please send any changes to
# ado@ncifcrf.gov for general use in the future).
###############################################################################
# United Kingdom
# From Arthur David Olson (January 19, 1989):
#
# The starting and ending dates below (from which the rules are derived)
# are from Whitaker's Almanack for 1987, page 146.
# 1960 is the earliest year for which dates are given;
# Whitaker's notes that British Summer Time (and, in some years, Double Summer
# Time) was observed in earlier years but does not give start and end dates.
#
# A source at the British Information Office in New York avers that it's
# known as "British" Summer Time in all parts of the United Kingdom.
# 1960 April 10 October 2 (yes, 2, according to the almanac)
# 1961 March 26 October 29
# 1962 March 25 October 28
# 1963 March 31 October 27
# 1964 March 22 October 25
# 1965 March 21 October 24
# 1966 March 20 October 23
# 1967 March 19 October 29
# 1968 February 18 October 27
# "British Standard Time, also one hour ahead of G. M. T., was kept between
# 1968 Oct. 27-1971 Oct. 31."
# 1972 March 19 October 29
# 1973 March 18 October 28
# 1974 March 17 October 27
# 1975 March 16 October 26
# 1976 March 21 October 24
# 1977 March 20 October 23
# 1978 March 19 October 29
# 1979 March 18 October 28
# 1980 March 16 October 26
# 1981 March 29 October 25
# 1982 March 28 October 24
# 1983 March 27 October 23
# 1984 March 25 October 28
# 1985 March 31 October 27
# 1986 March 30 October 26
# 1987 March 29 October 25
# From an Anonymous U. K. Donor (January 4, 1989):
#
# It is NOT possible to predict when [British Summer Time] will change
# in a future year.
#
# (The admiralty calculate when they think it should be (no more that a couple
# of years in advance) and advise the government who then decide whether or
# not they will take the admiralty's advice)
#
# ...the Gre[e]nwich...observatory...[was] very helpful.
#
# I was not able to track down the Admiralty formula (I tried hard but failed)
# ...
# Date: 4 Jan 89 08:57:25 GMT (Wed)
# From: Jonathan Leffler <nih-csl!uunet!mcvax!sphinx.co.uk!john>
# ...
# [British Summer Time] is fixed annually by Act of Parliament.
# If you can predict what Parliament will do, you should be in
# politics making a fortune, not computing.
#
# Summer time ends on Sunday 29 October 1989.
# ...
# Date: 5 Jan 89 09:50:38 GMT (Thu)
# From: Peter Kendell <nih-csl!uunet!mcvax!tcom.stc.co.uk!pete>
# ...
#
# From my Collins Diary for 1989 -
#
# "At the time of going to press the Home Office was unable to confirm
# the 1989 starting and finishing dates for BST*, but expressed the
# view that 26 March and 29 October were the likeliest dates to be
# adopted"
#
# *British Summer Time.
# From an Anonymous U. K. Donor (January 5, 1989):
#
# . . .our government is seriously considering applying Double Summer Time -
# putting the clocks forwards and back TWO hours for daylight saving time.
# This is advocated to standardise time in the EEC - we're all supposed to
# keep the same time and to change the clocks on the same dates in the future.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
# Historic starting rules
Rule GB-Eire 1960 only - Apr 10 1:00s 1:00 BST
Rule GB-Eire 1961 1963 - Mar lastSun 1:00s 1:00 BST
Rule GB-Eire 1964 1967 - Mar Sun>=19 1:00s 1:00 BST
Rule GB-Eire 1968 only - Feb 18 1:00s 1:00 BST
Rule GB-Eire 1972 1980 - Mar Sun>=16 1:00s 1:00 BST
# Historic ending rules
Rule GB-Eire 1960 only - Oct 2 1:00s 0 GMT
Rule GB-Eire 1961 1967 - Oct Sun>=23 1:00s 0 GMT
Rule GB-Eire 1971 only - Oct 31 1:00s 0 GMT
# Current rules
Rule GB-Eire 1981 max - Mar lastSun 1:00s 1:00 BST
Rule GB-Eire 1972 max - Oct Sun>=23 1:00s 0 GMT
# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
Zone GB-Eire 0:00 GB-Eire %s 1968 Oct 27 1:00s
1:00 - BST 1971 Oct 31 1:00s
0:00 GB-Eire %s
###############################################################################
# Continental Europe
# The use of 1986 as starting years below is conservative.
Rule W-Eur 1986 max - Mar lastSun 1:00s 1:00 " DST"
Rule W-Eur 1986 max - Sep lastSun 1:00s 0 -
Rule M-Eur 1986 max - Mar lastSun 2:00s 1:00 " DST"
Rule M-Eur 1986 max - Sep lastSun 2:00s 0 -
Rule E-Eur 1986 max - Mar lastSun 3:00s 1:00 " DST"
Rule E-Eur 1986 max - Sep lastSun 3:00s 0 -
Rule Turkey 1986 max - Mar lastSun 1:00 1:00 " DST"
Rule Turkey 1986 max - Sep lastSun 1:00 0 -
Rule W-SU 1986 max - Mar lastSun 2:00s 1:00 " DST"
Rule W-SU 1986 max - Sep lastSun 2:00s 0 -
# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
Zone WET 0:00 W-Eur WET%s
Zone Iceland 0:00 - WET
Zone MET 1:00 M-Eur MET%s
Zone Poland 1:00 W-Eur MET%s
Zone EET 2:00 E-Eur EET%s
Zone Turkey 3:00 Turkey EET%s
Zone W-SU 3:00 M-Eur ????
# Tom Hoffman says that MET is also known as Central European Time
Link MET CET
###############################################################################
# One source shows that Bulgaria, Cyprus, Finland, and Greece observe DST from
# the last Sunday in March to the last Sunday in September in 1986.
# The source shows Romania changing a day later than everybody else.
#
# According to Bernard Sieloff's source, Poland is in the MET time zone but
# uses the WE DST rules. The Western USSR uses EET+1 and ME DST rules.
# Bernard Sieloff's source claims Romania switches on the same day, but at
# 00:00 standard time (i.e., 01:00 DST). It also claims that Turkey
# switches on the same day, but switches on at 01:00 standard time
# and off at 00:00 standard time (i.e., 01:00 DST)
# ...
# Date: Wed, 28 Jan 87 16:56:27 -0100
# From: seismo!mcvax!cgcha!wtho (Tom Hofmann)
# Message-Id: <8701281556.AA22174@cgcha.uucp>
# ...
#
# ...the European time rules are...standardized since 1981, when
# most European coun[tr]ies started DST. Before that year, only
# a few countries (UK, France, Italy) had DST, each according
# to own national rules. In 1981, however, DST started on
# 'Apr firstSun', and not on 'Mar lastSun' as in the following
# years...
# But also since 1981 there are some more national exceptions
# than listed in 'europe': Switzerland, for example, joined DST
# one year later, Denmark ended DST on 'Oct 1' instead of 'Sep
# lastSun' in 1981---I don't know how they handle now.
#
# Finally, DST ist always from 'Apr 1' to 'Oct 1' in the
# Soviet Union (as far as I know).
#
# Tom Hofmann, Scientific Computer Center, CIBA-GEIGY AG,
# 4002 Basle, Switzerland
# UUCP: ...!mcvax!cernvax!cgcha!wtho
# ...
# Date: Wed, 4 Feb 87 22:35:22 +0100
# From: seismo!mcvax!cwi.nl!dik (Dik T. Winter)
# ...
#
# The information from Tom Hofmann is (as far as I know) not entirely correct.
# After a request from chongo at amdahl I tried to retrieve all information
# about DST in Europe. I was able to find all from about 1969.
#
# ...standardization on DST in Europe started in about 1977 with switches on
# first Sunday in April and last Sunday in September...
# In 1981 UK joined Europe insofar that
# the starting day for both shifted to last Sunday in March. And from 1982
# the whole of Europe used DST, with switch dates April 1 and October 1 in
# the Sov[i]et Union. In 1985 the SU reverted to standard Europe[a]n switch
# dates...
#
# It should also be remembered that time-zones are not constants; e.g.
# Portugal switched in 1976 from MET (or CET) to WET with DST...
# Note also that though there were rules for switch dates not
# all countries abided to these dates, and many individual deviations
# occurred, though not since 1982 I believe. Another note: it is always
# assumed that DST is 1 hour ahead of normal time, this need not be the
# case; at least in the Netherlands there have been times when DST was 2 hours
# in advance of normal time.
#
# ...
# dik t. winter, cwi, amsterdam, nederland
# INTERNET : dik@cwi.nl
# BITNET/EARN: dik@mcvax
# From Bob Devine (January 28, 1988):
# ...
# Greece: Last Sunday in April to last Sunday in September (iffy on dates).
# Since 1978. Change at midnight.
# ...
# Monaco: has same DST as France.
# ...