From 785410ee442f9778218ce8c2848e6baaaf279cf5 Mon Sep 17 00:00:00 2001 From: peter Date: Sat, 30 Dec 1995 19:02:48 +0000 Subject: recording cvs-1.6 file death --- share/zoneinfo/datfiles/africa | 43 - share/zoneinfo/datfiles/antarctica | 4 - share/zoneinfo/datfiles/australasia | 110 -- share/zoneinfo/datfiles/etcetera | 55 - share/zoneinfo/datfiles/factory | 8 - share/zoneinfo/datfiles/leapseconds | 31 - share/zoneinfo/datfiles/northamerica | 321 ------ share/zoneinfo/datfiles/pacificnew | 21 - share/zoneinfo/datfiles/solar87 | 386 ------- share/zoneinfo/datfiles/solar88 | 386 ------- share/zoneinfo/datfiles/solar89 | 391 ------- share/zoneinfo/datfiles/southamerica | 103 -- share/zoneinfo/datfiles/systemv | 35 - share/zoneinfo/datfiles/usno1988 | 111 -- share/zoneinfo/datfiles/usno1989 | 452 -------- share/zoneinfo/ialloc.c | 140 --- share/zoneinfo/scheck.c | 99 -- share/zoneinfo/tzfile.5 | 162 --- share/zoneinfo/zic.8 | 424 -------- share/zoneinfo/zic.c | 1892 ---------------------------------- 20 files changed, 5174 deletions(-) delete mode 100644 share/zoneinfo/datfiles/africa delete mode 100644 share/zoneinfo/datfiles/antarctica delete mode 100644 share/zoneinfo/datfiles/australasia delete mode 100644 share/zoneinfo/datfiles/etcetera delete mode 100644 share/zoneinfo/datfiles/factory delete mode 100644 share/zoneinfo/datfiles/leapseconds delete mode 100644 share/zoneinfo/datfiles/northamerica delete mode 100644 share/zoneinfo/datfiles/pacificnew delete mode 100644 share/zoneinfo/datfiles/solar87 delete mode 100644 share/zoneinfo/datfiles/solar88 delete mode 100644 share/zoneinfo/datfiles/solar89 delete mode 100644 share/zoneinfo/datfiles/southamerica delete mode 100644 share/zoneinfo/datfiles/systemv delete mode 100644 share/zoneinfo/datfiles/usno1988 delete mode 100644 share/zoneinfo/datfiles/usno1989 delete mode 100644 share/zoneinfo/ialloc.c delete mode 100644 share/zoneinfo/scheck.c delete mode 100644 share/zoneinfo/tzfile.5 delete mode 100644 share/zoneinfo/zic.8 delete mode 100644 share/zoneinfo/zic.c diff --git a/share/zoneinfo/datfiles/africa b/share/zoneinfo/datfiles/africa deleted file mode 100644 index bed0252..0000000 --- a/share/zoneinfo/datfiles/africa +++ /dev/null @@ -1,43 +0,0 @@ -# @(#)africa 4.3 - -############################################################################### - -# Egypt - -# From Bob Devine (January 28, 1988): -# Egypt: DST from first day of May to first of October (ending may -# also be on Sept 30th not 31st -- you might want to ask one of the -# soc.* groups, you might hit someone who could ask an embassy). -# DST since 1960 except for 1981-82. - -# From U. S. Naval Observatory (January 19, 1989): -# EGYPT 2 H AHEAD OF UTC -# EGYPT 3 H AHEAD OF UTC MAY 17 - SEP 30 (AFTER -# EGYPT RAMADAN) - -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule Egypt 1960 max - May 1 2:00 1:00 " DST" -Rule Egypt 1960 max - Oct 1 2:00 0 - - -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -Zone Egypt 2:00 Egypt EET%s 1981 - 2:00 - EET 1983 - 2:00 Egypt EET%s - -############################################################################### - -# Libya - -# From Bob Devine (January 28 1988): -# Libya: Since 1982 April 1st to September 30th (?) - -# From U. S. Naval Observatory (January 19, 1989): -# LIBYAN ARAB 1 H AHEAD OF UTC JAMAHIRIYA/LIBYA -# LIBYAN ARAB 2 H AHEAD OF UTC APR 1 - SEP 30 JAMAHIRIYA/LIBYA - -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule Libya 1982 max - Apr 1 2:00 1:00 " DST" -Rule Libya 1982 max - Sep 30 2:00 0 - - -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -Zone Libya 2:00 Libya EET%s diff --git a/share/zoneinfo/datfiles/antarctica b/share/zoneinfo/datfiles/antarctica deleted file mode 100644 index 276dda1..0000000 --- a/share/zoneinfo/datfiles/antarctica +++ /dev/null @@ -1,4 +0,0 @@ -# @(#)antarctica 4.1 - -# From Arthur David Olson (February 13, 1988): -# No data available. diff --git a/share/zoneinfo/datfiles/australasia b/share/zoneinfo/datfiles/australasia deleted file mode 100644 index 8aad7e0..0000000 --- a/share/zoneinfo/datfiles/australasia +++ /dev/null @@ -1,110 +0,0 @@ -# @(#)australasia 4.4 - -# Incorporates updates for Australia from Robert Elz' australia 1.1 -# and further updates from the Australian consulate. - -############################################################################### - -# Australia - -# Australian Data (for states with DST), standard rules -# Includes shift in 1987 to follow Vic/NSW rules for ending DST, -# and shift in 1986 to start DST earlier. - -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule Oz 1971 1985 - Oct lastSun 2:00 1:00 - -Rule Oz 1986 max - Oct Sun<=24 2:00 1:00 - -Rule Oz 1972 only - Feb 27 3:00 0 - -Rule Oz 1973 1986 - Mar Sun>=1 3:00 0 - -Rule Oz 1987 max - Mar Sun<=21 3:00 0 - - -# Zone NAME GMTOFF RULES FORMAT [UNTIL] -Zone Australia/Tasmania 10:00 Oz EST -Zone Australia/Queensland 10:00 - EST # No DST here -Zone Australia/North 9:30 - CST # No DST here -Zone Australia/West 8:00 - WST # No DST here -Zone Australia/South 9:30 Oz CST - -# Victoria jumped to a later ending date for DST in 1986 rather than 1987. - -Zone Australia/Victoria 10:00 Oz EST 1985 Oct lastSun 2:00 - 10:00 1:00 EST 1986 Mar Sun<=21 3:00 - 10:00 Oz EST - -# New South Wales and subjurisdictions have their own ideas of a fun time. -# Based on law library research by John Mackin (john@basser.cs.su.oz), -# who notes: -# In Australia, time is not legislated federally, but rather by the -# individual states. Thus, while such terms as ``Eastern Standard Time'' -# [I mean, of course, Australian EST, not any other kind] are in common -# use, _they have NO REAL MEANING_, as they are not defined in the -# legislation. This is very important to understand. -# I have researched New South Wales time only; . . .I hope that perhaps a -# resident of each state could be found to do it for their own state. -# (And I can guarantee that Victoria and NSW are different, so the link -# between them in the current australasia file must be broken.) - -# From Robert Elz (May 5, 1989): -# -# From next year (1990) NSW will revert to ending DST on the 1st -# Sunday in March (rather than the third, which it appears will -# continue to be what everyone else uses). - -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule NSW 1971 1985 - Oct lastSun 2:00 1:00 - -Rule NSW 1972 only - Feb lastSun 3:00 0 - -Rule NSW 1973 1981 - Mar Sun>=1 3:00 0 - -Rule NSW 1982 only - Apr 4 3:00 0 - -Rule NSW 1983 1985 - Mar Sun>=1 3:00 0 - -Rule NSW 1986 only - Mar 16 3:00 0 - -Rule NSW 1986 only - Oct 19 2:00 1:00 - -Rule NSW 1987 only - Mar 15 3:00 0 - -Rule NSW 1987 max - Oct lastSun 2:00 1:00 - -Rule NSW 1988 1989 - Mar Sun<=21 3:00 0 - -Rule NSW 1990 max - Mar Sun>=1 3:00 0 - - -# Zone NAME GMTOFF RULES FORMAT [UNTIL] -Zone Australia/NSW 10:00 NSW EST -# `Broken Hill' means the County of Yancowinna. [john@basser.cs.su.oz.au,1/4/89] -Zone Australia/Yancowinna 9:30 NSW ??? -Zone Australia/LHI 10:30 NSW ??? - -# A footnote here: -# -# . . . -# Date: Thu, j19 Feb 87 12:02:17 EST -# From: Bradley White -# . . . -# I am including a description of Australian time zones. . . -# this stuff is definitely accurate. -# . . . -# a) Australian Eastern Time: (EST = GMT+10:00, EDT = GMT+11:00) -# . . . -# Summer of 86/87 - present (current legislation): -# third Sun Oct 02:00 EST -> third [S]un Mar 02:00 EST -# -# If this turns out to be true, substitute Sun<=21 (third Sunday in October) -# for Sun<=24 (next-to-last Sunday in October) above. . .some time before -# October 1988, the first time it makes a difference. - -############################################################################### - -# New Zealand - -# New Zealand, from Elz' asia 1.1 -# Elz says "no guarantees" -# -# the 1989/90 year was a trial of an extended "daylight saving" period. -# This trial was deemed successful and the extended period adopted for -# subsequent years (with the addition of a further week at the start). -# source -- phone call to Ministry of Internal Affairs Head Office. -# Mark Davies , 3 Oct 1990. -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule NZ 1974 1988 - Oct lastSun 2:00 1:00 D -Rule NZ 1989 only - Oct 8 2:00 1:00 D -Rule NZ 1990 max - Oct Sun>=1 2:00 1:00 D -Rule NZ 1975 1989 - Mar Sun>=1 3:00 0 S -Rule NZ 1990 max - Mar Sun>=15 3:00 0 S - -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -Zone NZ 12:00 NZ NZ%sT # New Zealand diff --git a/share/zoneinfo/datfiles/etcetera b/share/zoneinfo/datfiles/etcetera deleted file mode 100644 index dbda4db..0000000 --- a/share/zoneinfo/datfiles/etcetera +++ /dev/null @@ -1,55 +0,0 @@ -# @(#)etcetera 4.4 - -# All of these are set up just so people can "zic -l" to a timezone -# that's right for their area, even if it doesn't have a name or dst rules -# (half hour zones are too much to bother with -- when someone asks!) - -Zone GMT 0 - GMT - -Zone GMT-12 -12 - GMT-1200 -Zone GMT-11 -11 - GMT-1100 -Zone GMT-10 -10 - GMT-1000 -Zone GMT-9 -9 - GMT-0900 -Zone GMT-8 -8 - GMT-0800 -Zone GMT-7 -7 - GMT-0700 -Zone GMT-6 -6 - GMT-0600 -Zone GMT-5 -5 - GMT-0500 -Zone GMT-4 -4 - GMT-0400 -Zone GMT-3 -3 - GMT-0300 -Zone GMT-2 -2 - GMT-0200 -Zone GMT-1 -1 - GMT-0100 -Zone GMT+1 1 - GMT+0100 -Zone GMT+2 2 - GMT+0200 -Zone GMT+3 3 - GMT+0300 -Zone GMT+4 4 - GMT+0400 -Zone GMT+5 5 - GMT+0500 -Zone GMT+6 6 - GMT+0600 -Zone GMT+7 7 - GMT+0700 -Zone GMT+8 8 - GMT+0800 -Zone GMT+9 9 - GMT+0900 -Zone GMT+10 10 - GMT+1000 -Zone GMT+11 11 - GMT+1100 -Zone GMT+12 12 - GMT+1200 -Zone GMT+13 13 - GMT+1300 # GMT+12 with DST - -Link GMT UTC -Link GMT UCT -Link GMT Universal -Link GMT Greenwich -Link GMT Zulu -Link GMT GMT-0 -Link GMT GMT+0 -Link GMT GMT0 -Link GMT+1 GMT1 -Link GMT+2 GMT2 -Link GMT+3 GMT3 -Link GMT+4 GMT4 -Link GMT+5 GMT5 -Link GMT+6 GMT6 -Link GMT+7 GMT7 -Link GMT+8 GMT8 -Link GMT+9 GMT9 -Link GMT+10 GMT10 -Link GMT+11 GMT11 -Link GMT+12 GMT12 -Link GMT+13 GMT13 diff --git a/share/zoneinfo/datfiles/factory b/share/zoneinfo/datfiles/factory deleted file mode 100644 index c1c38c1..0000000 --- a/share/zoneinfo/datfiles/factory +++ /dev/null @@ -1,8 +0,0 @@ -# @(#)factory 1.1 - -# For companies who don't want to put time zone specification in -# their installation procedures. When users run date, they'll get the message. -# Also useful for the "comp.sources" version. - -# Zone NAME GMTOFF RULES FORMAT -Zone Factory 0 - "Local time zone must be set--see zic manual page" diff --git a/share/zoneinfo/datfiles/leapseconds b/share/zoneinfo/datfiles/leapseconds deleted file mode 100644 index cc7c6b4..0000000 --- a/share/zoneinfo/datfiles/leapseconds +++ /dev/null @@ -1,31 +0,0 @@ -# @(#)leapseconds 8.1 (Berkeley) 6/29/93 - -# Allowance for leapseconds added to each timezone file. - -# The correction (+ or -) is made at the given time, so lines -# will typically look like: -# Leap YEAR MON DAY 23:59:60 + R/S -# or -# Leap YEAR MON DAY 23:59:59 - R/S - -# If the leapsecond is Rolling (R) the given time is local time -# If the leapsecond is Stationary (S) the given time is GMT - -# Leap YEAR MONTH DAY HH:MM:SS CORR R/S -Leap 1972 Jun 30 23:59:60 + S -Leap 1972 Dec 31 23:59:60 + S -Leap 1973 Dec 31 23:59:60 + S -Leap 1974 Dec 31 23:59:60 + S -Leap 1975 Dec 31 23:59:60 + S -Leap 1976 Dec 31 23:59:60 + S -Leap 1977 Dec 31 23:59:60 + S -Leap 1978 Dec 31 23:59:60 + S -Leap 1979 Dec 31 23:59:60 + S -Leap 1981 Jun 30 23:59:60 + S -Leap 1982 Jun 30 23:59:60 + S -Leap 1983 Jun 30 23:59:60 + S -Leap 1985 Jun 30 23:59:60 + S -Leap 1987 Dec 31 23:59:60 + S -Leap 1989 Dec 31 23:59:60 + S -Leap 1990 Dec 31 23:59:60 + S -Leap 1993 Jun 30 23:59:60 + S diff --git a/share/zoneinfo/datfiles/northamerica b/share/zoneinfo/datfiles/northamerica deleted file mode 100644 index 53a1df1..0000000 --- a/share/zoneinfo/datfiles/northamerica +++ /dev/null @@ -1,321 +0,0 @@ -# @(#)northamerica 4.8 - -############################################################################### - -# United States - -# From Arthur David Olson: -# US Daylight Saving Time ended on the last Sunday of *October* in 1974. -# See, for example, the front page of the Saturday, October 26, 1974 -# and Sunday, October 27, 1974 editions of the Washington Post. - -# From seismo!munnari!kre: -# I recall also being told by someone once that Canada didn't have -# the DST variations in 74/75 that the US did, but I am not nearly -# sure enough of this to add anything. - -# From Arthur David Olson: -# The above has been confirmed by Bob Devine; we'll go with it here. - -# From Arthur David Olson: -# Before the Uniform Time Act of 1966 took effect in 1967, observance of -# Daylight Saving Time in the US was by local option, except during wartime. - -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule US 1918 1919 - Mar lastSun 2:00 1:00 D -Rule US 1918 1919 - Oct lastSun 2:00 0 S -Rule US 1942 only - Feb 9 2:00 1:00 W # War -Rule US 1945 only - Sep 30 2:00 0 S -Rule US 1967 max - Oct lastSun 2:00 0 S -Rule US 1967 1973 - Apr lastSun 2:00 1:00 D -Rule US 1974 only - Jan 6 2:00 1:00 D -Rule US 1975 only - Feb 23 2:00 1:00 D -Rule US 1976 1986 - Apr lastSun 2:00 1:00 D -Rule US 1987 max - Apr Sun>=1 2:00 1:00 D - -# From Bob Devine (January 28, 1988): -# ...Alaska (and Hawaii) had the timezone names changed in 1967. -# old new -# Pacific Standard Time(PST) -same- -# Yukon Standard Time(YST) -same- -# Central Alaska S.T. (CAT) Alaska-Hawaii St[an]dard Time (AHST) -# Nome Standard Time (NT) Bering Standard Time (BST) -# -# ...Alaska's timezone lines were redrawn in 1983 to give only 2 tz. -# The YST zone now covers nearly all of the state, AHST just part -# of the Aleutian islands. No DST. - -# From U. S. Naval Observatory (January 19, 1989): -# USA EASTERN 5 H BEHIND UTC NEW YORK, WASHINGTON -# USA EASTERN 4 H BEHIND UTC APR 3 - OCT 30 -# USA CENTRAL 6 H BEHIND UTC CHICAGO, HOUSTON -# USA CENTRAL 5 H BEHIND UTC APR 3 - OCT 30 -# USA MOUNTAIN 7 H BEHIND UTC DENVER -# USA MOUNTAIN 6 H BEHIND UTC APR 3 - OCT 30 -# USA PACIFIC 8 H BEHIND UTC L.A., SAN FRANCISCO -# USA PACIFIC 7 H BEHIND UTC APR 3 - OCT 30 -# USA ALASKA STD 9 H BEHIND UTC MOST OF ALASKA (AKST) -# USA ALASKA STD 8 H BEHIND UTC APR 3 - OCT 30 (AKDT) -# USA ALEUTIAN 10 H BEHIND UTC ISLANDS WEST OF 170W -# USA - " - 9 H BEHIND UTC APR 3 - OCT 30 -# USA HAWAII 10 H BEHIND UTC -# USA BERING 11 H BEHIND UTC SAMOA, MIDWAY - -# From Arthur David Olson (January 21, 1989): -# The above dates are for 1988. -# Note the "AKST" and "AKDT" abbreviations, the claim that there's -# no DST in Samoa, and the claim that there is DST in Alaska and the -# Aleutians. - -# From Arthur David Olson (February 13, 1988): -# Legal standard time zone names, from United States Code (1982 Edition and -# Supplement III), Title 15, Chapter 6, Section 260 and forward. First, names -# up to April 1, 1967 (when most provisions of the Uniform Time Act of 1966 -# took effect), as explained in sections 263 and 261: -# (none) -# United States standard eastern time -# United States standard mountain time -# United States standard central time -# United States standard Pacific time -# (none) -# United States standard Alaska time -# (none) -# Next, names from April 1, 1967 until November 30, 1983 (the date for -# public law 98-181): -# Atlantic standard time -# eastern standard time -# central standard time -# mountain standard time -# Pacific standard time -# Yukon standard time -# Alaska-Hawaii standard time -# Bering standard time -# And after November 30, 1983: -# Atlantic standard time -# eastern standard time -# central standard time -# mountain standard time -# Pacific standard time -# Alaska standard time -# Hawaii-Aleutian standard time -# Samoa standard time -# The law doesn't give abbreviations. - -# Easy stuff first--including Alaska, where we ignore history (since we -# can't tell if we should give Yukon time or Alaska-Hawaii time for "old" -# times). - -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -Zone US/Eastern -5:00 US E%sT -Zone US/Central -6:00 US C%sT -Zone US/Mountain -7:00 US M%sT -Zone US/Pacific -8:00 US P%sT -Zone US/Alaska -9:00 US AK%sT # Abbreviation per USNO - -# Mainland US areas that are always Standard as of 1986. - -Zone US/East-Indiana -5:00 US E%sT 1946 - -5:00 - EST # Always EST as of 1986 -Zone US/Arizona -7:00 US M%sT 1946 - -7:00 - MST # Always MST as of 1986 - -# From Arthur David Olson (February 13, 1988): -# However. . .a writer from the Inter Tribal Council of Arizona, Inc., -# notes in private correspondence dated 12/28/87 that "Presently, only the -# Navajo Nation participates in the Daylight Saving Time policy, due to its -# large size and location in three states." (The "only" means that other -# tribal nations don't use DST.) - -Link US/Mountain Navajo - -# From Bob Devine (January 28, 1988): -# Michigan didn't observe DST from 1968 to 1973. - -Zone US/Michigan -5:00 US E%sT 1968 - -5:00 - EST 1973 - -5:00 US E%sT - -# Samoa just changes names. No DST, per Naval Observatory. - -Zone US/Samoa -11:00 - NST 1967 Apr 1 # N=Nome - -11:00 - BST 1983 Nov 30 # B=Bering - -11:00 - SST # S=Samoa - -# Aleutian has a name change. DST, per Naval Observatory. - -Zone US/Aleutian -10:00 US AH%sT 1983 Nov 30 - -10:00 US HA%sT - -# From Arthur David Olson: -# And then there's Hawaii. -# DST was observed for one day in 1933; -# Standard time was change by half an hour in 1947; -# it's always standard as of 1986. - -Zone US/Hawaii -10:30 US H%sT 1933 Apr 30 2:00 - -10:30 1:00 HDT 1933 May 1 2:00 - -10:30 US H%sT 1947 Jun 8 2:00 - -10:00 - HST - -# Old names, for S5 users - -# Link LINK-FROM LINK-TO -# Link US/Eastern EST5EDT -# Link US/Central CST6CDT -# Link US/Mountain MST7MDT -# Link US/Pacific PST8PDT -# Link US/East-Indiana EST -# Link US/Arizona MST -# Link US/Hawaii HST - -################################################################################ - -# Canada - -# Canada is reportedly lots easier than the US--leastways since 1951. -# I don't know what they did before then. -# 4.3BSD claims that it's perfectly regular. -# According to a posting in "comp.bugs.misc", "comp.unix.wizards", etc. -# on February 8, 1987, by Dave Sherman of the Law Society of Upper Canada, -# "...Canada (well, Ontario and at least some of the other provinces) are -# adopting the new daylight savings time rules...". We assume all of -# Canada is doing so. - -# From Bob Devine (January 28, 1988): -# All of Canada did have DST from your first rule except Saskatchewan. -# Which parts did not observe DST is hard to pinpoint but most of the -# province follows the rules. -# NOTE: those that didn't have DST for that rule, also -# probably did not have it for several years previous. - -# From U. S. Naval Observatory (January 19, 1989): -# CANADA NEW FDL 3.5H BEHIND UTC ST.JOHN'S -# CANADA NEW FDL 1.5H BEHIND UTC APR 3 - OCT 29 -# CANADA ATLANTIC 4 H BEHIND UTC HALIFAX -# CANADA ATLANTIC 3 H BEHIND UTC APR 3 - OCT 29 -# CANADA EASTERN 5 H BEHIND UTC TORONTO, MONTREAL, OTTAWA -# CANADA EASTERN 4 H BEHIND UTC APR 3 - OCT 29 -# CANADA CENTRAL 6 H BEHIND UTC REGINA, WINNIPEG -# CANADA CENTRAL 5 H BEHIND UTC APR 3 - OCT 29 -# CANADA MOUNTAIN 7 H BEHIND UTC CALGARY, EDMONTON -# CANADA MOUNTAIN 6 H BEHIND UTC APR 3 - OCT 29 -# CANADA PACIFIC 8 H BEHIND UTC VANCOUVER -# CANADA PACIFIC 7 H BEHIND UTC APR 3 - OCT 29 -# CANADA YUKON SAME AS PACIFIC DAWSON - -# From Arthur David Olson (January 21, 1989): -# April 3 fell on a Sunday in 1988; October 29 fell on a Sunday in 1989. Ahem. -# Note claim that there's double DST in Newfoundland and that Yukon should -# be same as Pacific. Stick with rules posted in 1988 until more authoritative -# information is available. - -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule Canada 1969 max - Oct lastSun 2:00 0 S -Rule Canada 1969 1986 - Apr lastSun 2:00 1:00 D -Rule Canada 1987 max - Apr Sun>=1 2:00 1:00 D - -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -# Bob Devine says that DST *is* observed in Newfoundland -Zone Canada/Newfoundland -3:30 Canada N%sT -Zone Canada/Atlantic -4:00 Canada A%sT -Zone Canada/Eastern -5:00 Canada E%sT -Zone Canada/Central -6:00 Canada C%sT -Zone Canada/East-Saskatchewan -6:00 - CST # No DST as of 1987 -Zone Canada/Mountain -7:00 Canada M%sT -Zone Canada/Pacific -8:00 Canada P%sT -Zone Canada/Yukon -9:00 Canada Y%sT - -############################################################################### - -# Mexico - -# From Guy Harris: -# Rules are from the Official Airline Guide, Worldwide Edition, for 1987. -# Rules prior to 1987 are unknown. -# The comments in the OAG say "Only Ensenada, Mexicale, San Felipe and Tijuana -# observe DST." This is presumably Baja California Norte, above 28th parallel, -# as listed there; Mexico/BajaSur is for "Baja California Sur and N. Pacific -# Coast (States of Sinaloa and Sonora)." - -# From Bob Devine (January 28, 1988): -# The Federal District (where Mexico City is) has observed [DST] several -# times but not recently. -# -# I don't where to drawn the line in the North Baja area. 28th latitude -# sounds good -- but it may be higher (how far [d]o radio stations from -# San Diego affect culture?). -# -# The dates of DST probably go back to 1981. The rules are the same as -# US's. This is going to be a headache for US presidential electi[o]n years! - -# From Arthur David Olson (February 13, 1988) -# Since the 1981 starting date is only "probable," we'll keep the 1987 -# starting date below. - -# From U. S. Naval Observatory (January 19, 1989): -# MEXICO BAJA CAL N 7 H BEHIND UTC BAJA CALIFORNIA SUR AND -# MEXICO BAJA CAL N N. PACIFIC COAST (STATES -# MEXICO BAJA CAL N OF SINALOA AND SONORA) -# MEXICO BAJA CAL N 8 H BEHIND UTC ABOVE 28TH PARALLAL APR 3 -# MEXICO BAJA CAL N - OCT 29 -# MEXICO BAJA CAL N 7 H BEHIND UTC ABOVE 28TH PARALLAL APR 3 -# MEXICO BAJA CAL N - 0CT 29 -# MEXICO 6 H BEHIND UTC STATES OF DURANGO, -# MEXICO COAHUILA, NUEVO LEON, -# MEXICO TAMAULIPAS -# MEXICO 5 H BEHIND UTC STATES OF DURANGO, -# MEXICO COAHUILA, NUEVO LEON, -# MEXICO TAMAULIPAS APR 3 - OCT 29 -# MEXICO 6 H BEHIND UTC GENERAL MEXICO, STATES OF -# MEXICO CAMPECHE, QUINTANA ROO AND -# MEXICO YUCATAN - -# From Arthur David Olson (January 21, 1989): -# April 3 fell on a Sunday in 1988; October 29 fell on a Sunday in 1989. Ahem. -# USNO claims there should be four Mexican zones rather than three: -# a zone that's GMT-8 with DST; a zone that's always GMT-7; -# a zone that's GMT-6 with DST; and a zone that's always GMT-6. -# Wait for more authoritative information before changing. - -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule Mexico 1987 max - Oct lastSun 2:00 0 S -Rule Mexico 1987 max - Apr Sun>=1 2:00 1:00 D - -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -Zone Mexico/BajaNorte -8:00 Mexico P%sT -Zone Mexico/BajaSur -7:00 - MST -Zone Mexico/General -6:00 - CST - -############################################################################### - -# Jamaica - -# From Bob Devine (January 28, 1988): -# Follows US rules. - -# From U. S. Naval Observatory (January 19, 1989): -# JAMAICA 5 H BEHIND UTC - -Link US/Eastern Jamaica - -############################################################################### - -# Cuba - -# From Bob Devine (January 28, 1988): -# . . .DST is from 2nd Sunday in May to 2nd Sunday in October since 1981. -# Change at midnight. In 1979 & 1980, started at 3rd Sunday in March -# (I think). - -# From U. S. Naval Observatory (January 19, 1989): -# CUBA 5 H BEHIND UTC -# CUBA 4 H BEHIND UTC MAR 20 - OCT 8 - -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule Cuba 1979 1980 - Mar Sun>=15 0:00 1:00 D -Rule Cuba 1979 1980 - Oct Sun>=8 0:00 0 S -Rule Cuba 1981 max - May Sun>=8 0:00 1:00 D -Rule Cuba 1981 max - Oct Sun>=8 0:00 0 S - -# Zone NAME GMTOFF RULES/SAVE FORMAT -Zone Cuba -5:00 Cuba C%sT diff --git a/share/zoneinfo/datfiles/pacificnew b/share/zoneinfo/datfiles/pacificnew deleted file mode 100644 index 8e6850c..0000000 --- a/share/zoneinfo/datfiles/pacificnew +++ /dev/null @@ -1,21 +0,0 @@ -# @(#)pacificnew 4.4 - -# From Arthur David Olson (January 18, 1989): -# On November 10, 1987, the U. S. House of Representatives passed a bill -# (H.R. 435), the "Uniform Poll Closing Time Act", establishing -# "Pacific Presidential Election Time"; it was not acted on by the Senate -# before the end of the 100th Congress and so died. -# The bill has been reintroduced in the 101st Congress as H. R. 18; -# H. R. 96 also deals with poll closing time. Either bill would have to be -# passed by both the House and Senate and signed by the President (or have -# the President's veto overridden by the House and Senate) before becoming law. - -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule Twilite 1989 max - Apr Sun>=1 2:00 1:00 D -Rule Twilite 1989 max uspres Oct lastSun 2:00 1:00 PE -Rule Twilite 1989 max uspres Nov Sun>=7 2:00 0 S -Rule Twilite 1989 max nonpres Oct lastSun 2:00 0 S - -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -Zone US/Pacific-New -8:00 US P%sT 1989 - -8:00 Twilite P%sT diff --git a/share/zoneinfo/datfiles/solar87 b/share/zoneinfo/datfiles/solar87 deleted file mode 100644 index 5067457..0000000 --- a/share/zoneinfo/datfiles/solar87 +++ /dev/null @@ -1,386 +0,0 @@ -# @(#)solar87 4.1 - -# So much for footnotes about Saudi Arabia. -# Apparent noon times below are for Riyadh; your mileage will vary. -# Times were computed using formulas in the U.S. Naval Observatory's -# Almanac for Computers 1987; the formulas "will give EqT to an accuracy of -# [plus or minus two] seconds during the current year." -# -# Rounding to the nearest five seconds results in fewer than -# 256 different "time types"--a limit that's faced because time types are -# stored on disk as unsigned chars. - -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule sol87 1987 only - Jan 1 12:03:20s -0:03:20 - -Rule sol87 1987 only - Jan 2 12:03:50s -0:03:50 - -Rule sol87 1987 only - Jan 3 12:04:15s -0:04:15 - -Rule sol87 1987 only - Jan 4 12:04:45s -0:04:45 - -Rule sol87 1987 only - Jan 5 12:05:10s -0:05:10 - -Rule sol87 1987 only - Jan 6 12:05:40s -0:05:40 - -Rule sol87 1987 only - Jan 7 12:06:05s -0:06:05 - -Rule sol87 1987 only - Jan 8 12:06:30s -0:06:30 - -Rule sol87 1987 only - Jan 9 12:06:55s -0:06:55 - -Rule sol87 1987 only - Jan 10 12:07:20s -0:07:20 - -Rule sol87 1987 only - Jan 11 12:07:45s -0:07:45 - -Rule sol87 1987 only - Jan 12 12:08:10s -0:08:10 - -Rule sol87 1987 only - Jan 13 12:08:30s -0:08:30 - -Rule sol87 1987 only - Jan 14 12:08:55s -0:08:55 - -Rule sol87 1987 only - Jan 15 12:09:15s -0:09:15 - -Rule sol87 1987 only - Jan 16 12:09:35s -0:09:35 - -Rule sol87 1987 only - Jan 17 12:09:55s -0:09:55 - -Rule sol87 1987 only - Jan 18 12:10:15s -0:10:15 - -Rule sol87 1987 only - Jan 19 12:10:35s -0:10:35 - -Rule sol87 1987 only - Jan 20 12:10:55s -0:10:55 - -Rule sol87 1987 only - Jan 21 12:11:10s -0:11:10 - -Rule sol87 1987 only - Jan 22 12:11:30s -0:11:30 - -Rule sol87 1987 only - Jan 23 12:11:45s -0:11:45 - -Rule sol87 1987 only - Jan 24 12:12:00s -0:12:00 - -Rule sol87 1987 only - Jan 25 12:12:15s -0:12:15 - -Rule sol87 1987 only - Jan 26 12:12:30s -0:12:30 - -Rule sol87 1987 only - Jan 27 12:12:40s -0:12:40 - -Rule sol87 1987 only - Jan 28 12:12:55s -0:12:55 - -Rule sol87 1987 only - Jan 29 12:13:05s -0:13:05 - -Rule sol87 1987 only - Jan 30 12:13:15s -0:13:15 - -Rule sol87 1987 only - Jan 31 12:13:25s -0:13:25 - -Rule sol87 1987 only - Feb 1 12:13:35s -0:13:35 - -Rule sol87 1987 only - Feb 2 12:13:40s -0:13:40 - -Rule sol87 1987 only - Feb 3 12:13:50s -0:13:50 - -Rule sol87 1987 only - Feb 4 12:13:55s -0:13:55 - -Rule sol87 1987 only - Feb 5 12:14:00s -0:14:00 - -Rule sol87 1987 only - Feb 6 12:14:05s -0:14:05 - -Rule sol87 1987 only - Feb 7 12:14:10s -0:14:10 - -Rule sol87 1987 only - Feb 8 12:14:10s -0:14:10 - -Rule sol87 1987 only - Feb 9 12:14:15s -0:14:15 - -Rule sol87 1987 only - Feb 10 12:14:15s -0:14:15 - -Rule sol87 1987 only - Feb 11 12:14:15s -0:14:15 - -Rule sol87 1987 only - Feb 12 12:14:15s -0:14:15 - -Rule sol87 1987 only - Feb 13 12:14:15s -0:14:15 - -Rule sol87 1987 only - Feb 14 12:14:15s -0:14:15 - -Rule sol87 1987 only - Feb 15 12:14:10s -0:14:10 - -Rule sol87 1987 only - Feb 16 12:14:10s -0:14:10 - -Rule sol87 1987 only - Feb 17 12:14:05s -0:14:05 - -Rule sol87 1987 only - Feb 18 12:14:00s -0:14:00 - -Rule sol87 1987 only - Feb 19 12:13:55s -0:13:55 - -Rule sol87 1987 only - Feb 20 12:13:50s -0:13:50 - -Rule sol87 1987 only - Feb 21 12:13:45s -0:13:45 - -Rule sol87 1987 only - Feb 22 12:13:35s -0:13:35 - -Rule sol87 1987 only - Feb 23 12:13:30s -0:13:30 - -Rule sol87 1987 only - Feb 24 12:13:20s -0:13:20 - -Rule sol87 1987 only - Feb 25 12:13:10s -0:13:10 - -Rule sol87 1987 only - Feb 26 12:13:00s -0:13:00 - -Rule sol87 1987 only - Feb 27 12:12:50s -0:12:50 - -Rule sol87 1987 only - Feb 28 12:12:40s -0:12:40 - -Rule sol87 1987 only - Mar 1 12:12:30s -0:12:30 - -Rule sol87 1987 only - Mar 2 12:12:20s -0:12:20 - -Rule sol87 1987 only - Mar 3 12:12:05s -0:12:05 - -Rule sol87 1987 only - Mar 4 12:11:55s -0:11:55 - -Rule sol87 1987 only - Mar 5 12:11:40s -0:11:40 - -Rule sol87 1987 only - Mar 6 12:11:25s -0:11:25 - -Rule sol87 1987 only - Mar 7 12:11:15s -0:11:15 - -Rule sol87 1987 only - Mar 8 12:11:00s -0:11:00 - -Rule sol87 1987 only - Mar 9 12:10:45s -0:10:45 - -Rule sol87 1987 only - Mar 10 12:10:30s -0:10:30 - -Rule sol87 1987 only - Mar 11 12:10:15s -0:10:15 - -Rule sol87 1987 only - Mar 12 12:09:55s -0:09:55 - -Rule sol87 1987 only - Mar 13 12:09:40s -0:09:40 - -Rule sol87 1987 only - Mar 14 12:09:25s -0:09:25 - -Rule sol87 1987 only - Mar 15 12:09:10s -0:09:10 - -Rule sol87 1987 only - Mar 16 12:08:50s -0:08:50 - -Rule sol87 1987 only - Mar 17 12:08:35s -0:08:35 - -Rule sol87 1987 only - Mar 18 12:08:15s -0:08:15 - -Rule sol87 1987 only - Mar 19 12:08:00s -0:08:00 - -Rule sol87 1987 only - Mar 20 12:07:40s -0:07:40 - -Rule sol87 1987 only - Mar 21 12:07:25s -0:07:25 - -Rule sol87 1987 only - Mar 22 12:07:05s -0:07:05 - -Rule sol87 1987 only - Mar 23 12:06:50s -0:06:50 - -Rule sol87 1987 only - Mar 24 12:06:30s -0:06:30 - -Rule sol87 1987 only - Mar 25 12:06:10s -0:06:10 - -Rule sol87 1987 only - Mar 26 12:05:55s -0:05:55 - -Rule sol87 1987 only - Mar 27 12:05:35s -0:05:35 - -Rule sol87 1987 only - Mar 28 12:05:15s -0:05:15 - -Rule sol87 1987 only - Mar 29 12:05:00s -0:05:00 - -Rule sol87 1987 only - Mar 30 12:04:40s -0:04:40 - -Rule sol87 1987 only - Mar 31 12:04:25s -0:04:25 - -Rule sol87 1987 only - Apr 1 12:04:05s -0:04:05 - -Rule sol87 1987 only - Apr 2 12:03:45s -0:03:45 - -Rule sol87 1987 only - Apr 3 12:03:30s -0:03:30 - -Rule sol87 1987 only - Apr 4 12:03:10s -0:03:10 - -Rule sol87 1987 only - Apr 5 12:02:55s -0:02:55 - -Rule sol87 1987 only - Apr 6 12:02:35s -0:02:35 - -Rule sol87 1987 only - Apr 7 12:02:20s -0:02:20 - -Rule sol87 1987 only - Apr 8 12:02:05s -0:02:05 - -Rule sol87 1987 only - Apr 9 12:01:45s -0:01:45 - -Rule sol87 1987 only - Apr 10 12:01:30s -0:01:30 - -Rule sol87 1987 only - Apr 11 12:01:15s -0:01:15 - -Rule sol87 1987 only - Apr 12 12:00:55s -0:00:55 - -Rule sol87 1987 only - Apr 13 12:00:40s -0:00:40 - -Rule sol87 1987 only - Apr 14 12:00:25s -0:00:25 - -Rule sol87 1987 only - Apr 15 12:00:10s -0:00:10 - -Rule sol87 1987 only - Apr 16 11:59:55s 0:00:05 - -Rule sol87 1987 only - Apr 17 11:59:45s 0:00:15 - -Rule sol87 1987 only - Apr 18 11:59:30s 0:00:30 - -Rule sol87 1987 only - Apr 19 11:59:15s 0:00:45 - -Rule sol87 1987 only - Apr 20 11:59:05s 0:00:55 - -Rule sol87 1987 only - Apr 21 11:58:50s 0:01:10 - -Rule sol87 1987 only - Apr 22 11:58:40s 0:01:20 - -Rule sol87 1987 only - Apr 23 11:58:25s 0:01:35 - -Rule sol87 1987 only - Apr 24 11:58:15s 0:01:45 - -Rule sol87 1987 only - Apr 25 11:58:05s 0:01:55 - -Rule sol87 1987 only - Apr 26 11:57:55s 0:02:05 - -Rule sol87 1987 only - Apr 27 11:57:45s 0:02:15 - -Rule sol87 1987 only - Apr 28 11:57:35s 0:02:25 - -Rule sol87 1987 only - Apr 29 11:57:25s 0:02:35 - -Rule sol87 1987 only - Apr 30 11:57:15s 0:02:45 - -Rule sol87 1987 only - May 1 11:57:10s 0:02:50 - -Rule sol87 1987 only - May 2 11:57:00s 0:03:00 - -Rule sol87 1987 only - May 3 11:56:55s 0:03:05 - -Rule sol87 1987 only - May 4 11:56:50s 0:03:10 - -Rule sol87 1987 only - May 5 11:56:45s 0:03:15 - -Rule sol87 1987 only - May 6 11:56:40s 0:03:20 - -Rule sol87 1987 only - May 7 11:56:35s 0:03:25 - -Rule sol87 1987 only - May 8 11:56:30s 0:03:30 - -Rule sol87 1987 only - May 9 11:56:25s 0:03:35 - -Rule sol87 1987 only - May 10 11:56:25s 0:03:35 - -Rule sol87 1987 only - May 11 11:56:20s 0:03:40 - -Rule sol87 1987 only - May 12 11:56:20s 0:03:40 - -Rule sol87 1987 only - May 13 11:56:20s 0:03:40 - -Rule sol87 1987 only - May 14 11:56:20s 0:03:40 - -Rule sol87 1987 only - May 15 11:56:20s 0:03:40 - -Rule sol87 1987 only - May 16 11:56:20s 0:03:40 - -Rule sol87 1987 only - May 17 11:56:20s 0:03:40 - -Rule sol87 1987 only - May 18 11:56:20s 0:03:40 - -Rule sol87 1987 only - May 19 11:56:25s 0:03:35 - -Rule sol87 1987 only - May 20 11:56:25s 0:03:35 - -Rule sol87 1987 only - May 21 11:56:30s 0:03:30 - -Rule sol87 1987 only - May 22 11:56:35s 0:03:25 - -Rule sol87 1987 only - May 23 11:56:40s 0:03:20 - -Rule sol87 1987 only - May 24 11:56:45s 0:03:15 - -Rule sol87 1987 only - May 25 11:56:50s 0:03:10 - -Rule sol87 1987 only - May 26 11:56:55s 0:03:05 - -Rule sol87 1987 only - May 27 11:57:00s 0:03:00 - -Rule sol87 1987 only - May 28 11:57:10s 0:02:50 - -Rule sol87 1987 only - May 29 11:57:15s 0:02:45 - -Rule sol87 1987 only - May 30 11:57:25s 0:02:35 - -Rule sol87 1987 only - May 31 11:57:30s 0:02:30 - -Rule sol87 1987 only - Jun 1 11:57:40s 0:02:20 - -Rule sol87 1987 only - Jun 2 11:57:50s 0:02:10 - -Rule sol87 1987 only - Jun 3 11:58:00s 0:02:00 - -Rule sol87 1987 only - Jun 4 11:58:10s 0:01:50 - -Rule sol87 1987 only - Jun 5 11:58:20s 0:01:40 - -Rule sol87 1987 only - Jun 6 11:58:30s 0:01:30 - -Rule sol87 1987 only - Jun 7 11:58:40s 0:01:20 - -Rule sol87 1987 only - Jun 8 11:58:50s 0:01:10 - -Rule sol87 1987 only - Jun 9 11:59:05s 0:00:55 - -Rule sol87 1987 only - Jun 10 11:59:15s 0:00:45 - -Rule sol87 1987 only - Jun 11 11:59:30s 0:00:30 - -Rule sol87 1987 only - Jun 12 11:59:40s 0:00:20 - -Rule sol87 1987 only - Jun 13 11:59:50s 0:00:10 - -Rule sol87 1987 only - Jun 14 12:00:05s -0:00:05 - -Rule sol87 1987 only - Jun 15 12:00:15s -0:00:15 - -Rule sol87 1987 only - Jun 16 12:00:30s -0:00:30 - -Rule sol87 1987 only - Jun 17 12:00:45s -0:00:45 - -Rule sol87 1987 only - Jun 18 12:00:55s -0:00:55 - -Rule sol87 1987 only - Jun 19 12:01:10s -0:01:10 - -Rule sol87 1987 only - Jun 20 12:01:20s -0:01:20 - -Rule sol87 1987 only - Jun 21 12:01:35s -0:01:35 - -Rule sol87 1987 only - Jun 22 12:01:50s -0:01:50 - -Rule sol87 1987 only - Jun 23 12:02:00s -0:02:00 - -Rule sol87 1987 only - Jun 24 12:02:15s -0:02:15 - -Rule sol87 1987 only - Jun 25 12:02:25s -0:02:25 - -Rule sol87 1987 only - Jun 26 12:02:40s -0:02:40 - -Rule sol87 1987 only - Jun 27 12:02:50s -0:02:50 - -Rule sol87 1987 only - Jun 28 12:03:05s -0:03:05 - -Rule sol87 1987 only - Jun 29 12:03:15s -0:03:15 - -Rule sol87 1987 only - Jun 30 12:03:30s -0:03:30 - -Rule sol87 1987 only - Jul 1 12:03:40s -0:03:40 - -Rule sol87 1987 only - Jul 2 12:03:50s -0:03:50 - -Rule sol87 1987 only - Jul 3 12:04:05s -0:04:05 - -Rule sol87 1987 only - Jul 4 12:04:15s -0:04:15 - -Rule sol87 1987 only - Jul 5 12:04:25s -0:04:25 - -Rule sol87 1987 only - Jul 6 12:04:35s -0:04:35 - -Rule sol87 1987 only - Jul 7 12:04:45s -0:04:45 - -Rule sol87 1987 only - Jul 8 12:04:55s -0:04:55 - -Rule sol87 1987 only - Jul 9 12:05:05s -0:05:05 - -Rule sol87 1987 only - Jul 10 12:05:15s -0:05:15 - -Rule sol87 1987 only - Jul 11 12:05:20s -0:05:20 - -Rule sol87 1987 only - Jul 12 12:05:30s -0:05:30 - -Rule sol87 1987 only - Jul 13 12:05:40s -0:05:40 - -Rule sol87 1987 only - Jul 14 12:05:45s -0:05:45 - -Rule sol87 1987 only - Jul 15 12:05:50s -0:05:50 - -Rule sol87 1987 only - Jul 16 12:06:00s -0:06:00 - -Rule sol87 1987 only - Jul 17 12:06:05s -0:06:05 - -Rule sol87 1987 only - Jul 18 12:06:10s -0:06:10 - -Rule sol87 1987 only - Jul 19 12:06:15s -0:06:15 - -Rule sol87 1987 only - Jul 20 12:06:15s -0:06:15 - -Rule sol87 1987 only - Jul 21 12:06:20s -0:06:20 - -Rule sol87 1987 only - Jul 22 12:06:25s -0:06:25 - -Rule sol87 1987 only - Jul 23 12:06:25s -0:06:25 - -Rule sol87 1987 only - Jul 24 12:06:25s -0:06:25 - -Rule sol87 1987 only - Jul 25 12:06:30s -0:06:30 - -Rule sol87 1987 only - Jul 26 12:06:30s -0:06:30 - -Rule sol87 1987 only - Jul 27 12:06:30s -0:06:30 - -Rule sol87 1987 only - Jul 28 12:06:30s -0:06:30 - -Rule sol87 1987 only - Jul 29 12:06:25s -0:06:25 - -Rule sol87 1987 only - Jul 30 12:06:25s -0:06:25 - -Rule sol87 1987 only - Jul 31 12:06:25s -0:06:25 - -Rule sol87 1987 only - Aug 1 12:06:20s -0:06:20 - -Rule sol87 1987 only - Aug 2 12:06:15s -0:06:15 - -Rule sol87 1987 only - Aug 3 12:06:10s -0:06:10 - -Rule sol87 1987 only - Aug 4 12:06:05s -0:06:05 - -Rule sol87 1987 only - Aug 5 12:06:00s -0:06:00 - -Rule sol87 1987 only - Aug 6 12:05:55s -0:05:55 - -Rule sol87 1987 only - Aug 7 12:05:50s -0:05:50 - -Rule sol87 1987 only - Aug 8 12:05:40s -0:05:40 - -Rule sol87 1987 only - Aug 9 12:05:35s -0:05:35 - -Rule sol87 1987 only - Aug 10 12:05:25s -0:05:25 - -Rule sol87 1987 only - Aug 11 12:05:15s -0:05:15 - -Rule sol87 1987 only - Aug 12 12:05:05s -0:05:05 - -Rule sol87 1987 only - Aug 13 12:04:55s -0:04:55 - -Rule sol87 1987 only - Aug 14 12:04:45s -0:04:45 - -Rule sol87 1987 only - Aug 15 12:04:35s -0:04:35 - -Rule sol87 1987 only - Aug 16 12:04:25s -0:04:25 - -Rule sol87 1987 only - Aug 17 12:04:10s -0:04:10 - -Rule sol87 1987 only - Aug 18 12:04:00s -0:04:00 - -Rule sol87 1987 only - Aug 19 12:03:45s -0:03:45 - -Rule sol87 1987 only - Aug 20 12:03:30s -0:03:30 - -Rule sol87 1987 only - Aug 21 12:03:15s -0:03:15 - -Rule sol87 1987 only - Aug 22 12:03:00s -0:03:00 - -Rule sol87 1987 only - Aug 23 12:02:45s -0:02:45 - -Rule sol87 1987 only - Aug 24 12:02:30s -0:02:30 - -Rule sol87 1987 only - Aug 25 12:02:15s -0:02:15 - -Rule sol87 1987 only - Aug 26 12:02:00s -0:02:00 - -Rule sol87 1987 only - Aug 27 12:01:40s -0:01:40 - -Rule sol87 1987 only - Aug 28 12:01:25s -0:01:25 - -Rule sol87 1987 only - Aug 29 12:01:05s -0:01:05 - -Rule sol87 1987 only - Aug 30 12:00:50s -0:00:50 - -Rule sol87 1987 only - Aug 31 12:00:30s -0:00:30 - -Rule sol87 1987 only - Sep 1 12:00:10s -0:00:10 - -Rule sol87 1987 only - Sep 2 11:59:50s 0:00:10 - -Rule sol87 1987 only - Sep 3 11:59:35s 0:00:25 - -Rule sol87 1987 only - Sep 4 11:59:15s 0:00:45 - -Rule sol87 1987 only - Sep 5 11:58:55s 0:01:05 - -Rule sol87 1987 only - Sep 6 11:58:35s 0:01:25 - -Rule sol87 1987 only - Sep 7 11:58:15s 0:01:45 - -Rule sol87 1987 only - Sep 8 11:57:55s 0:02:05 - -Rule sol87 1987 only - Sep 9 11:57:30s 0:02:30 - -Rule sol87 1987 only - Sep 10 11:57:10s 0:02:50 - -Rule sol87 1987 only - Sep 11 11:56:50s 0:03:10 - -Rule sol87 1987 only - Sep 12 11:56:30s 0:03:30 - -Rule sol87 1987 only - Sep 13 11:56:10s 0:03:50 - -Rule sol87 1987 only - Sep 14 11:55:45s 0:04:15 - -Rule sol87 1987 only - Sep 15 11:55:25s 0:04:35 - -Rule sol87 1987 only - Sep 16 11:55:05s 0:04:55 - -Rule sol87 1987 only - Sep 17 11:54:45s 0:05:15 - -Rule sol87 1987 only - Sep 18 11:54:20s 0:05:40 - -Rule sol87 1987 only - Sep 19 11:54:00s 0:06:00 - -Rule sol87 1987 only - Sep 20 11:53:40s 0:06:20 - -Rule sol87 1987 only - Sep 21 11:53:15s 0:06:45 - -Rule sol87 1987 only - Sep 22 11:52:55s 0:07:05 - -Rule sol87 1987 only - Sep 23 11:52:35s 0:07:25 - -Rule sol87 1987 only - Sep 24 11:52:15s 0:07:45 - -Rule sol87 1987 only - Sep 25 11:51:55s 0:08:05 - -Rule sol87 1987 only - Sep 26 11:51:35s 0:08:25 - -Rule sol87 1987 only - Sep 27 11:51:10s 0:08:50 - -Rule sol87 1987 only - Sep 28 11:50:50s 0:09:10 - -Rule sol87 1987 only - Sep 29 11:50:30s 0:09:30 - -Rule sol87 1987 only - Sep 30 11:50:10s 0:09:50 - -Rule sol87 1987 only - Oct 1 11:49:50s 0:10:10 - -Rule sol87 1987 only - Oct 2 11:49:35s 0:10:25 - -Rule sol87 1987 only - Oct 3 11:49:15s 0:10:45 - -Rule sol87 1987 only - Oct 4 11:48:55s 0:11:05 - -Rule sol87 1987 only - Oct 5 11:48:35s 0:11:25 - -Rule sol87 1987 only - Oct 6 11:48:20s 0:11:40 - -Rule sol87 1987 only - Oct 7 11:48:00s 0:12:00 - -Rule sol87 1987 only - Oct 8 11:47:45s 0:12:15 - -Rule sol87 1987 only - Oct 9 11:47:25s 0:12:35 - -Rule sol87 1987 only - Oct 10 11:47:10s 0:12:50 - -Rule sol87 1987 only - Oct 11 11:46:55s 0:13:05 - -Rule sol87 1987 only - Oct 12 11:46:40s 0:13:20 - -Rule sol87 1987 only - Oct 13 11:46:25s 0:13:35 - -Rule sol87 1987 only - Oct 14 11:46:10s 0:13:50 - -Rule sol87 1987 only - Oct 15 11:45:55s 0:14:05 - -Rule sol87 1987 only - Oct 16 11:45:45s 0:14:15 - -Rule sol87 1987 only - Oct 17 11:45:30s 0:14:30 - -Rule sol87 1987 only - Oct 18 11:45:20s 0:14:40 - -Rule sol87 1987 only - Oct 19 11:45:05s 0:14:55 - -Rule sol87 1987 only - Oct 20 11:44:55s 0:15:05 - -Rule sol87 1987 only - Oct 21 11:44:45s 0:15:15 - -Rule sol87 1987 only - Oct 22 11:44:35s 0:15:25 - -Rule sol87 1987 only - Oct 23 11:44:25s 0:15:35 - -Rule sol87 1987 only - Oct 24 11:44:20s 0:15:40 - -Rule sol87 1987 only - Oct 25 11:44:10s 0:15:50 - -Rule sol87 1987 only - Oct 26 11:44:05s 0:15:55 - -Rule sol87 1987 only - Oct 27 11:43:55s 0:16:05 - -Rule sol87 1987 only - Oct 28 11:43:50s 0:16:10 - -Rule sol87 1987 only - Oct 29 11:43:45s 0:16:15 - -Rule sol87 1987 only - Oct 30 11:43:45s 0:16:15 - -Rule sol87 1987 only - Oct 31 11:43:40s 0:16:20 - -Rule sol87 1987 only - Nov 1 11:43:40s 0:16:20 - -Rule sol87 1987 only - Nov 2 11:43:35s 0:16:25 - -Rule sol87 1987 only - Nov 3 11:43:35s 0:16:25 - -Rule sol87 1987 only - Nov 4 11:43:35s 0:16:25 - -Rule sol87 1987 only - Nov 5 11:43:35s 0:16:25 - -Rule sol87 1987 only - Nov 6 11:43:40s 0:16:20 - -Rule sol87 1987 only - Nov 7 11:43:40s 0:16:20 - -Rule sol87 1987 only - Nov 8 11:43:45s 0:16:15 - -Rule sol87 1987 only - Nov 9 11:43:50s 0:16:10 - -Rule sol87 1987 only - Nov 10 11:43:55s 0:16:05 - -Rule sol87 1987 only - Nov 11 11:44:00s 0:16:00 - -Rule sol87 1987 only - Nov 12 11:44:05s 0:15:55 - -Rule sol87 1987 only - Nov 13 11:44:15s 0:15:45 - -Rule sol87 1987 only - Nov 14 11:44:20s 0:15:40 - -Rule sol87 1987 only - Nov 15 11:44:30s 0:15:30 - -Rule sol87 1987 only - Nov 16 11:44:40s 0:15:20 - -Rule sol87 1987 only - Nov 17 11:44:50s 0:15:10 - -Rule sol87 1987 only - Nov 18 11:45:05s 0:14:55 - -Rule sol87 1987 only - Nov 19 11:45:15s 0:14:45 - -Rule sol87 1987 only - Nov 20 11:45:30s 0:14:30 - -Rule sol87 1987 only - Nov 21 11:45:45s 0:14:15 - -Rule sol87 1987 only - Nov 22 11:46:00s 0:14:00 - -Rule sol87 1987 only - Nov 23 11:46:15s 0:13:45 - -Rule sol87 1987 only - Nov 24 11:46:30s 0:13:30 - -Rule sol87 1987 only - Nov 25 11:46:50s 0:13:10 - -Rule sol87 1987 only - Nov 26 11:47:10s 0:12:50 - -Rule sol87 1987 only - Nov 27 11:47:25s 0:12:35 - -Rule sol87 1987 only - Nov 28 11:47:45s 0:12:15 - -Rule sol87 1987 only - Nov 29 11:48:05s 0:11:55 - -Rule sol87 1987 only - Nov 30 11:48:30s 0:11:30 - -Rule sol87 1987 only - Dec 1 11:48:50s 0:11:10 - -Rule sol87 1987 only - Dec 2 11:49:10s 0:10:50 - -Rule sol87 1987 only - Dec 3 11:49:35s 0:10:25 - -Rule sol87 1987 only - Dec 4 11:50:00s 0:10:00 - -Rule sol87 1987 only - Dec 5 11:50:25s 0:09:35 - -Rule sol87 1987 only - Dec 6 11:50:50s 0:09:10 - -Rule sol87 1987 only - Dec 7 11:51:15s 0:08:45 - -Rule sol87 1987 only - Dec 8 11:51:40s 0:08:20 - -Rule sol87 1987 only - Dec 9 11:52:05s 0:07:55 - -Rule sol87 1987 only - Dec 10 11:52:30s 0:07:30 - -Rule sol87 1987 only - Dec 11 11:53:00s 0:07:00 - -Rule sol87 1987 only - Dec 12 11:53:25s 0:06:35 - -Rule sol87 1987 only - Dec 13 11:53:55s 0:06:05 - -Rule sol87 1987 only - Dec 14 11:54:25s 0:05:35 - -Rule sol87 1987 only - Dec 15 11:54:50s 0:05:10 - -Rule sol87 1987 only - Dec 16 11:55:20s 0:04:40 - -Rule sol87 1987 only - Dec 17 11:55:50s 0:04:10 - -Rule sol87 1987 only - Dec 18 11:56:20s 0:03:40 - -Rule sol87 1987 only - Dec 19 11:56:50s 0:03:10 - -Rule sol87 1987 only - Dec 20 11:57:20s 0:02:40 - -Rule sol87 1987 only - Dec 21 11:57:50s 0:02:10 - -Rule sol87 1987 only - Dec 22 11:58:20s 0:01:40 - -Rule sol87 1987 only - Dec 23 11:58:50s 0:01:10 - -Rule sol87 1987 only - Dec 24 11:59:20s 0:00:40 - -Rule sol87 1987 only - Dec 25 11:59:50s 0:00:10 - -Rule sol87 1987 only - Dec 26 12:00:20s -0:00:20 - -Rule sol87 1987 only - Dec 27 12:00:45s -0:00:45 - -Rule sol87 1987 only - Dec 28 12:01:15s -0:01:15 - -Rule sol87 1987 only - Dec 29 12:01:45s -0:01:45 - -Rule sol87 1987 only - Dec 30 12:02:15s -0:02:15 - -Rule sol87 1987 only - Dec 31 12:02:45s -0:02:45 - - -# Riyadh is at about 46 degrees 46 minutes East: 3 hrs, 7 mins, 4 secs -# Before and after 1987, we'll operate on local mean solar time. - -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -Zone Mideast/Riyadh87 3:07:04 - ?? 1987 - 3:07:04 sol87 ?? 1988 - 3:07:04 - ?? diff --git a/share/zoneinfo/datfiles/solar88 b/share/zoneinfo/datfiles/solar88 deleted file mode 100644 index e7f647e..0000000 --- a/share/zoneinfo/datfiles/solar88 +++ /dev/null @@ -1,386 +0,0 @@ -# @(#)solar88 4.2 - -# Apparent noon times below are for Riyadh; they're a bit off for other places. -# Times were computed using formulas in the U.S. Naval Observatory's -# Almanac for Computers 1988; the formulas "will give EqT to an accuracy of -# [plus or minus two] seconds during the current year." -# -# Rounding to the nearest five seconds results in fewer than -# 256 different "time types"--a limit that's faced because time types are -# stored on disk as unsigned chars. - -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule sol88 1988 only - Jan 1 12:03:15s -0:03:15 - -Rule sol88 1988 only - Jan 2 12:03:40s -0:03:40 - -Rule sol88 1988 only - Jan 3 12:04:10s -0:04:10 - -Rule sol88 1988 only - Jan 4 12:04:40s -0:04:40 - -Rule sol88 1988 only - Jan 5 12:05:05s -0:05:05 - -Rule sol88 1988 only - Jan 6 12:05:30s -0:05:30 - -Rule sol88 1988 only - Jan 7 12:06:00s -0:06:00 - -Rule sol88 1988 only - Jan 8 12:06:25s -0:06:25 - -Rule sol88 1988 only - Jan 9 12:06:50s -0:06:50 - -Rule sol88 1988 only - Jan 10 12:07:15s -0:07:15 - -Rule sol88 1988 only - Jan 11 12:07:40s -0:07:40 - -Rule sol88 1988 only - Jan 12 12:08:05s -0:08:05 - -Rule sol88 1988 only - Jan 13 12:08:25s -0:08:25 - -Rule sol88 1988 only - Jan 14 12:08:50s -0:08:50 - -Rule sol88 1988 only - Jan 15 12:09:10s -0:09:10 - -Rule sol88 1988 only - Jan 16 12:09:30s -0:09:30 - -Rule sol88 1988 only - Jan 17 12:09:50s -0:09:50 - -Rule sol88 1988 only - Jan 18 12:10:10s -0:10:10 - -Rule sol88 1988 only - Jan 19 12:10:30s -0:10:30 - -Rule sol88 1988 only - Jan 20 12:10:50s -0:10:50 - -Rule sol88 1988 only - Jan 21 12:11:05s -0:11:05 - -Rule sol88 1988 only - Jan 22 12:11:25s -0:11:25 - -Rule sol88 1988 only - Jan 23 12:11:40s -0:11:40 - -Rule sol88 1988 only - Jan 24 12:11:55s -0:11:55 - -Rule sol88 1988 only - Jan 25 12:12:10s -0:12:10 - -Rule sol88 1988 only - Jan 26 12:12:25s -0:12:25 - -Rule sol88 1988 only - Jan 27 12:12:40s -0:12:40 - -Rule sol88 1988 only - Jan 28 12:12:50s -0:12:50 - -Rule sol88 1988 only - Jan 29 12:13:00s -0:13:00 - -Rule sol88 1988 only - Jan 30 12:13:10s -0:13:10 - -Rule sol88 1988 only - Jan 31 12:13:20s -0:13:20 - -Rule sol88 1988 only - Feb 1 12:13:30s -0:13:30 - -Rule sol88 1988 only - Feb 2 12:13:40s -0:13:40 - -Rule sol88 1988 only - Feb 3 12:13:45s -0:13:45 - -Rule sol88 1988 only - Feb 4 12:13:55s -0:13:55 - -Rule sol88 1988 only - Feb 5 12:14:00s -0:14:00 - -Rule sol88 1988 only - Feb 6 12:14:05s -0:14:05 - -Rule sol88 1988 only - Feb 7 12:14:10s -0:14:10 - -Rule sol88 1988 only - Feb 8 12:14:10s -0:14:10 - -Rule sol88 1988 only - Feb 9 12:14:15s -0:14:15 - -Rule sol88 1988 only - Feb 10 12:14:15s -0:14:15 - -Rule sol88 1988 only - Feb 11 12:14:15s -0:14:15 - -Rule sol88 1988 only - Feb 12 12:14:15s -0:14:15 - -Rule sol88 1988 only - Feb 13 12:14:15s -0:14:15 - -Rule sol88 1988 only - Feb 14 12:14:15s -0:14:15 - -Rule sol88 1988 only - Feb 15 12:14:10s -0:14:10 - -Rule sol88 1988 only - Feb 16 12:14:10s -0:14:10 - -Rule sol88 1988 only - Feb 17 12:14:05s -0:14:05 - -Rule sol88 1988 only - Feb 18 12:14:00s -0:14:00 - -Rule sol88 1988 only - Feb 19 12:13:55s -0:13:55 - -Rule sol88 1988 only - Feb 20 12:13:50s -0:13:50 - -Rule sol88 1988 only - Feb 21 12:13:45s -0:13:45 - -Rule sol88 1988 only - Feb 22 12:13:40s -0:13:40 - -Rule sol88 1988 only - Feb 23 12:13:30s -0:13:30 - -Rule sol88 1988 only - Feb 24 12:13:20s -0:13:20 - -Rule sol88 1988 only - Feb 25 12:13:15s -0:13:15 - -Rule sol88 1988 only - Feb 26 12:13:05s -0:13:05 - -Rule sol88 1988 only - Feb 27 12:12:55s -0:12:55 - -Rule sol88 1988 only - Feb 28 12:12:45s -0:12:45 - -Rule sol88 1988 only - Feb 29 12:12:30s -0:12:30 - -Rule sol88 1988 only - Mar 1 12:12:20s -0:12:20 - -Rule sol88 1988 only - Mar 2 12:12:10s -0:12:10 - -Rule sol88 1988 only - Mar 3 12:11:55s -0:11:55 - -Rule sol88 1988 only - Mar 4 12:11:45s -0:11:45 - -Rule sol88 1988 only - Mar 5 12:11:30s -0:11:30 - -Rule sol88 1988 only - Mar 6 12:11:15s -0:11:15 - -Rule sol88 1988 only - Mar 7 12:11:00s -0:11:00 - -Rule sol88 1988 only - Mar 8 12:10:45s -0:10:45 - -Rule sol88 1988 only - Mar 9 12:10:30s -0:10:30 - -Rule sol88 1988 only - Mar 10 12:10:15s -0:10:15 - -Rule sol88 1988 only - Mar 11 12:10:00s -0:10:00 - -Rule sol88 1988 only - Mar 12 12:09:45s -0:09:45 - -Rule sol88 1988 only - Mar 13 12:09:30s -0:09:30 - -Rule sol88 1988 only - Mar 14 12:09:10s -0:09:10 - -Rule sol88 1988 only - Mar 15 12:08:55s -0:08:55 - -Rule sol88 1988 only - Mar 16 12:08:40s -0:08:40 - -Rule sol88 1988 only - Mar 17 12:08:20s -0:08:20 - -Rule sol88 1988 only - Mar 18 12:08:05s -0:08:05 - -Rule sol88 1988 only - Mar 19 12:07:45s -0:07:45 - -Rule sol88 1988 only - Mar 20 12:07:30s -0:07:30 - -Rule sol88 1988 only - Mar 21 12:07:10s -0:07:10 - -Rule sol88 1988 only - Mar 22 12:06:50s -0:06:50 - -Rule sol88 1988 only - Mar 23 12:06:35s -0:06:35 - -Rule sol88 1988 only - Mar 24 12:06:15s -0:06:15 - -Rule sol88 1988 only - Mar 25 12:06:00s -0:06:00 - -Rule sol88 1988 only - Mar 26 12:05:40s -0:05:40 - -Rule sol88 1988 only - Mar 27 12:05:20s -0:05:20 - -Rule sol88 1988 only - Mar 28 12:05:05s -0:05:05 - -Rule sol88 1988 only - Mar 29 12:04:45s -0:04:45 - -Rule sol88 1988 only - Mar 30 12:04:25s -0:04:25 - -Rule sol88 1988 only - Mar 31 12:04:10s -0:04:10 - -Rule sol88 1988 only - Apr 1 12:03:50s -0:03:50 - -Rule sol88 1988 only - Apr 2 12:03:35s -0:03:35 - -Rule sol88 1988 only - Apr 3 12:03:15s -0:03:15 - -Rule sol88 1988 only - Apr 4 12:03:00s -0:03:00 - -Rule sol88 1988 only - Apr 5 12:02:40s -0:02:40 - -Rule sol88 1988 only - Apr 6 12:02:25s -0:02:25 - -Rule sol88 1988 only - Apr 7 12:02:05s -0:02:05 - -Rule sol88 1988 only - Apr 8 12:01:50s -0:01:50 - -Rule sol88 1988 only - Apr 9 12:01:35s -0:01:35 - -Rule sol88 1988 only - Apr 10 12:01:15s -0:01:15 - -Rule sol88 1988 only - Apr 11 12:01:00s -0:01:00 - -Rule sol88 1988 only - Apr 12 12:00:45s -0:00:45 - -Rule sol88 1988 only - Apr 13 12:00:30s -0:00:30 - -Rule sol88 1988 only - Apr 14 12:00:15s -0:00:15 - -Rule sol88 1988 only - Apr 15 12:00:00s 0:00:00 - -Rule sol88 1988 only - Apr 16 11:59:45s 0:00:15 - -Rule sol88 1988 only - Apr 17 11:59:30s 0:00:30 - -Rule sol88 1988 only - Apr 18 11:59:20s 0:00:40 - -Rule sol88 1988 only - Apr 19 11:59:05s 0:00:55 - -Rule sol88 1988 only - Apr 20 11:58:55s 0:01:05 - -Rule sol88 1988 only - Apr 21 11:58:40s 0:01:20 - -Rule sol88 1988 only - Apr 22 11:58:30s 0:01:30 - -Rule sol88 1988 only - Apr 23 11:58:15s 0:01:45 - -Rule sol88 1988 only - Apr 24 11:58:05s 0:01:55 - -Rule sol88 1988 only - Apr 25 11:57:55s 0:02:05 - -Rule sol88 1988 only - Apr 26 11:57:45s 0:02:15 - -Rule sol88 1988 only - Apr 27 11:57:35s 0:02:25 - -Rule sol88 1988 only - Apr 28 11:57:30s 0:02:30 - -Rule sol88 1988 only - Apr 29 11:57:20s 0:02:40 - -Rule sol88 1988 only - Apr 30 11:57:10s 0:02:50 - -Rule sol88 1988 only - May 1 11:57:05s 0:02:55 - -Rule sol88 1988 only - May 2 11:56:55s 0:03:05 - -Rule sol88 1988 only - May 3 11:56:50s 0:03:10 - -Rule sol88 1988 only - May 4 11:56:45s 0:03:15 - -Rule sol88 1988 only - May 5 11:56:40s 0:03:20 - -Rule sol88 1988 only - May 6 11:56:35s 0:03:25 - -Rule sol88 1988 only - May 7 11:56:30s 0:03:30 - -Rule sol88 1988 only - May 8 11:56:25s 0:03:35 - -Rule sol88 1988 only - May 9 11:56:25s 0:03:35 - -Rule sol88 1988 only - May 10 11:56:20s 0:03:40 - -Rule sol88 1988 only - May 11 11:56:20s 0:03:40 - -Rule sol88 1988 only - May 12 11:56:20s 0:03:40 - -Rule sol88 1988 only - May 13 11:56:20s 0:03:40 - -Rule sol88 1988 only - May 14 11:56:20s 0:03:40 - -Rule sol88 1988 only - May 15 11:56:20s 0:03:40 - -Rule sol88 1988 only - May 16 11:56:20s 0:03:40 - -Rule sol88 1988 only - May 17 11:56:20s 0:03:40 - -Rule sol88 1988 only - May 18 11:56:25s 0:03:35 - -Rule sol88 1988 only - May 19 11:56:25s 0:03:35 - -Rule sol88 1988 only - May 20 11:56:30s 0:03:30 - -Rule sol88 1988 only - May 21 11:56:35s 0:03:25 - -Rule sol88 1988 only - May 22 11:56:40s 0:03:20 - -Rule sol88 1988 only - May 23 11:56:45s 0:03:15 - -Rule sol88 1988 only - May 24 11:56:50s 0:03:10 - -Rule sol88 1988 only - May 25 11:56:55s 0:03:05 - -Rule sol88 1988 only - May 26 11:57:00s 0:03:00 - -Rule sol88 1988 only - May 27 11:57:05s 0:02:55 - -Rule sol88 1988 only - May 28 11:57:15s 0:02:45 - -Rule sol88 1988 only - May 29 11:57:20s 0:02:40 - -Rule sol88 1988 only - May 30 11:57:30s 0:02:30 - -Rule sol88 1988 only - May 31 11:57:40s 0:02:20 - -Rule sol88 1988 only - Jun 1 11:57:50s 0:02:10 - -Rule sol88 1988 only - Jun 2 11:57:55s 0:02:05 - -Rule sol88 1988 only - Jun 3 11:58:05s 0:01:55 - -Rule sol88 1988 only - Jun 4 11:58:15s 0:01:45 - -Rule sol88 1988 only - Jun 5 11:58:30s 0:01:30 - -Rule sol88 1988 only - Jun 6 11:58:40s 0:01:20 - -Rule sol88 1988 only - Jun 7 11:58:50s 0:01:10 - -Rule sol88 1988 only - Jun 8 11:59:00s 0:01:00 - -Rule sol88 1988 only - Jun 9 11:59:15s 0:00:45 - -Rule sol88 1988 only - Jun 10 11:59:25s 0:00:35 - -Rule sol88 1988 only - Jun 11 11:59:35s 0:00:25 - -Rule sol88 1988 only - Jun 12 11:59:50s 0:00:10 - -Rule sol88 1988 only - Jun 13 12:00:00s 0:00:00 - -Rule sol88 1988 only - Jun 14 12:00:15s -0:00:15 - -Rule sol88 1988 only - Jun 15 12:00:25s -0:00:25 - -Rule sol88 1988 only - Jun 16 12:00:40s -0:00:40 - -Rule sol88 1988 only - Jun 17 12:00:55s -0:00:55 - -Rule sol88 1988 only - Jun 18 12:01:05s -0:01:05 - -Rule sol88 1988 only - Jun 19 12:01:20s -0:01:20 - -Rule sol88 1988 only - Jun 20 12:01:30s -0:01:30 - -Rule sol88 1988 only - Jun 21 12:01:45s -0:01:45 - -Rule sol88 1988 only - Jun 22 12:02:00s -0:02:00 - -Rule sol88 1988 only - Jun 23 12:02:10s -0:02:10 - -Rule sol88 1988 only - Jun 24 12:02:25s -0:02:25 - -Rule sol88 1988 only - Jun 25 12:02:35s -0:02:35 - -Rule sol88 1988 only - Jun 26 12:02:50s -0:02:50 - -Rule sol88 1988 only - Jun 27 12:03:00s -0:03:00 - -Rule sol88 1988 only - Jun 28 12:03:15s -0:03:15 - -Rule sol88 1988 only - Jun 29 12:03:25s -0:03:25 - -Rule sol88 1988 only - Jun 30 12:03:40s -0:03:40 - -Rule sol88 1988 only - Jul 1 12:03:50s -0:03:50 - -Rule sol88 1988 only - Jul 2 12:04:00s -0:04:00 - -Rule sol88 1988 only - Jul 3 12:04:10s -0:04:10 - -Rule sol88 1988 only - Jul 4 12:04:25s -0:04:25 - -Rule sol88 1988 only - Jul 5 12:04:35s -0:04:35 - -Rule sol88 1988 only - Jul 6 12:04:45s -0:04:45 - -Rule sol88 1988 only - Jul 7 12:04:55s -0:04:55 - -Rule sol88 1988 only - Jul 8 12:05:05s -0:05:05 - -Rule sol88 1988 only - Jul 9 12:05:10s -0:05:10 - -Rule sol88 1988 only - Jul 10 12:05:20s -0:05:20 - -Rule sol88 1988 only - Jul 11 12:05:30s -0:05:30 - -Rule sol88 1988 only - Jul 12 12:05:35s -0:05:35 - -Rule sol88 1988 only - Jul 13 12:05:45s -0:05:45 - -Rule sol88 1988 only - Jul 14 12:05:50s -0:05:50 - -Rule sol88 1988 only - Jul 15 12:05:55s -0:05:55 - -Rule sol88 1988 only - Jul 16 12:06:00s -0:06:00 - -Rule sol88 1988 only - Jul 17 12:06:05s -0:06:05 - -Rule sol88 1988 only - Jul 18 12:06:10s -0:06:10 - -Rule sol88 1988 only - Jul 19 12:06:15s -0:06:15 - -Rule sol88 1988 only - Jul 20 12:06:20s -0:06:20 - -Rule sol88 1988 only - Jul 21 12:06:25s -0:06:25 - -Rule sol88 1988 only - Jul 22 12:06:25s -0:06:25 - -Rule sol88 1988 only - Jul 23 12:06:25s -0:06:25 - -Rule sol88 1988 only - Jul 24 12:06:30s -0:06:30 - -Rule sol88 1988 only - Jul 25 12:06:30s -0:06:30 - -Rule sol88 1988 only - Jul 26 12:06:30s -0:06:30 - -Rule sol88 1988 only - Jul 27 12:06:30s -0:06:30 - -Rule sol88 1988 only - Jul 28 12:06:30s -0:06:30 - -Rule sol88 1988 only - Jul 29 12:06:25s -0:06:25 - -Rule sol88 1988 only - Jul 30 12:06:25s -0:06:25 - -Rule sol88 1988 only - Jul 31 12:06:20s -0:06:20 - -Rule sol88 1988 only - Aug 1 12:06:15s -0:06:15 - -Rule sol88 1988 only - Aug 2 12:06:15s -0:06:15 - -Rule sol88 1988 only - Aug 3 12:06:10s -0:06:10 - -Rule sol88 1988 only - Aug 4 12:06:05s -0:06:05 - -Rule sol88 1988 only - Aug 5 12:05:55s -0:05:55 - -Rule sol88 1988 only - Aug 6 12:05:50s -0:05:50 - -Rule sol88 1988 only - Aug 7 12:05:45s -0:05:45 - -Rule sol88 1988 only - Aug 8 12:05:35s -0:05:35 - -Rule sol88 1988 only - Aug 9 12:05:25s -0:05:25 - -Rule sol88 1988 only - Aug 10 12:05:20s -0:05:20 - -Rule sol88 1988 only - Aug 11 12:05:10s -0:05:10 - -Rule sol88 1988 only - Aug 12 12:05:00s -0:05:00 - -Rule sol88 1988 only - Aug 13 12:04:50s -0:04:50 - -Rule sol88 1988 only - Aug 14 12:04:35s -0:04:35 - -Rule sol88 1988 only - Aug 15 12:04:25s -0:04:25 - -Rule sol88 1988 only - Aug 16 12:04:15s -0:04:15 - -Rule sol88 1988 only - Aug 17 12:04:00s -0:04:00 - -Rule sol88 1988 only - Aug 18 12:03:50s -0:03:50 - -Rule sol88 1988 only - Aug 19 12:03:35s -0:03:35 - -Rule sol88 1988 only - Aug 20 12:03:20s -0:03:20 - -Rule sol88 1988 only - Aug 21 12:03:05s -0:03:05 - -Rule sol88 1988 only - Aug 22 12:02:50s -0:02:50 - -Rule sol88 1988 only - Aug 23 12:02:35s -0:02:35 - -Rule sol88 1988 only - Aug 24 12:02:20s -0:02:20 - -Rule sol88 1988 only - Aug 25 12:02:00s -0:02:00 - -Rule sol88 1988 only - Aug 26 12:01:45s -0:01:45 - -Rule sol88 1988 only - Aug 27 12:01:30s -0:01:30 - -Rule sol88 1988 only - Aug 28 12:01:10s -0:01:10 - -Rule sol88 1988 only - Aug 29 12:00:50s -0:00:50 - -Rule sol88 1988 only - Aug 30 12:00:35s -0:00:35 - -Rule sol88 1988 only - Aug 31 12:00:15s -0:00:15 - -Rule sol88 1988 only - Sep 1 11:59:55s 0:00:05 - -Rule sol88 1988 only - Sep 2 11:59:35s 0:00:25 - -Rule sol88 1988 only - Sep 3 11:59:20s 0:00:40 - -Rule sol88 1988 only - Sep 4 11:59:00s 0:01:00 - -Rule sol88 1988 only - Sep 5 11:58:40s 0:01:20 - -Rule sol88 1988 only - Sep 6 11:58:20s 0:01:40 - -Rule sol88 1988 only - Sep 7 11:58:00s 0:02:00 - -Rule sol88 1988 only - Sep 8 11:57:35s 0:02:25 - -Rule sol88 1988 only - Sep 9 11:57:15s 0:02:45 - -Rule sol88 1988 only - Sep 10 11:56:55s 0:03:05 - -Rule sol88 1988 only - Sep 11 11:56:35s 0:03:25 - -Rule sol88 1988 only - Sep 12 11:56:15s 0:03:45 - -Rule sol88 1988 only - Sep 13 11:55:50s 0:04:10 - -Rule sol88 1988 only - Sep 14 11:55:30s 0:04:30 - -Rule sol88 1988 only - Sep 15 11:55:10s 0:04:50 - -Rule sol88 1988 only - Sep 16 11:54:50s 0:05:10 - -Rule sol88 1988 only - Sep 17 11:54:25s 0:05:35 - -Rule sol88 1988 only - Sep 18 11:54:05s 0:05:55 - -Rule sol88 1988 only - Sep 19 11:53:45s 0:06:15 - -Rule sol88 1988 only - Sep 20 11:53:25s 0:06:35 - -Rule sol88 1988 only - Sep 21 11:53:00s 0:07:00 - -Rule sol88 1988 only - Sep 22 11:52:40s 0:07:20 - -Rule sol88 1988 only - Sep 23 11:52:20s 0:07:40 - -Rule sol88 1988 only - Sep 24 11:52:00s 0:08:00 - -Rule sol88 1988 only - Sep 25 11:51:40s 0:08:20 - -Rule sol88 1988 only - Sep 26 11:51:15s 0:08:45 - -Rule sol88 1988 only - Sep 27 11:50:55s 0:09:05 - -Rule sol88 1988 only - Sep 28 11:50:35s 0:09:25 - -Rule sol88 1988 only - Sep 29 11:50:15s 0:09:45 - -Rule sol88 1988 only - Sep 30 11:49:55s 0:10:05 - -Rule sol88 1988 only - Oct 1 11:49:35s 0:10:25 - -Rule sol88 1988 only - Oct 2 11:49:20s 0:10:40 - -Rule sol88 1988 only - Oct 3 11:49:00s 0:11:00 - -Rule sol88 1988 only - Oct 4 11:48:40s 0:11:20 - -Rule sol88 1988 only - Oct 5 11:48:25s 0:11:35 - -Rule sol88 1988 only - Oct 6 11:48:05s 0:11:55 - -Rule sol88 1988 only - Oct 7 11:47:50s 0:12:10 - -Rule sol88 1988 only - Oct 8 11:47:30s 0:12:30 - -Rule sol88 1988 only - Oct 9 11:47:15s 0:12:45 - -Rule sol88 1988 only - Oct 10 11:47:00s 0:13:00 - -Rule sol88 1988 only - Oct 11 11:46:45s 0:13:15 - -Rule sol88 1988 only - Oct 12 11:46:30s 0:13:30 - -Rule sol88 1988 only - Oct 13 11:46:15s 0:13:45 - -Rule sol88 1988 only - Oct 14 11:46:00s 0:14:00 - -Rule sol88 1988 only - Oct 15 11:45:45s 0:14:15 - -Rule sol88 1988 only - Oct 16 11:45:35s 0:14:25 - -Rule sol88 1988 only - Oct 17 11:45:20s 0:14:40 - -Rule sol88 1988 only - Oct 18 11:45:10s 0:14:50 - -Rule sol88 1988 only - Oct 19 11:45:00s 0:15:00 - -Rule sol88 1988 only - Oct 20 11:44:45s 0:15:15 - -Rule sol88 1988 only - Oct 21 11:44:40s 0:15:20 - -Rule sol88 1988 only - Oct 22 11:44:30s 0:15:30 - -Rule sol88 1988 only - Oct 23 11:44:20s 0:15:40 - -Rule sol88 1988 only - Oct 24 11:44:10s 0:15:50 - -Rule sol88 1988 only - Oct 25 11:44:05s 0:15:55 - -Rule sol88 1988 only - Oct 26 11:44:00s 0:16:00 - -Rule sol88 1988 only - Oct 27 11:43:55s 0:16:05 - -Rule sol88 1988 only - Oct 28 11:43:50s 0:16:10 - -Rule sol88 1988 only - Oct 29 11:43:45s 0:16:15 - -Rule sol88 1988 only - Oct 30 11:43:40s 0:16:20 - -Rule sol88 1988 only - Oct 31 11:43:40s 0:16:20 - -Rule sol88 1988 only - Nov 1 11:43:35s 0:16:25 - -Rule sol88 1988 only - Nov 2 11:43:35s 0:16:25 - -Rule sol88 1988 only - Nov 3 11:43:35s 0:16:25 - -Rule sol88 1988 only - Nov 4 11:43:35s 0:16:25 - -Rule sol88 1988 only - Nov 5 11:43:40s 0:16:20 - -Rule sol88 1988 only - Nov 6 11:43:40s 0:16:20 - -Rule sol88 1988 only - Nov 7 11:43:45s 0:16:15 - -Rule sol88 1988 only - Nov 8 11:43:45s 0:16:15 - -Rule sol88 1988 only - Nov 9 11:43:50s 0:16:10 - -Rule sol88 1988 only - Nov 10 11:44:00s 0:16:00 - -Rule sol88 1988 only - Nov 11 11:44:05s 0:15:55 - -Rule sol88 1988 only - Nov 12 11:44:10s 0:15:50 - -Rule sol88 1988 only - Nov 13 11:44:20s 0:15:40 - -Rule sol88 1988 only - Nov 14 11:44:30s 0:15:30 - -Rule sol88 1988 only - Nov 15 11:44:40s 0:15:20 - -Rule sol88 1988 only - Nov 16 11:44:50s 0:15:10 - -Rule sol88 1988 only - Nov 17 11:45:00s 0:15:00 - -Rule sol88 1988 only - Nov 18 11:45:15s 0:14:45 - -Rule sol88 1988 only - Nov 19 11:45:25s 0:14:35 - -Rule sol88 1988 only - Nov 20 11:45:40s 0:14:20 - -Rule sol88 1988 only - Nov 21 11:45:55s 0:14:05 - -Rule sol88 1988 only - Nov 22 11:46:10s 0:13:50 - -Rule sol88 1988 only - Nov 23 11:46:30s 0:13:30 - -Rule sol88 1988 only - Nov 24 11:46:45s 0:13:15 - -Rule sol88 1988 only - Nov 25 11:47:05s 0:12:55 - -Rule sol88 1988 only - Nov 26 11:47:20s 0:12:40 - -Rule sol88 1988 only - Nov 27 11:47:40s 0:12:20 - -Rule sol88 1988 only - Nov 28 11:48:00s 0:12:00 - -Rule sol88 1988 only - Nov 29 11:48:25s 0:11:35 - -Rule sol88 1988 only - Nov 30 11:48:45s 0:11:15 - -Rule sol88 1988 only - Dec 1 11:49:05s 0:10:55 - -Rule sol88 1988 only - Dec 2 11:49:30s 0:10:30 - -Rule sol88 1988 only - Dec 3 11:49:55s 0:10:05 - -Rule sol88 1988 only - Dec 4 11:50:15s 0:09:45 - -Rule sol88 1988 only - Dec 5 11:50:40s 0:09:20 - -Rule sol88 1988 only - Dec 6 11:51:05s 0:08:55 - -Rule sol88 1988 only - Dec 7 11:51:35s 0:08:25 - -Rule sol88 1988 only - Dec 8 11:52:00s 0:08:00 - -Rule sol88 1988 only - Dec 9 11:52:25s 0:07:35 - -Rule sol88 1988 only - Dec 10 11:52:55s 0:07:05 - -Rule sol88 1988 only - Dec 11 11:53:20s 0:06:40 - -Rule sol88 1988 only - Dec 12 11:53:50s 0:06:10 - -Rule sol88 1988 only - Dec 13 11:54:15s 0:05:45 - -Rule sol88 1988 only - Dec 14 11:54:45s 0:05:15 - -Rule sol88 1988 only - Dec 15 11:55:15s 0:04:45 - -Rule sol88 1988 only - Dec 16 11:55:45s 0:04:15 - -Rule sol88 1988 only - Dec 17 11:56:15s 0:03:45 - -Rule sol88 1988 only - Dec 18 11:56:40s 0:03:20 - -Rule sol88 1988 only - Dec 19 11:57:10s 0:02:50 - -Rule sol88 1988 only - Dec 20 11:57:40s 0:02:20 - -Rule sol88 1988 only - Dec 21 11:58:10s 0:01:50 - -Rule sol88 1988 only - Dec 22 11:58:40s 0:01:20 - -Rule sol88 1988 only - Dec 23 11:59:10s 0:00:50 - -Rule sol88 1988 only - Dec 24 11:59:40s 0:00:20 - -Rule sol88 1988 only - Dec 25 12:00:10s -0:00:10 - -Rule sol88 1988 only - Dec 26 12:00:40s -0:00:40 - -Rule sol88 1988 only - Dec 27 12:01:10s -0:01:10 - -Rule sol88 1988 only - Dec 28 12:01:40s -0:01:40 - -Rule sol88 1988 only - Dec 29 12:02:10s -0:02:10 - -Rule sol88 1988 only - Dec 30 12:02:35s -0:02:35 - -Rule sol88 1988 only - Dec 31 12:03:05s -0:03:05 - - -# Riyadh is at about 46 degrees 46 minutes East: 3 hrs, 7 mins, 4 secs -# Before and after 1988, we'll operate on local mean solar time. - -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -Zone Mideast/Riyadh88 3:07:04 - ?? 1988 - 3:07:04 sol88 ?? 1989 - 3:07:04 - ?? diff --git a/share/zoneinfo/datfiles/solar89 b/share/zoneinfo/datfiles/solar89 deleted file mode 100644 index 4f25170..0000000 --- a/share/zoneinfo/datfiles/solar89 +++ /dev/null @@ -1,391 +0,0 @@ -# @(#)solar89 1.3 - -# Apparent noon times below are for Riyadh; they're a bit off for other places. -# Times were computed using a formula provided by the U. S. Naval Observatory: -# eqt = -105.8 * sin(l) + 596.2 * sin(2 * l) + 4.4 * sin(3 * l) -# -12.7 * sin(4 * l) - 429.0 * cos(l) - 2.1 * cos (2 * l) -# + 19.3 * cos(3 * l); -# where l is the "mean longitude of the Sun" given by -# l = 279.642 degrees + 0.985647 * d -# and d is the interval in days from January 0, 0 hours Universal Time -# (equaling the day of the year plus the fraction of a day from zero hours). -# The accuracy of the formula is plus or minus three seconds. -# -# Rounding to the nearest five seconds results in fewer than -# 256 different "time types"--a limit that's faced because time types are -# stored on disk as unsigned chars. - -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule sol89 1989 only - Jan 1 12:03:35s -0:03:35 - -Rule sol89 1989 only - Jan 2 12:04:05s -0:04:05 - -Rule sol89 1989 only - Jan 3 12:04:30s -0:04:30 - -Rule sol89 1989 only - Jan 4 12:05:00s -0:05:00 - -Rule sol89 1989 only - Jan 5 12:05:25s -0:05:25 - -Rule sol89 1989 only - Jan 6 12:05:50s -0:05:50 - -Rule sol89 1989 only - Jan 7 12:06:15s -0:06:15 - -Rule sol89 1989 only - Jan 8 12:06:45s -0:06:45 - -Rule sol89 1989 only - Jan 9 12:07:10s -0:07:10 - -Rule sol89 1989 only - Jan 10 12:07:35s -0:07:35 - -Rule sol89 1989 only - Jan 11 12:07:55s -0:07:55 - -Rule sol89 1989 only - Jan 12 12:08:20s -0:08:20 - -Rule sol89 1989 only - Jan 13 12:08:45s -0:08:45 - -Rule sol89 1989 only - Jan 14 12:09:05s -0:09:05 - -Rule sol89 1989 only - Jan 15 12:09:25s -0:09:25 - -Rule sol89 1989 only - Jan 16 12:09:45s -0:09:45 - -Rule sol89 1989 only - Jan 17 12:10:05s -0:10:05 - -Rule sol89 1989 only - Jan 18 12:10:25s -0:10:25 - -Rule sol89 1989 only - Jan 19 12:10:45s -0:10:45 - -Rule sol89 1989 only - Jan 20 12:11:05s -0:11:05 - -Rule sol89 1989 only - Jan 21 12:11:20s -0:11:20 - -Rule sol89 1989 only - Jan 22 12:11:35s -0:11:35 - -Rule sol89 1989 only - Jan 23 12:11:55s -0:11:55 - -Rule sol89 1989 only - Jan 24 12:12:10s -0:12:10 - -Rule sol89 1989 only - Jan 25 12:12:20s -0:12:20 - -Rule sol89 1989 only - Jan 26 12:12:35s -0:12:35 - -Rule sol89 1989 only - Jan 27 12:12:50s -0:12:50 - -Rule sol89 1989 only - Jan 28 12:13:00s -0:13:00 - -Rule sol89 1989 only - Jan 29 12:13:10s -0:13:10 - -Rule sol89 1989 only - Jan 30 12:13:20s -0:13:20 - -Rule sol89 1989 only - Jan 31 12:13:30s -0:13:30 - -Rule sol89 1989 only - Feb 1 12:13:40s -0:13:40 - -Rule sol89 1989 only - Feb 2 12:13:45s -0:13:45 - -Rule sol89 1989 only - Feb 3 12:13:55s -0:13:55 - -Rule sol89 1989 only - Feb 4 12:14:00s -0:14:00 - -Rule sol89 1989 only - Feb 5 12:14:05s -0:14:05 - -Rule sol89 1989 only - Feb 6 12:14:10s -0:14:10 - -Rule sol89 1989 only - Feb 7 12:14:10s -0:14:10 - -Rule sol89 1989 only - Feb 8 12:14:15s -0:14:15 - -Rule sol89 1989 only - Feb 9 12:14:15s -0:14:15 - -Rule sol89 1989 only - Feb 10 12:14:20s -0:14:20 - -Rule sol89 1989 only - Feb 11 12:14:20s -0:14:20 - -Rule sol89 1989 only - Feb 12 12:14:20s -0:14:20 - -Rule sol89 1989 only - Feb 13 12:14:15s -0:14:15 - -Rule sol89 1989 only - Feb 14 12:14:15s -0:14:15 - -Rule sol89 1989 only - Feb 15 12:14:10s -0:14:10 - -Rule sol89 1989 only - Feb 16 12:14:10s -0:14:10 - -Rule sol89 1989 only - Feb 17 12:14:05s -0:14:05 - -Rule sol89 1989 only - Feb 18 12:14:00s -0:14:00 - -Rule sol89 1989 only - Feb 19 12:13:55s -0:13:55 - -Rule sol89 1989 only - Feb 20 12:13:50s -0:13:50 - -Rule sol89 1989 only - Feb 21 12:13:40s -0:13:40 - -Rule sol89 1989 only - Feb 22 12:13:35s -0:13:35 - -Rule sol89 1989 only - Feb 23 12:13:25s -0:13:25 - -Rule sol89 1989 only - Feb 24 12:13:15s -0:13:15 - -Rule sol89 1989 only - Feb 25 12:13:05s -0:13:05 - -Rule sol89 1989 only - Feb 26 12:12:55s -0:12:55 - -Rule sol89 1989 only - Feb 27 12:12:45s -0:12:45 - -Rule sol89 1989 only - Feb 28 12:12:35s -0:12:35 - -Rule sol89 1989 only - Mar 1 12:12:25s -0:12:25 - -Rule sol89 1989 only - Mar 2 12:12:10s -0:12:10 - -Rule sol89 1989 only - Mar 3 12:12:00s -0:12:00 - -Rule sol89 1989 only - Mar 4 12:11:45s -0:11:45 - -Rule sol89 1989 only - Mar 5 12:11:35s -0:11:35 - -Rule sol89 1989 only - Mar 6 12:11:20s -0:11:20 - -Rule sol89 1989 only - Mar 7 12:11:05s -0:11:05 - -Rule sol89 1989 only - Mar 8 12:10:50s -0:10:50 - -Rule sol89 1989 only - Mar 9 12:10:35s -0:10:35 - -Rule sol89 1989 only - Mar 10 12:10:20s -0:10:20 - -Rule sol89 1989 only - Mar 11 12:10:05s -0:10:05 - -Rule sol89 1989 only - Mar 12 12:09:50s -0:09:50 - -Rule sol89 1989 only - Mar 13 12:09:30s -0:09:30 - -Rule sol89 1989 only - Mar 14 12:09:15s -0:09:15 - -Rule sol89 1989 only - Mar 15 12:09:00s -0:09:00 - -Rule sol89 1989 only - Mar 16 12:08:40s -0:08:40 - -Rule sol89 1989 only - Mar 17 12:08:25s -0:08:25 - -Rule sol89 1989 only - Mar 18 12:08:05s -0:08:05 - -Rule sol89 1989 only - Mar 19 12:07:50s -0:07:50 - -Rule sol89 1989 only - Mar 20 12:07:30s -0:07:30 - -Rule sol89 1989 only - Mar 21 12:07:15s -0:07:15 - -Rule sol89 1989 only - Mar 22 12:06:55s -0:06:55 - -Rule sol89 1989 only - Mar 23 12:06:35s -0:06:35 - -Rule sol89 1989 only - Mar 24 12:06:20s -0:06:20 - -Rule sol89 1989 only - Mar 25 12:06:00s -0:06:00 - -Rule sol89 1989 only - Mar 26 12:05:40s -0:05:40 - -Rule sol89 1989 only - Mar 27 12:05:25s -0:05:25 - -Rule sol89 1989 only - Mar 28 12:05:05s -0:05:05 - -Rule sol89 1989 only - Mar 29 12:04:50s -0:04:50 - -Rule sol89 1989 only - Mar 30 12:04:30s -0:04:30 - -Rule sol89 1989 only - Mar 31 12:04:10s -0:04:10 - -Rule sol89 1989 only - Apr 1 12:03:55s -0:03:55 - -Rule sol89 1989 only - Apr 2 12:03:35s -0:03:35 - -Rule sol89 1989 only - Apr 3 12:03:20s -0:03:20 - -Rule sol89 1989 only - Apr 4 12:03:00s -0:03:00 - -Rule sol89 1989 only - Apr 5 12:02:45s -0:02:45 - -Rule sol89 1989 only - Apr 6 12:02:25s -0:02:25 - -Rule sol89 1989 only - Apr 7 12:02:10s -0:02:10 - -Rule sol89 1989 only - Apr 8 12:01:50s -0:01:50 - -Rule sol89 1989 only - Apr 9 12:01:35s -0:01:35 - -Rule sol89 1989 only - Apr 10 12:01:20s -0:01:20 - -Rule sol89 1989 only - Apr 11 12:01:05s -0:01:05 - -Rule sol89 1989 only - Apr 12 12:00:50s -0:00:50 - -Rule sol89 1989 only - Apr 13 12:00:35s -0:00:35 - -Rule sol89 1989 only - Apr 14 12:00:20s -0:00:20 - -Rule sol89 1989 only - Apr 15 12:00:05s -0:00:05 - -Rule sol89 1989 only - Apr 16 11:59:50s 0:00:10 - -Rule sol89 1989 only - Apr 17 11:59:35s 0:00:25 - -Rule sol89 1989 only - Apr 18 11:59:20s 0:00:40 - -Rule sol89 1989 only - Apr 19 11:59:10s 0:00:50 - -Rule sol89 1989 only - Apr 20 11:58:55s 0:01:05 - -Rule sol89 1989 only - Apr 21 11:58:45s 0:01:15 - -Rule sol89 1989 only - Apr 22 11:58:30s 0:01:30 - -Rule sol89 1989 only - Apr 23 11:58:20s 0:01:40 - -Rule sol89 1989 only - Apr 24 11:58:10s 0:01:50 - -Rule sol89 1989 only - Apr 25 11:58:00s 0:02:00 - -Rule sol89 1989 only - Apr 26 11:57:50s 0:02:10 - -Rule sol89 1989 only - Apr 27 11:57:40s 0:02:20 - -Rule sol89 1989 only - Apr 28 11:57:30s 0:02:30 - -Rule sol89 1989 only - Apr 29 11:57:20s 0:02:40 - -Rule sol89 1989 only - Apr 30 11:57:15s 0:02:45 - -Rule sol89 1989 only - May 1 11:57:05s 0:02:55 - -Rule sol89 1989 only - May 2 11:57:00s 0:03:00 - -Rule sol89 1989 only - May 3 11:56:50s 0:03:10 - -Rule sol89 1989 only - May 4 11:56:45s 0:03:15 - -Rule sol89 1989 only - May 5 11:56:40s 0:03:20 - -Rule sol89 1989 only - May 6 11:56:35s 0:03:25 - -Rule sol89 1989 only - May 7 11:56:30s 0:03:30 - -Rule sol89 1989 only - May 8 11:56:30s 0:03:30 - -Rule sol89 1989 only - May 9 11:56:25s 0:03:35 - -Rule sol89 1989 only - May 10 11:56:25s 0:03:35 - -Rule sol89 1989 only - May 11 11:56:20s 0:03:40 - -Rule sol89 1989 only - May 12 11:56:20s 0:03:40 - -Rule sol89 1989 only - May 13 11:56:20s 0:03:40 - -Rule sol89 1989 only - May 14 11:56:20s 0:03:40 - -Rule sol89 1989 only - May 15 11:56:20s 0:03:40 - -Rule sol89 1989 only - May 16 11:56:20s 0:03:40 - -Rule sol89 1989 only - May 17 11:56:20s 0:03:40 - -Rule sol89 1989 only - May 18 11:56:25s 0:03:35 - -Rule sol89 1989 only - May 19 11:56:25s 0:03:35 - -Rule sol89 1989 only - May 20 11:56:30s 0:03:30 - -Rule sol89 1989 only - May 21 11:56:35s 0:03:25 - -Rule sol89 1989 only - May 22 11:56:35s 0:03:25 - -Rule sol89 1989 only - May 23 11:56:40s 0:03:20 - -Rule sol89 1989 only - May 24 11:56:45s 0:03:15 - -Rule sol89 1989 only - May 25 11:56:55s 0:03:05 - -Rule sol89 1989 only - May 26 11:57:00s 0:03:00 - -Rule sol89 1989 only - May 27 11:57:05s 0:02:55 - -Rule sol89 1989 only - May 28 11:57:15s 0:02:45 - -Rule sol89 1989 only - May 29 11:57:20s 0:02:40 - -Rule sol89 1989 only - May 30 11:57:30s 0:02:30 - -Rule sol89 1989 only - May 31 11:57:35s 0:02:25 - -Rule sol89 1989 only - Jun 1 11:57:45s 0:02:15 - -Rule sol89 1989 only - Jun 2 11:57:55s 0:02:05 - -Rule sol89 1989 only - Jun 3 11:58:05s 0:01:55 - -Rule sol89 1989 only - Jun 4 11:58:15s 0:01:45 - -Rule sol89 1989 only - Jun 5 11:58:25s 0:01:35 - -Rule sol89 1989 only - Jun 6 11:58:35s 0:01:25 - -Rule sol89 1989 only - Jun 7 11:58:45s 0:01:15 - -Rule sol89 1989 only - Jun 8 11:59:00s 0:01:00 - -Rule sol89 1989 only - Jun 9 11:59:10s 0:00:50 - -Rule sol89 1989 only - Jun 10 11:59:20s 0:00:40 - -Rule sol89 1989 only - Jun 11 11:59:35s 0:00:25 - -Rule sol89 1989 only - Jun 12 11:59:45s 0:00:15 - -Rule sol89 1989 only - Jun 13 12:00:00s 0:00:00 - -Rule sol89 1989 only - Jun 14 12:00:10s -0:00:10 - -Rule sol89 1989 only - Jun 15 12:00:25s -0:00:25 - -Rule sol89 1989 only - Jun 16 12:00:35s -0:00:35 - -Rule sol89 1989 only - Jun 17 12:00:50s -0:00:50 - -Rule sol89 1989 only - Jun 18 12:01:05s -0:01:05 - -Rule sol89 1989 only - Jun 19 12:01:15s -0:01:15 - -Rule sol89 1989 only - Jun 20 12:01:30s -0:01:30 - -Rule sol89 1989 only - Jun 21 12:01:40s -0:01:40 - -Rule sol89 1989 only - Jun 22 12:01:55s -0:01:55 - -Rule sol89 1989 only - Jun 23 12:02:10s -0:02:10 - -Rule sol89 1989 only - Jun 24 12:02:20s -0:02:20 - -Rule sol89 1989 only - Jun 25 12:02:35s -0:02:35 - -Rule sol89 1989 only - Jun 26 12:02:45s -0:02:45 - -Rule sol89 1989 only - Jun 27 12:03:00s -0:03:00 - -Rule sol89 1989 only - Jun 28 12:03:10s -0:03:10 - -Rule sol89 1989 only - Jun 29 12:03:25s -0:03:25 - -Rule sol89 1989 only - Jun 30 12:03:35s -0:03:35 - -Rule sol89 1989 only - Jul 1 12:03:45s -0:03:45 - -Rule sol89 1989 only - Jul 2 12:04:00s -0:04:00 - -Rule sol89 1989 only - Jul 3 12:04:10s -0:04:10 - -Rule sol89 1989 only - Jul 4 12:04:20s -0:04:20 - -Rule sol89 1989 only - Jul 5 12:04:30s -0:04:30 - -Rule sol89 1989 only - Jul 6 12:04:40s -0:04:40 - -Rule sol89 1989 only - Jul 7 12:04:50s -0:04:50 - -Rule sol89 1989 only - Jul 8 12:05:00s -0:05:00 - -Rule sol89 1989 only - Jul 9 12:05:10s -0:05:10 - -Rule sol89 1989 only - Jul 10 12:05:20s -0:05:20 - -Rule sol89 1989 only - Jul 11 12:05:25s -0:05:25 - -Rule sol89 1989 only - Jul 12 12:05:35s -0:05:35 - -Rule sol89 1989 only - Jul 13 12:05:40s -0:05:40 - -Rule sol89 1989 only - Jul 14 12:05:50s -0:05:50 - -Rule sol89 1989 only - Jul 15 12:05:55s -0:05:55 - -Rule sol89 1989 only - Jul 16 12:06:00s -0:06:00 - -Rule sol89 1989 only - Jul 17 12:06:05s -0:06:05 - -Rule sol89 1989 only - Jul 18 12:06:10s -0:06:10 - -Rule sol89 1989 only - Jul 19 12:06:15s -0:06:15 - -Rule sol89 1989 only - Jul 20 12:06:20s -0:06:20 - -Rule sol89 1989 only - Jul 21 12:06:20s -0:06:20 - -Rule sol89 1989 only - Jul 22 12:06:25s -0:06:25 - -Rule sol89 1989 only - Jul 23 12:06:25s -0:06:25 - -Rule sol89 1989 only - Jul 24 12:06:30s -0:06:30 - -Rule sol89 1989 only - Jul 25 12:06:30s -0:06:30 - -Rule sol89 1989 only - Jul 26 12:06:30s -0:06:30 - -Rule sol89 1989 only - Jul 27 12:06:30s -0:06:30 - -Rule sol89 1989 only - Jul 28 12:06:30s -0:06:30 - -Rule sol89 1989 only - Jul 29 12:06:25s -0:06:25 - -Rule sol89 1989 only - Jul 30 12:06:25s -0:06:25 - -Rule sol89 1989 only - Jul 31 12:06:20s -0:06:20 - -Rule sol89 1989 only - Aug 1 12:06:20s -0:06:20 - -Rule sol89 1989 only - Aug 2 12:06:15s -0:06:15 - -Rule sol89 1989 only - Aug 3 12:06:10s -0:06:10 - -Rule sol89 1989 only - Aug 4 12:06:05s -0:06:05 - -Rule sol89 1989 only - Aug 5 12:06:00s -0:06:00 - -Rule sol89 1989 only - Aug 6 12:05:50s -0:05:50 - -Rule sol89 1989 only - Aug 7 12:05:45s -0:05:45 - -Rule sol89 1989 only - Aug 8 12:05:35s -0:05:35 - -Rule sol89 1989 only - Aug 9 12:05:30s -0:05:30 - -Rule sol89 1989 only - Aug 10 12:05:20s -0:05:20 - -Rule sol89 1989 only - Aug 11 12:05:10s -0:05:10 - -Rule sol89 1989 only - Aug 12 12:05:00s -0:05:00 - -Rule sol89 1989 only - Aug 13 12:04:50s -0:04:50 - -Rule sol89 1989 only - Aug 14 12:04:40s -0:04:40 - -Rule sol89 1989 only - Aug 15 12:04:30s -0:04:30 - -Rule sol89 1989 only - Aug 16 12:04:15s -0:04:15 - -Rule sol89 1989 only - Aug 17 12:04:05s -0:04:05 - -Rule sol89 1989 only - Aug 18 12:03:50s -0:03:50 - -Rule sol89 1989 only - Aug 19 12:03:35s -0:03:35 - -Rule sol89 1989 only - Aug 20 12:03:25s -0:03:25 - -Rule sol89 1989 only - Aug 21 12:03:10s -0:03:10 - -Rule sol89 1989 only - Aug 22 12:02:55s -0:02:55 - -Rule sol89 1989 only - Aug 23 12:02:40s -0:02:40 - -Rule sol89 1989 only - Aug 24 12:02:20s -0:02:20 - -Rule sol89 1989 only - Aug 25 12:02:05s -0:02:05 - -Rule sol89 1989 only - Aug 26 12:01:50s -0:01:50 - -Rule sol89 1989 only - Aug 27 12:01:30s -0:01:30 - -Rule sol89 1989 only - Aug 28 12:01:15s -0:01:15 - -Rule sol89 1989 only - Aug 29 12:00:55s -0:00:55 - -Rule sol89 1989 only - Aug 30 12:00:40s -0:00:40 - -Rule sol89 1989 only - Aug 31 12:00:20s -0:00:20 - -Rule sol89 1989 only - Sep 1 12:00:00s 0:00:00 - -Rule sol89 1989 only - Sep 2 11:59:45s 0:00:15 - -Rule sol89 1989 only - Sep 3 11:59:25s 0:00:35 - -Rule sol89 1989 only - Sep 4 11:59:05s 0:00:55 - -Rule sol89 1989 only - Sep 5 11:58:45s 0:01:15 - -Rule sol89 1989 only - Sep 6 11:58:25s 0:01:35 - -Rule sol89 1989 only - Sep 7 11:58:05s 0:01:55 - -Rule sol89 1989 only - Sep 8 11:57:45s 0:02:15 - -Rule sol89 1989 only - Sep 9 11:57:20s 0:02:40 - -Rule sol89 1989 only - Sep 10 11:57:00s 0:03:00 - -Rule sol89 1989 only - Sep 11 11:56:40s 0:03:20 - -Rule sol89 1989 only - Sep 12 11:56:20s 0:03:40 - -Rule sol89 1989 only - Sep 13 11:56:00s 0:04:00 - -Rule sol89 1989 only - Sep 14 11:55:35s 0:04:25 - -Rule sol89 1989 only - Sep 15 11:55:15s 0:04:45 - -Rule sol89 1989 only - Sep 16 11:54:55s 0:05:05 - -Rule sol89 1989 only - Sep 17 11:54:35s 0:05:25 - -Rule sol89 1989 only - Sep 18 11:54:10s 0:05:50 - -Rule sol89 1989 only - Sep 19 11:53:50s 0:06:10 - -Rule sol89 1989 only - Sep 20 11:53:30s 0:06:30 - -Rule sol89 1989 only - Sep 21 11:53:10s 0:06:50 - -Rule sol89 1989 only - Sep 22 11:52:45s 0:07:15 - -Rule sol89 1989 only - Sep 23 11:52:25s 0:07:35 - -Rule sol89 1989 only - Sep 24 11:52:05s 0:07:55 - -Rule sol89 1989 only - Sep 25 11:51:45s 0:08:15 - -Rule sol89 1989 only - Sep 26 11:51:25s 0:08:35 - -Rule sol89 1989 only - Sep 27 11:51:05s 0:08:55 - -Rule sol89 1989 only - Sep 28 11:50:40s 0:09:20 - -Rule sol89 1989 only - Sep 29 11:50:20s 0:09:40 - -Rule sol89 1989 only - Sep 30 11:50:00s 0:10:00 - -Rule sol89 1989 only - Oct 1 11:49:45s 0:10:15 - -Rule sol89 1989 only - Oct 2 11:49:25s 0:10:35 - -Rule sol89 1989 only - Oct 3 11:49:05s 0:10:55 - -Rule sol89 1989 only - Oct 4 11:48:45s 0:11:15 - -Rule sol89 1989 only - Oct 5 11:48:30s 0:11:30 - -Rule sol89 1989 only - Oct 6 11:48:10s 0:11:50 - -Rule sol89 1989 only - Oct 7 11:47:50s 0:12:10 - -Rule sol89 1989 only - Oct 8 11:47:35s 0:12:25 - -Rule sol89 1989 only - Oct 9 11:47:20s 0:12:40 - -Rule sol89 1989 only - Oct 10 11:47:00s 0:13:00 - -Rule sol89 1989 only - Oct 11 11:46:45s 0:13:15 - -Rule sol89 1989 only - Oct 12 11:46:30s 0:13:30 - -Rule sol89 1989 only - Oct 13 11:46:15s 0:13:45 - -Rule sol89 1989 only - Oct 14 11:46:00s 0:14:00 - -Rule sol89 1989 only - Oct 15 11:45:50s 0:14:10 - -Rule sol89 1989 only - Oct 16 11:45:35s 0:14:25 - -Rule sol89 1989 only - Oct 17 11:45:20s 0:14:40 - -Rule sol89 1989 only - Oct 18 11:45:10s 0:14:50 - -Rule sol89 1989 only - Oct 19 11:45:00s 0:15:00 - -Rule sol89 1989 only - Oct 20 11:44:50s 0:15:10 - -Rule sol89 1989 only - Oct 21 11:44:40s 0:15:20 - -Rule sol89 1989 only - Oct 22 11:44:30s 0:15:30 - -Rule sol89 1989 only - Oct 23 11:44:20s 0:15:40 - -Rule sol89 1989 only - Oct 24 11:44:10s 0:15:50 - -Rule sol89 1989 only - Oct 25 11:44:05s 0:15:55 - -Rule sol89 1989 only - Oct 26 11:44:00s 0:16:00 - -Rule sol89 1989 only - Oct 27 11:43:50s 0:16:10 - -Rule sol89 1989 only - Oct 28 11:43:45s 0:16:15 - -Rule sol89 1989 only - Oct 29 11:43:40s 0:16:20 - -Rule sol89 1989 only - Oct 30 11:43:40s 0:16:20 - -Rule sol89 1989 only - Oct 31 11:43:35s 0:16:25 - -Rule sol89 1989 only - Nov 1 11:43:35s 0:16:25 - -Rule sol89 1989 only - Nov 2 11:43:35s 0:16:25 - -Rule sol89 1989 only - Nov 3 11:43:30s 0:16:30 - -Rule sol89 1989 only - Nov 4 11:43:35s 0:16:25 - -Rule sol89 1989 only - Nov 5 11:43:35s 0:16:25 - -Rule sol89 1989 only - Nov 6 11:43:35s 0:16:25 - -Rule sol89 1989 only - Nov 7 11:43:40s 0:16:20 - -Rule sol89 1989 only - Nov 8 11:43:45s 0:16:15 - -Rule sol89 1989 only - Nov 9 11:43:50s 0:16:10 - -Rule sol89 1989 only - Nov 10 11:43:55s 0:16:05 - -Rule sol89 1989 only - Nov 11 11:44:00s 0:16:00 - -Rule sol89 1989 only - Nov 12 11:44:05s 0:15:55 - -Rule sol89 1989 only - Nov 13 11:44:15s 0:15:45 - -Rule sol89 1989 only - Nov 14 11:44:25s 0:15:35 - -Rule sol89 1989 only - Nov 15 11:44:35s 0:15:25 - -Rule sol89 1989 only - Nov 16 11:44:45s 0:15:15 - -Rule sol89 1989 only - Nov 17 11:44:55s 0:15:05 - -Rule sol89 1989 only - Nov 18 11:45:10s 0:14:50 - -Rule sol89 1989 only - Nov 19 11:45:20s 0:14:40 - -Rule sol89 1989 only - Nov 20 11:45:35s 0:14:25 - -Rule sol89 1989 only - Nov 21 11:45:50s 0:14:10 - -Rule sol89 1989 only - Nov 22 11:46:05s 0:13:55 - -Rule sol89 1989 only - Nov 23 11:46:25s 0:13:35 - -Rule sol89 1989 only - Nov 24 11:46:40s 0:13:20 - -Rule sol89 1989 only - Nov 25 11:47:00s 0:13:00 - -Rule sol89 1989 only - Nov 26 11:47:20s 0:12:40 - -Rule sol89 1989 only - Nov 27 11:47:35s 0:12:25 - -Rule sol89 1989 only - Nov 28 11:47:55s 0:12:05 - -Rule sol89 1989 only - Nov 29 11:48:20s 0:11:40 - -Rule sol89 1989 only - Nov 30 11:48:40s 0:11:20 - -Rule sol89 1989 only - Dec 1 11:49:00s 0:11:00 - -Rule sol89 1989 only - Dec 2 11:49:25s 0:10:35 - -Rule sol89 1989 only - Dec 3 11:49:50s 0:10:10 - -Rule sol89 1989 only - Dec 4 11:50:15s 0:09:45 - -Rule sol89 1989 only - Dec 5 11:50:35s 0:09:25 - -Rule sol89 1989 only - Dec 6 11:51:00s 0:09:00 - -Rule sol89 1989 only - Dec 7 11:51:30s 0:08:30 - -Rule sol89 1989 only - Dec 8 11:51:55s 0:08:05 - -Rule sol89 1989 only - Dec 9 11:52:20s 0:07:40 - -Rule sol89 1989 only - Dec 10 11:52:50s 0:07:10 - -Rule sol89 1989 only - Dec 11 11:53:15s 0:06:45 - -Rule sol89 1989 only - Dec 12 11:53:45s 0:06:15 - -Rule sol89 1989 only - Dec 13 11:54:10s 0:05:50 - -Rule sol89 1989 only - Dec 14 11:54:40s 0:05:20 - -Rule sol89 1989 only - Dec 15 11:55:10s 0:04:50 - -Rule sol89 1989 only - Dec 16 11:55:40s 0:04:20 - -Rule sol89 1989 only - Dec 17 11:56:05s 0:03:55 - -Rule sol89 1989 only - Dec 18 11:56:35s 0:03:25 - -Rule sol89 1989 only - Dec 19 11:57:05s 0:02:55 - -Rule sol89 1989 only - Dec 20 11:57:35s 0:02:25 - -Rule sol89 1989 only - Dec 21 11:58:05s 0:01:55 - -Rule sol89 1989 only - Dec 22 11:58:35s 0:01:25 - -Rule sol89 1989 only - Dec 23 11:59:05s 0:00:55 - -Rule sol89 1989 only - Dec 24 11:59:35s 0:00:25 - -Rule sol89 1989 only - Dec 25 12:00:05s -0:00:05 - -Rule sol89 1989 only - Dec 26 12:00:35s -0:00:35 - -Rule sol89 1989 only - Dec 27 12:01:05s -0:01:05 - -Rule sol89 1989 only - Dec 28 12:01:35s -0:01:35 - -Rule sol89 1989 only - Dec 29 12:02:00s -0:02:00 - -Rule sol89 1989 only - Dec 30 12:02:30s -0:02:30 - -Rule sol89 1989 only - Dec 31 12:03:00s -0:03:00 - - -# Riyadh is at about 46 degrees 46 minutes East: 3 hrs, 7 mins, 4 secs -# Before and after 1989, we'll operate on local mean solar time. - -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -Zone Mideast/Riyadh89 3:07:04 - ?? 1989 - 3:07:04 sol89 ?? 1990 - 3:07:04 - ?? diff --git a/share/zoneinfo/datfiles/southamerica b/share/zoneinfo/datfiles/southamerica deleted file mode 100644 index abab105..0000000 --- a/share/zoneinfo/datfiles/southamerica +++ /dev/null @@ -1,103 +0,0 @@ -# @(#)southamerica 4.3 - -# From Guy Harris: -# From Official Airline Guide - Worldwide Edition (1987). Countries not -# listed here do not observe DST, according to the OAG. Time zone names -# are pure inventions, and none are supplied for countries not observing -# DST; updates from natives would be appreciated. The times that DST -# starts and ends are based on the assumption that they switch a 2AM just -# as everybody else does. - -############################################################################### - -# Brazil - -# From Guy Harris: -# The OAG lists October 25, 1987 and February 12, 1988 as the starting and -# ending dates, giving them as "estimated date(s) based on previous year". We -# infer a rule here from one example, always a dangerous practice.... Yes, -# they really do switch on Saturday, according to the OAG. -# "Brazil/Acre" is for the Territory of Acre; "Brazil/DeNoronha" is for -# Fernando De Noronha. - -# From Bob Devine (January 28, 1988): -# The only information I found is that there was no DST up to 1985. -# But there was some before 1952! - -# From U. S. Naval Observatory (January 16, 1989): -# BRAZIL WEST 5 H BEHIND UTC TERRITORY OF ACRE -# BRAZIL WEST 4 H BEHIND UTC ACRE OCT 23, '88-FEB 11, -# BRAZIL '89 (ESTIMATED) -# BRAZIL CENTRAL 4 H BEHIND UTC MANAUS -# BRAZIL CENTRAL 3 H BEHIND UTC MANAUS OCT 23, '88-FEB 11, -# BRAZIL CENTRAL '89 (ESTIMATED) -# BRAZIL EAST 3 H BEHIND UTC COASTAL STATES, RIO, SAO -# BRAZIL EAST PAULO, BRASILIA -# BRAZIL EAST 2 H BEHIND UTC COASTAL STATES, RIO, SAO -# BRAZIL PAULO, BRASILIA OCT 23, -# BRAZIL '88-FEB 11, '89 -# BRAZIL (ESTIMATED) -# BRAZIL 2 H BEHIND UTC ATLANTIC ISLANDS, FERNANDO -# BRAZIL DE NORONHA -# BRAZIL 1 H BEHIND UTC OCT 23, '88-FEB 11, '89 -# BRAZIL (ESTIMATED) -# BRAZIL 3 H BEHIND UTC FOR MOST MAJOR AIRPORTS. - -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule Brazil 1987 max - Feb Sat<=14 2:00 0 S -Rule Brazil 1987 max - Oct Sat<=28 2:00 1:00 D - -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -Zone Brazil/East -3:00 Brazil E%sT -Zone Brazil/West -4:00 Brazil W%sT -Zone Brazil/Acre -5:00 Brazil A%sT -Zone Brazil/DeNoronha -2:00 Brazil F%sT - -############################################################################### - -# Chile - -# From Guy Harris: -# The OAG lists October 11, 1987 and March 12, 1988 as the starting and -# ending dates, giving them as "estimated date(s) based on previous year." - -# From Bob Devine (January 28, 1988): -# Chile has had 2nd Sunday in October to 2nd Sunday in March DST since 1977. -# Switch is at midnight. OAG is right. - -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule Chile 1977 max - Oct Sun>=8 0:00 1:00 D -Rule Chile 1978 max - Mar Sun>=8 0:00 0 S - -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -Zone Chile/Continental -4:00 Chile C%sT -Zone Chile/EasterIsland -6:00 Chile E%sT - -############################################################################### - -# Paraguay - -# From Bob Devine (January 28, 1988): -# Paraguay: First day in October to last in March. Midnight switch?? -# Since 1980. - -# From U. S. Naval Observatory (January 19, 1989): -# PARAGUAY 4 H BEHIND UTC -# PARAGUAY 3 H BEHIND UTC OCT 1, '88-MAR 31, '89 - -# From Arthur David Olson (January 21, 1989): -# Still don't know time of day when switch occurs. Punt. - -############################################################################### - -# Argentina - -# From Bob Devine (January 28, 1988): -# Argentina: first Sunday in October to first Sunday in April since 1976. -# Double Summer time from 1969 to 1974. Switches at midnight. - -# From U. S. Naval Observatory (January 19, 19889): -# ARGENTINA 3 H BEHIND UTC - -# From Arthur David Olson (January 21, 1989): -# OAG, USNO and Bob have different data. Punt. diff --git a/share/zoneinfo/datfiles/systemv b/share/zoneinfo/datfiles/systemv deleted file mode 100644 index 8dc7bed..0000000 --- a/share/zoneinfo/datfiles/systemv +++ /dev/null @@ -1,35 +0,0 @@ -# @(#)systemv 4.1 - -# Old rules, should the need arise. -# No attempt is made to handle Newfoundland, since it cannot be expressed -# using the System V "TZ" scheme (half-hour offset), or anything outside -# North America (no support for non-standard DST start/end dates), nor -# the change in the DST rules in the US in 1987 (can't split between -# Canada, with no changes, and the US) -# -# Be sure to compile this *without* leap second correction for true conformance. - -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule SystemV min 1973 - Apr lastSun 2:00 1:00 D -Rule SystemV min 1973 - Oct lastSun 2:00 0 S -Rule SystemV 1974 only - Jan 6 2:00 1:00 D -Rule SystemV 1974 only - Nov lastSun 2:00 0 S -Rule SystemV 1975 only - Feb 23 2:00 1:00 D -Rule SystemV 1975 only - Oct lastSun 2:00 0 S -Rule SystemV 1976 max - Apr lastSun 2:00 1:00 D -Rule SystemV 1976 max - Oct lastSun 2:00 0 S - -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -Zone SystemV/AST4ADT -4:00 SystemV A%sT -Zone SystemV/EST5EDT -5:00 SystemV E%sT -Zone SystemV/CST6CDT -6:00 SystemV C%sT -Zone SystemV/MST7MDT -7:00 SystemV M%sT -Zone SystemV/PST8PDT -8:00 SystemV P%sT -Zone SystemV/YST9YDT -9:00 SystemV Y%sT -Zone SystemV/AST4 -4:00 - AST -Zone SystemV/EST5 -5:00 - EST -Zone SystemV/CST6 -6:00 - CST -Zone SystemV/MST7 -7:00 - MST -Zone SystemV/PST8 -8:00 - PST -Zone SystemV/YST9 -9:00 - YST -Zone SystemV/HST10 -10:00 - HST diff --git a/share/zoneinfo/datfiles/usno1988 b/share/zoneinfo/datfiles/usno1988 deleted file mode 100644 index 12d14ce..0000000 --- a/share/zoneinfo/datfiles/usno1988 +++ /dev/null @@ -1,111 +0,0 @@ -# @(#)usno1988 1.1 -# -# From Arthur David Olson (January 19, 1989): -# -# Here's some United States Naval Observatory time zone data from -# February 1988. It's here mostly to convince you that the USNO has indeed -# been updating its files (see its 1989 data elsewhere). -# -ANDORRA 1 H AHEAD OF UTC -ARGENTINA 3 H BEHIND UTC -BRASIL WEST 5 H BEHIND UTC (CRUZEIRO DO SUL) -BRASIL CENTRAL 4 H BEHIND UTC (MANAUS) -BRASIL EAST 3 H BEHIND UTC COASTAL STATES, RIO, SP, BRASILIA -BRASIL 2 H BEHIND UTC ATLANTIC ISLANDS -BRAZIL 5 H BEHIND UTC WEST (CRUZEIRO DO SUL) -BRAZIL 4 H BEHIND UTC CENTRAL (MANAUS) -BRAZIL 3 H BEHIND UTC COASTAL STATES, RIO, SP, BRASILIA -BRAZIL 3 H BEHIND UTC FOR MOST MAJOR AIRPORTS. -BRAZIL 2 H BEHIND UTC ATLANTIC ISLANDS -BULGARIA 2 H AHEAD OF UTC WINTER -BULGARIA 3 H AHEAD OF UTC SUMMER MAR31 - SEP 85, 0100 LOCAL -CHINA 8 H AHEAD OF UTC; ALL OF CHINA, INCL TAIWAN -CUBA 5 H BEHIND UTC IN WINTER -CUBA 4 H BEHIND UTC MAY 8 - OCT 8 -CYPRUS 2 H AHEAD UTC IN WINTER -CYPRUS 3 H AHEAD UTC MAR 25 - SEP 30 -DENMARK 1 H AHEAD UTC IN WINTER -DENMARK 2 H AHEAD UTC MAR 31 - SEP 30 , 0200 LOCAL -DENMK. FAEROE IS 1 H AHEAD UTC MAR 31 - SEP 30 , 0200 LOCAL -EGYPT 2 H AHEAD UTC -EGYPT 3 H AHEAD UTC SUMMER (AFTER RAMADAN) -ENGLAND ON UTC IN WINTER; WALES, SCOTLAND, N.I., CH.IS. -ENGLAND 1 H AHEAD OF UTC; SUMMER TIL 28 OCT 0200 LOCAL -FINLAND 2 H AHEAD OF UTC IN WINTER -FINLAND 3 H AHEAD OF UTC MAR 25 - SEP 30 -FRANCE 1 H AHEAD OF UTC IN WINTER -FRANCE 2 H AHEAD OF UTC MAR 31 - SEP 30 , 0100 LOCAL -GREECE 2 H AHEAD OF UTC IN WINTER -GREECE 3 H AHEAD OF UTC IN SUMMER EFF. 31MAR85 02/03 LOCAL -GREECE 3 H AHEAD OF UTC MAR 25 - SEP 30 -GREENLAND 4 H BEHIND UTC IN THULE AIRBASE YEAR ROUND -GREENLAND 3 H BEHIND UTC IN WINTER AT SONDRESTROM -GREENLAND 2 H BEHIND UTC 30 MAR - 30 SEP 2200 LOCAL AT -"- -GREENLAND 2 H BEHIND UTC AROUND SCORESBY SUND -ICELAND ON UTC -IRAN 3.5H AHEAD OF UTC -IRELAND ON UTC IN WINTER -IRELAND 1 H AHEAD OF UTC MAR 31 - OCT 23 0200 LOCAL -ITALY 1 H AHEAD OF UTC IN WINTER -ITALY 2 H AHEAD OF UTC MAR 31 - SEP 30, 0030 LOCAL -JAMAICA 5 H BEHIND UTC IN WINTER -JAMAICA 4 H BEHIND UTC APR 29 - OCT 29 -LIBYA 2 H AHEAD OF UTC -MEXICO BAJA CAL N 8 H BEHIND UTC IN WINTER; NORTH BAJA CAL, TIJUANA -MEXICO BAJA CAL N 7 H BEHIND UTC APR 29 - OCT 29 -MEXICO BAJA CAL S 7 H BEHIND UTC ALL YEAR; MAZATLAN -MEXICO CENTRAL 6 H BEHIND UTC ALL YEAR; MEXICO CITY -MONACO 1 H AHEAD UTC IN WINTER -MONACO 2 H AHEAD UTC MAR 25 - SEP30 -PARAGUAY 4 H BEHIND UTC IN WINTER -PARAGUAY 3 H BEHIND UTC SEP 30 - MAR 30 -POLAND 1 H AHEAD OF UTC IN WINTER -POLAND 2 H AHEAD OF UTC MAR 24 - SEP 0200 LOCAL -PORTUGAL ON UTC IN WINTER -PORTUGAL 1 H AHEAD OF UTC IN SUMMER MAR 31 - SEP 29 0100 LOCAL -PORTUGAL AZORES 1 H BEHIND UTC IN WINTER -PORTUGAL AZORES ON UTC IN SUMMER MAR 31 - SEP 29 -PORTUGAL MADEIRA ON UTC ALL YEAR; -ROMANIA 2 H AHEAD OF UTC IN WINTER -ROMANIA 3 H AHEAD OF UTC APR 3 - SEP 24 -SCOTLAND SEE ENGLAND -SWITZERLAND 1 H AHEAD OF UTC IN WINTER -SWITZERLAND 2 H AHEAD OF UTC MAR 31 - SEP 30 0200 LOCAL -TURKEY 3 H AHEAD OF UTC -USA EASTERN 5 H BEHIND UTC IN WINTER; NEW YORK, WASHINGTON -USA EASTERN 4 H BEHIND UTC APR 29 - OCT 29 -USA CENTRAL 6 H BEHIND UTC IN WINTER; CHICAGO, HOUSTON -USA CENTRAL 5 H BEHIND UTC APR 29 - OCT 29 -USA MOUNTAIN 7 H BEHIND UTC IN WINTER; DENVER -USA MOUNTAIN 6 H BEHIND UTC APR 29 - OCT 29 -USA PACIFIC 8 H BEHIND UTC IN WINTER; L.A., SAN FRANCISCO -USA PACIFIC 7 H BEHIND UTC APR 29 - OCT 29 -USA ALASKA STD 9 H BEHIND UTC IN WINTER; MOST OF ALASKA (AKST) -USA ALASKA STD 8 H BEHIND UTC APR 29 - OCT 29 (AKDT) -USA ALEUTIAN 10 H BEHIND UTC IN WINTER; ISLANDS WEST OF 170W -USA - " - 9 H BEHIND UTC APR 29 - OCT 29 -USA HAWAII 10 H BEHIND UTC ALL YEAR; -USA BERING 11 H BEHIND UTC ALL YEAR; SAMOA, MIDWAY -USSR WEST EUROP 3 H AHEAD OF UTC IN WINTER; LENINGRAD, MOSCOW -USSR WEST EUROP 4 H AHEAD OF UTC APR 1 - SEP 30 -USSR CENTRAL EUR 4 H AHEAD OF UTC IN WINTER; ROSTOV, BAKU -USSR CENTRAL EUR 5 H AHEAD OF UTC APR 1 - SEP 30 -USSR EAST EUROP 5 H AHEAD OF UTC IN WINTER; SVERDLOVSK -USSR EAST EUROP 6 H AHEAD OF UTC APR 1 - SEP 30 -USSR WEST SIBERIAN 6 H AHEAD OF UTC IN WINTER; TASHKENT, ALMA ATA -USSR WEST SIBERIAN 7 H AHEAD OF UTC APR 1 - SEP 30 -USSR WEST-CENTRAL 7 H AHEAD OF UTC IN WINTER; NOVOSIBIRSK -USSR WEST-CENTRAL 8 H AHEAD OF UTC APR 1 - SEP 30 -USSR WEST-CENTRAL 8 H AHEAD OF UTC IN WINTER; IRKUTSK -USSR WEST-CENTRAL 9 H AHEAD OF UTC APR 1 - SEP 30 -USSR CENTRAL SIB 9 H AHEAD OF UTC IN WINTER; YAKUTSK -USSR CENTRAL SIB 10 H AHEAD OF UTC APR 1 - SEP 30 -USSR CENTRAL SIB 10 H AHEAD OF UTC IN WINTER; VLADIVOSTOK -USSR CENTRAL SIB 11 H AHEAD OF UTC APR 1 - SEP 30 -USSR EAST SIBERIA 11 H AHEAD OF UTC IN WINTER; MAGADAN -USSR EAST SIBERIA 12 H AHEAD OF UTC APR 1 - SEP 30 -USSR EAST SIBERIA 12 H AHEAD OF UTC IN WINTER; PETROPAVLOVSK -USSR EAST SIBERIA 13 H AHEAD OF UTC APR 1 - SEP 30 -USSR EAST SIBERIA 13 H AHEAD OF UTC IN WINTER; UELEN -USSR EAST SIBERIA 14 H AHEAD OF UTC APR 1 - SEP 30 -WALES SEE ENGLAND diff --git a/share/zoneinfo/datfiles/usno1989 b/share/zoneinfo/datfiles/usno1989 deleted file mode 100644 index 82cc386..0000000 --- a/share/zoneinfo/datfiles/usno1989 +++ /dev/null @@ -1,452 +0,0 @@ -# @(#)usno1989 1.3 -# -# From Arthur David Olson (January 19, 1989): -# -# Here's time zone information from the United States Naval Observatory; -# no corrections have been made, and there are some obvious challenges. -# The USNO warns: -# DUE TO FREQUENT CHANGES IN THE LOCAL LAWS GOVERNING DAYLIGHT -# SAVING TIME, WE CANNOT GUARANTEE THE ACCURACY OF THIS -# INFORMATION. PLEASE ALERT US TO ANY DISCREPANCY YOU MAY -# DISCOVER. -# -AFGHANISTAN 4.5H AHEAD OF UTC -ALBANIA 1 H AHEAD OF UTC -ALBANIA 2 H AHEAD OF UTC MAR 27 - SEP 24 -ALBANIA (ESTIMATED) -ALGERIA 1 H AHEAD OF UTC -AMERICAN SAMOA 11 H BEHIND UTC -ANDORRA 1 H AHEAD OF UTC -ANDORRA 2 H AHEAD OF UTC MAR 27 - SEP 24 -ANDORRA (ESTIMATED) -ANGOLA 1 H AHEAD OF UTC -ARGENTINA 3 H BEHIND UTC -ARUBA 4 H BEHIND UTC ALSO BONAIRE, CURACAO, -ARUBA ST.MAARTEN -AUSTRALIA WEST 8 H AHEAD OF UTC PERTH, EXMOUTH -AUSTRALIA N.T. 9.5H AHEAD OF UTC DARWIN NO ADVANCED TIME -AUSTRALIA N.T. IN SUMMER -AUSTRALIA SOUTH 9.5H AHEAD OF UTC ADELAIDE -AUSTRALIA INCLUDING BROKEN HILL, NSW -AUSTRALIA SOUTH 10.5H AHEAD OF UTC ADELAIDE OCT 30, '88-MAR -AUSTRALIA SOUTH 18, '89 INCLUDING BROKEN -AUSTRIALIA SOUTH HILL, NSW -AUSTRALIA QUEENL 10 H AHEAD OF UTC -AUSTRALIA NSW 10 H AHEAD OF UTC SYDNEY -AUSTRALIA NSW 11 H AHEAD OF UTC SYDNEY OCT 30, '88-MAR 18, -AUSTRALIA NSW '89 -AUSTRALIA TASM. 10 H AHEAD OF UTC HOBART -AUSTRALIA TASM. 11 H AHEAD OF UTC HOBART OCT 30, '88-MAR 18, -AUSTRALIA TASM. '89 -AUSTRIA 1 H AHEAD OF UTC -AUSTRIA 2 H AHEAD OF UTC MAR 27 - SEPT 24 -AZORES SEE PORTUGAL -BAHAMAS 5 H BEHIND UTC EXCLUDING TURKS AND CAICOS -BAHAMAS ISLANDS) -BAHAMAS 4 H BEHIND UTC APR 3 - OCT 29 (SAME -BAHAMAS EXCLUSION) -BAHRAIN 3 H AHEAD OF UTC -BANGLADESH 6 H AHEAD OF UTC -BARBADOS 4 H BEHIND UTC -BELGIUM 1 H AHEAD OF UTC -BELGIUM 2 H AHEAD OF UTC MAR 27 - SEP 24 -BELIZE 6 H BEHIND UTC -BENIN PEOPLES REP 1 H AHEAD OF UTC DAHOMEY -BERMUDA 4 H BEHIND UTC -BERMUDA 3 H BEHIND UTC APR 3 - OCT 29 -BHUTAN 6 H AHEAD OF UTC -BOLIVIA 4 H BEHIND UTC -BONAIRE 4 H BEHIND UTC ALSO ARUBA,CURACAO, -BONAIRE ST.MAARTEN, SABA -BOTSWANA 2 H AHEAD OF UTC -BRAZIL WEST 5 H BEHIND UTC TERRITORY OF ACRE -BRAZIL WEST 4 H BEHIND UTC ACRE OCT 23, '88-FEB 11, -BRAZIL '89 (ESTIMATED) -BRAZIL CENTRAL 4 H BEHIND UTC MANAUS -BRAZIL CENTRAL 3 H BEHIND UTC MANAUS OCT 23, '88-FEB 11, -BRAZIL CENTRAL '89 (ESTIMATED) -BRAZIL EAST 3 H BEHIND UTC COASTAL STATES, RIO, SAO -BRAZIL EAST PAULO, BRASILIA -BRAZIL EAST 2 H BEHIND UTC COASTAL STATES, RIO, SAO -BRAZIL PAULO, BRASILIA OCT 23, -BRAZIL '88-FEB 11, '89 -BRAZIL (ESTIMATED) -BRAZIL 2 H BEHIND UTC ATLANTIC ISLANDS, FERNANDO -BRAZIL DE NORONHA -BRAZIL 1 H BEHIND UTC OCT 23, '88-FEB 11, '89 -BRAZIL (ESTIMATED) -BRAZIL 3 H BEHIND UTC FOR MOST MAJOR AIRPORTS. -BRITISH VIRGIN I. 4 H BEHIND UTC -BRUNEI 8 H AHEAD OF UTC -BULGARIA 2 H AHEAD OF UTC -BULGARIA 3 H AHEAD OF UTC MAR 27 - SEP 24 -BURKINA FASO ON UTC -BURMA 6.5H AHEAD OF UTC -BURUNDI 2 H AHEAD OF UTC -CAMBODIA SEE KAMPUCHEA -CAMEROON 1 H AHEAD OF UTC -CANADA NEW FDL 3.5H BEHIND UTC ST.JOHN'S -CANADA NEW FDL 1.5H BEHIND UTC APR 3 - OCT 29 -CANADA ATLANTIC 4 H BEHIND UTC HALIFAX -CANADA ATLANTIC 3 H BEHIND UTC APR 3 - OCT 29 -CANADA EASTERN 5 H BEHIND UTC TORONTO, MONTREAL, OTTAWA -CANADA EASTERN 4 H BEHIND UTC APR 3 - OCT 29 -CANADA CENTRAL 6 H BEHIND UTC REGINA, WINNIPEG -CANADA CENTRAL 5 H BEHIND UTC APR 3 - OCT 29 -CANADA MOUNTAIN 7 H BEHIND UTC CALGARY, EDMONTON -CANADA MOUNTAIN 6 H BEHIND UTC APR 3 - OCT 29 -CANADA PACIFIC 8 H BEHIND UTC VANCOUVER -CANADA PACIFIC 7 H BEHIND UTC APR 3 - OCT 29 -CANADA YUKON SAME AS PACIFIC DAWSON -CAPE VERDE 1 H BEHIND UTC -CAYMAN ISLANDS 5 H BEHIND UTC -CAROLINE ISLAND 10 H AHEAD OF UTC EXCLUDING PONAPE IS., -CAROLINE ISLAND KUSAIE, AND PINGELAP -CENTRAL AFRICA 1 H AHEAD OF UTC -CEYLON 5.5H AHEAD OF UTC, SEE SRI LANKA -CHAD 1 H AHEAD OF UTC -CHANNEL ISLANDS SEE ENGLAND -CHILE 4 H BEHIND UTC CONTINENTAL -CHILE 3 H BEHIND UTC OCT 9, '88-MAR 11, '89 -CHILE 6 H BEHIND UTC EASTER ISLAND -CHILE 5 H BEHIND UTC OCT 9, '88-MAR 11, '89 -CHINA 8 H AHEAD OF UTC ALL OF CHINA, INCL TAIWAN -CHINA 9 H AHEAD OF UTC APR 17 - SEP 10 -COCOS (Keeling) I. 6.5H AHEAD OF UTC -COLOMBIA 5 H BEHIND UTC -COMOROS 3 H AHEAD OF UTC -CONGO 1 H AHEAD OF UTC -COOK ISLANDS 10 H BEHIND UTC -COOK ISLANDS 9.5H BEHIND UTC OCT 30, '88-MAR 24, '89 -COOK ISLANDS (ESTIMATED) -COSTA RICA 6 H BEHIND UTC -COTE D'IVOIRE ON UTC -CUBA 5 H BEHIND UTC -CUBA 4 H BEHIND UTC MAR 20 - OCT 8 -CURACAO 4 H BEHIND UTC ALSO BONAIRE, ARUBA, -CURACAO ST.MAARTEN -CYPRUS 2 H AHEAD OF UTC -CYPRUS 3 H AHEAD OF UTC MAR 27 - SEP 24 -CZECHOSLOVAKIA 1 H AHEAD OF UTC -CZECHOSLOVAKIA 2 H AHEAD OF UTC MAR 27 - SEP 24 -DENMARK 1 H AHEAD OF UTC -DENMARK 2 H AHEAD OF UTC MAR 27 - SEP 24 -DENMK. FAEROE IS 1 H AHEAD OF UTC MAR 27 - SEP 24 -DJIBOUTI 3 H AHEAD OF UTC -DOMINICA 4 H BEHIND UTC -DOMINICAN REP 4 H BEHIND UTC -ECUADOR 5 H BEHIND UTC CONTINENTAL -ECUADOR 6 H BEHIND UTC GALAPAGOS ISLANDS -EGYPT 2 H AHEAD OF UTC -EGYPT 3 H AHEAD OF UTC MAY 17 - SEP 30 (AFTER -EGYPT RAMADAN) -EL SALVADOR 6 H BEHIND UTC -ENGLAND ON UTC (WALES, SCOTLAND, N.I., -ENGLAND CH. IS.) -ENGLAND 1 H AHEAD OF UTC MAR 27 - OCT 22 -ENEZUELA 4 H BEHIND UTC -EQUITORIAL GUINEA 1 H AHEAD OF UTC -ETHIOPIA 3 H AHEAD OF UTC -FALKLAND ISLANDS 4 H BEHIND UTC -FALKLAND ISLANDS 3 H BEHIND UTC SEP 11, '88-APR 15, '89 -FALKLAND ISLANDS (ESTIMATED) -FAROE ISLAND ON UTC -FAROE ISLAND 1 H AHEAD OF UTC MAR 27 - SEP 24 -FIJI 12 H AHEAD OF UTC -FINLAND 2 H AHEAD OF UTC -FINLAND 3 H AHEAD OF UTC MAR 27 - SEP 24 -FRANCE 1 H AHEAD OF UTC -FRANCE 2 H AHEAD OF UTC MAR 27 - SEP 24 -FRENCH GUIANA 3 H BEHIND UTC -FRENCH POLYNESIA 9 H BEHIND UTC GAMBIER ISLAND -FRENCH POLYNESIA 9.5H BEHIND UTC MARQUESAS ISLANDS -FRENCH POLYNESIA 10 H BEHIND UTC SOCIETY ISLANDS, TUBUAI -FRENCH POLYNESIA ISLANDS, TUAMOTU ISLAND, -FRENCH POLYNESIA TAHITI -GABON 1 H AHEAD OF UTC -GAMBIA ON UTC -GERMANY ALL 1 H AHEAD OF UTC -GERMANY ALL 2 H AHEAD OF UTC MAR 27 - SEP 24 -GHANA ON UTC -GIBRALTAR 1 H AHEAD OF UTC -GIBRALTAR 2 H AHEAD OF UTC MAR 27 - SEP 24 -GREECE 2 H AHEAD OF UTC -GREECE 3 H AHEAD OF UTC MAR 27 - SEP 24 -GREENLAND 4 H BEHIND UTC THULE AIRBASE YEAR ROUND -GREENLAND 3 H BEHIND UTC ANGMAGSSALIK AND W. COAST -GREENLAND 2 H BEHIND UTC MAR 27 - SEP 24 -GREENLAND 1 H BEHIND UTC SCORESBYSUND -GREENLAND ON UTC MAR 27 - SEP 24 -GRENADA 4 H BEHIND UTC -GUADELOUPE 4 H BEHIND UTC ST. BARTHELEMY, NORTHERN -GUADELOUPE ST. MARTIN MARTINIQUE -GUAM 10 H AHEAD OF UTC -GUATEMALA 6 H BEHIND UTC -GUINEA ON UTC -GUINEA BISSAU ON UTC -GUINEA REPUBLIC ON UTC -GUINEA EQUATORIAL 1 H AHEAD OF UTC -GUYANA 3 H BEHIND UTC -HAITI 5 H BEHIND UTC -HAITI 4 H BEHIND UTC APR 3 - OCT 29 -HOLLAND SEE NETHERLANDS -HONDURAS 6 H BEHIND UTC -HONG KONG 8 H AHEAD OF UTC -HUNGARY 1 H AHEAD OF UTC -HUNGARY 2 H AHEAD OF UTC MAR 27 - SEP 24 -ICELAND ON UTC -INDIA 5.5H AHEAD OF UTC INCLUDING ANDAMAN ISLANDS -INDONESIA WEST 7 H AHEAD OF UTC SUMATRA, JAVA, BALI, -INDONESIA WEST JAKARTA -INDONESIA CENTRAL 8 H AHEAD OF UTC KALIMANTAN, SULAWESI -INDONESIA EAST 9 H AHEAD OF UTC IRIAN, BARAT -IRAN 3.5H AHEAD OF UTC -IRAQ 3 H AHEAD OF UTC -IRAQ 4 H AHEAD OF UTC APR 1 - SEP 30 -IRELAND ON UTC -IRELAND 1 H AHEAD OF UTC MAR 27 - OCT 22 -ISRAEL 2 H AHEAD OF UTC -ISRAEL 3 H AHEAD OF UTC APR 10 - SEP 3 -ITALY 1 H AHEAD OF UTC -ITALY 2 H AHEAD OF UTC MAR 27 - SEP 24 -IVORY COAST ON UTC -IWAN 8 H AHEAD OF UTC -JAMAICA 5 H BEHIND UTC -JAPAN 9 H AHEAD OF UTC -JOHNSTON ISLAND 10 H BEHIND UTC -JORDAN 2 H AHEAD OF UTC -JORDAN 3 H AHEAD OF UTC APR 1 - OCT 6 -KAMPUCHEA 7 H AHEAD OF UTC -KENYA 3 H AHEAD OF UTC -KIRIBATI, REP OF 12 H AHEAD OF UTC CANTON, ENDERBURY ISLANDS -KIRIBATI, REP OF 11 H AHEAD OF UTC CHRISTMAS ISLAND -KOREA 9 H AHEAD OF UTC -KOREA, REP OF 9 H AHEAD OF UTC -KOREA, REP OF 10 H AHEAD OF UTC MAY 8 - OCT 8 -KUWAIT 3 H AHEAD OF UTC -KUSAIE, PINGELAP 12 H AHEAD OF UTC INCLUDING MARSHALL IS., -KUSAIE, PINGELAP EXCLUDING KWAJALEIN) -KWAJALEIN 12 H BEHIND UTC -LAOS 7 H AHEAD OF UTC -LEBANON 2 H AHEAD OF UTC -LEBANON 3 H AHEAD OF UTC JUN 1 - OCT 31 -LEEWARD ISLANDS 4 H BEHIND UTC ANTIGUA, DOMINICA, -LEEWARD ISLANDS MONTSERRAT, ST. -LEEWARD ISLAANDS CHRISTOPHER, ST. KITTS, -LEEWARD ISLANDS NEVIS, ANGUILLA -LESOTHO 2 H AHEAD OF UTC -LIBERIA ON UTC -LIBYAN ARAB 1 H AHEAD OF UTC JAMAHIRIYA/LIBYA -LIBYAN ARAB 2 H AHEAD OF UTC APR 1 - SEP 30 JAMAHIRIYA/LIBYA -LIECHTENSTEIN 1 H AHEAD OF UTC -LIECHTENSTEIN 2 H AHEAD OF UTC MAR 27 - SEP 24 -LUXEMBOURG 1 H AHEAD OF UTC -LUXEMBOURG 2 H AHEAD OF UTC MAR 27 - SEP 24 -MACAO 8 H AHEAD OF UTC -MADAGASCAR 3 H AHEAD OF UTC -MADEIRA SEE PORTUGAL -MALAWI 2 H AHEAD OF UTC -MALAYSIA 8 H AHEAD OF UTC -MALDIVES 5 H AHEAD OF UTC -MALI ON UTC -MALTA 1 H AHEAD OF UTC -MALTA 2 H AHEAD OF UTC MAR 27 - SEP 24 -MARTINIQUE 4 H BEHIND UTC -MAURITANIA ON UTC -MAURITIUS 4 H AHEAD OF UTC -MARIANA ISLAND 10 H AHEAD OF UTC EXCLUDING GUAM -MEXICO BAJA CAL N 7 H BEHIND UTC BAJA CALIFORNIA SUR AND -MEXICO BAJA CAL N N. PACIFIC COAST (STATES -MEXICO BAJA CAL N OF SINALOA AND SONORA) -MEXICO BAJA CAL N 8 H BEHIND UTC ABOVE 28TH PARALLAL APR 3 -MEXICO BAJA CAL N - OCT 29 -MEXICO BAJA CAL N 7 H BEHIND UTC ABOVE 28TH PARALLAL APR 3 -MEXICO BAJA CAL N - 0CT 29 -MEXICO 6 H BEHIND UTC STATES OF DURANGO, -MEXICO COAHUILA, NUEVO LEON, -MEXICO TAMAULIPAS -MEXICO 5 H BEHIND UTC STATES OF DURANGO, -MEXICO COAHUILA, NUEVO LEON, -MEXICO TAMAULIPAS APR 3 - OCT 29 -MEXICO 6 H BEHIND UTC GENERAL MEXICO, STATES OF -MEXICO CAMPECHE, QUINTANA ROO AND -MEXICO YUCATAN -MIDWAY ISLAND 11 H BEHIND UTC -MONACO 1 H AHEAD OF UTC -MONACO 2 H AHEAD OF UTC MAR 27 - SEP 24 -MONGOLIA 8 H AHEAD OF UTC -MONGOLIA 9 H AHEAD OF UTC MAR 27 - SEP 24 -MONTSERRAT 4 H BEHIND UTC -MOROCCO ON UTC -MOZAMBIQUE 2 H AHEAD OF UTC -NAMIBIA 2 H AHEAD OF UTC -NAURU, REP OF 12 H AHEAD OF UTC -NEPAL 5H45M AHEAD OF UTC -NETHERLANDS 1 H AHEAD OF UTC -NETHERLANDS 2 H AHEAD OF UTC MAR 27 - SEP 24 -NETHERLANDS 4 H BEHIND UTC ANTILLES AND SOUTHERN ST. -NETHERLANDS MAARTEN -NEW CALEDONIA 11 H AHEAD OF UTC -NEW HEBRIDES SEE VANUATU -NEW ZEALAND 12 H AHEAD OF UTC (EXCLUDING CHATHAM ISLAND) -NEW ZEALAND 13 H AHEAD OF UTC OCT 30, '88-MAR 4, '89 -NEW ZEALAND 12H45M AHEAD OF UTC CHATHAM ISLAND -NICARAGUA 6 H BEHIND UTC -NIGER 1 H AHEAD OF UTC -NIGERIA 1 H AHEAD OF UTC -NIUE ISLAND 11 H BEHIND UTC -NORFOLK ISLAND 11H30M AHEAD OF UTC -NORTHERN IRELAND ON UTC WALES, SCOTLAND, N.I., -NORTHERN IRELAND CH.IS. -NORTHERN IRELAND 1 H AHEAD OF UTC MAR 27 - OCT 22 -NORWAY 1 H AHEAD OF UTC -NORWAY 2 H AHEAD OF UTC MAR 27 - SEP 24 -OGO ON UTC -OMAN 4 H AHEAD OF UTC -PACIFIC ISLAND T.T. -PALAU ISLAND 9 H AHEAD OF UTC -PAKISTAN 5 H AHEAD OF UTC -PANAMA 5 H BEHIND UTC -PAPUA NEW GUINEA 10 H AHEAD OF UTC INCLUDING BOUGAINVILLE -PAPUA NEW GUINEA ISLAND -PARAGUAY 4 H BEHIND UTC -PARAGUAY 3 H BEHIND UTC OCT 1, '88-MAR 31, '89 -PERU 5 H BEHIND UTC -PHILIPPINES 8 H AHEAD OF UTC -PONAPE ISLAND 11 H AHEAD OF UTC -POLAND 1 H AHEAD OF UTC -POLAND 2 H AHEAD OF UTC MAR 27 - SEP 24 -PORTUGAL MAINLAND ON UTC -PORTUGAL MAINLAND 1 H AHEAD OF UTC MAR 27 - SEP 24 -PORTUGAL AZORES 1 H BEHIND UTC -PORTUGAL AZORES ON UTC MAR 27 - SEP 24 -PORTUGAL MADEIRA ON UTC -PORTUGAL MADEIRA 1 H AHEAD OF UTC MAR 27 - SEP 24 -PUERTO RICO 4 H BEHIND UTC -QATAR 3 H AHEAD OF UTC -ROMANIA 2 H AHEAD OF UTC -ROMANIA 3 H AHEAD OF UTC MAR 27 - SEP 24 -RUSSIA SEE USSR -RWANDA 2 H AHEAD OF UTC -SABA 4 H BEHIND UTC ALSO BONAIRE, CURACAO, -SAMOA 11 H BEHIND UTC -SAN MARINO 1 H AHEAD OF UTC -SAN MARINO 2 H AHEAD OF UTC MAR 27 - SEP 24 -SAN SALVADOR 6 H BEHIND UTC -SAO TOME ISLAND ON UTC AND PRINCIPE ISLAND -SAUDI ARABIA 3 H AHEAD OF UTC -SCOTLAND SEE ENGLAND -SENEGAL ON UTC -SEYCHELLES 4 H AHEAD OF UTC -SIERRA LEONE ON UTC -SINGAPORE 8 H AHEAD OF UTC -SOLOMON ISLANDS 11 H AHEAD OF UTC EXCLUDING BOUGAINVILLE -SOLOMON ISLANDS ISLAND -SOMALI 3 H AHEAD OF UTC -SOUTH AFRICA 2 H AHEAD OF UTC -SPAIN CANARY IS ON UTC -SPAIN CANARY IS 1 H AHEAD OF UTC MAR 27 - SEP 24 -SPAIN 1 H AHEAD OF UTC CONTINENTAL, BALEARIC AND -SPAIN MALLORCA ISLANDS -SPAIN 2 H AHEAD OF UTC CONTINENTAL, BALEARIC AND -SPAIN MALLORCA ISLANDS MAR 27 - -SPAIN SEP 24 -SPAIN MAINLAND 1 H AHEAD OF UTC MELILLA -SPAIN MAINLAND 2 H AHEAD OF UTC MAR 27 - SEP 24 -SRI LANKA 5H30M AHEAD OF UTC -ST.MAARTEN -ST.KITTS-NEVIS 4 H BEHIND UTC -ST.LUCIA 4 H BEHIND UTC -ST.PIERRE 3 H BEHIND UTC INCLUDING MIQUELON -ST.PIERRE 2 H BEHIND UTC INLCUDING MIQUELON APR 3 -ST.PIERRE - OCT 29 -ST.VINCENT 4 H BEHIND UTC INCLUDING THE GRENADINES -ST. HELENA ON UTC -SURINAME 3 H BEHIND UTC -SWAZILAND 2 H AHEAD OF UTC -SWEDEN 1 H AHEAD OF UTC -SWEDEN 2 H AHEAD OF UTC MAR 27 - SEP 24 -SWITZERLAND 1 H AHEAD OF UTC -SWITZERLAND 2 H AHEAD OF UTC MAR 27 - SEP 24 -SYRIA 2 H AHEAD OF UTC -SYRIA 3 H AHEAD OF UTC MAR 15 - OCT 30 -TAHITI 10 H BEHIND UTC -TANZANIA 3 H AHEAD OF UTC -THAILAND 7 H AHEAD OF UTC -TRINIDAD / TOBAGO 4 H BEHIND UTC -TUNISIA 1 H AHEAD OF UTC -TUNISIA 2 H AHEAD OF UTC APR 10 - SEP 24 -TURKEY 2 H AHEAD OF UTC -TURKEY 3 H AHEAD OF UTC MAR 27 - SEP 24 -TURKS AND CAICOS 5 H BEHIND UTC -TURKS AND CAICOS 4 H BEHIND UTC APR 3 - OCT 29 -TUVALU 12 H AHEAD OF UTC -UDAN 2 H AHEAD OF UTC -UGANDA 3 H AHEAD OF UTC -UNITED ARAB EMIR. 4 H AHEAD OF UTC ABU DHABI, DUBAI, SHARJAH, -UNITED ARAB EMIR RAS AL KHAIMAH -UNITED KINGDOM ON UTC WALES, SCOTLAND, N.I., CH. -UNITED KINGDOM IS. -UNITED KINGDOM 1 H AHEAD OF UTC MAR 27 - OCT 22 -UNITED STATES SEE USA -UPPER VOLTA ON UTC -URUGUAY 3 H BEHIND UTC -URUGUAY 2 H BEHIND UTC DEC 11, '88-FEB 25, '89 -URAGUAY (ESTIMATED) -USA EASTERN 5 H BEHIND UTC NEW YORK, WASHINGTON -USA EASTERN 4 H BEHIND UTC APR 3 - OCT 30 -USA CENTRAL 6 H BEHIND UTC CHICAGO, HOUSTON -USA CENTRAL 5 H BEHIND UTC APR 3 - OCT 30 -USA MOUNTAIN 7 H BEHIND UTC DENVER -USA MOUNTAIN 6 H BEHIND UTC APR 3 - OCT 30 -USA PACIFIC 8 H BEHIND UTC L.A., SAN FRANCISCO -USA PACIFIC 7 H BEHIND UTC APR 3 - OCT 30 -USA ALASKA STD 9 H BEHIND UTC MOST OF ALASKA (AKST) -USA ALASKA STD 8 H BEHIND UTC APR 3 - OCT 30 (AKDT) -USA ALEUTIAN 10 H BEHIND UTC ISLANDS WEST OF 170W -USA - " - 9 H BEHIND UTC APR 3 - OCT 30 -USA HAWAII 10 H BEHIND UTC -USA BERING 11 H BEHIND UTC SAMOA, MIDWAY -USA FOR SPECIFIC INFO ON USA ZONES/TIMES CALL DOT 202-426-4520 -USSR WEST EUROP 3 H AHEAD OF UTC LENINGRAD, MOSCOW -USSR WEST EUROP 4 H AHEAD OF UTC APR 1 - SEP 30 -USSR CENTRAL EUR 4 H AHEAD OF UTC ROSTOV, BAKU -USSR CENTRAL EUR 5 H AHEAD OF UTC APR 1 - SEP 30 -USSR EAST EUROP 5 H AHEAD OF UTC SVERDLOVSK -USSR EAST EUROP 6 H AHEAD OF UTC APR 1 - SEP 30 -USSR WEST SIBERIAN 6 H AHEAD OF UTC TASHKENT, ALMA ATA -USSR WEST SIBERIAN 7 H AHEAD OF UTC APR 1 - SEP 30 -USSR WEST-CENTRAL 7 H AHEAD OF UTC NOVOSIBIRSK -USSR WEST-CENTRAL 8 H AHEAD OF UTC APR 1 - SEP 30 -USSR WEST-CENTRAL 8 H AHEAD OF UTC IRKUTSK -USSR WEST-CENTRAL 9 H AHEAD OF UTC APR 1 - SEP 30 -USSR CENTRAL SIB 9 H AHEAD OF UTC YAKUTSK -USSR CENTRAL SIB 10 H AHEAD OF UTC APR 1 - SEP 30 -USSR CENTRAL SIB 10 H AHEAD OF UTC VLADIVOSTOK -USSR CENTRAL SIB 11 H AHEAD OF UTC APR 1 - SEP 30 -USSR EAST SIBERIA 11 H AHEAD OF UTC MAGADAN -USSR EAST SIBERIA 12 H AHEAD OF UTC APR 1 - SEP 30 -USSR EAST SIBERIA 12 H AHEAD OF UTC PETROPAVLOVSK -USSR EAST SIBERIA 13 H AHEAD OF UTC APR 1 - SEP 30 -USSR EAST SIBERIA 13 H AHEAD OF UTC UELEN -USSR EAST SIBERIA 14 H AHEAD OF UTC APR 1 - SEP 30 -VANUATU 11 H AHEAD OF UTC (NEW HEBRIDES) -VANUATU 12 H AHEAD OF UTC SEP 25, '88-MAR 25, '89 -VANUATU (ESTIMATED) -VATICAN 1 H AHEAD OF UTC -VATICAN 2 H AHEAD OF UTC MAR 27 - SEP 24 -VIETNAM 7 H AHEAD OF UTC -VIRGIN ISLANDS 4 H BEHIND UTC ST.CROIX, ST.THOMAS, -VIRGIN ISLANDS ST.JOHN -WAKE ISLAND 12 H AHEAD OF UTC -WALES SEE ENGLAND -WALLIS/FUTUNA IS. 12 H AHEAD OF UTC -WINDWARD ISLANDS 4 H BEHIND UTC GRENADA, ST. LUCIA -YEMEN 3 H AHEAD OF UTC BOTH REPUBLICS -YUGOSLAVIA 1 H AHEAD OF UTC -YUGOSLAVIA 2 H AHEAD OF UTC MAR 27 - SEP 24 -ZAIRE EAST 1 H AHEAD OF UTC KINSHASA MBANDAKA -ZAIRE WEST 2 H AHEAD OF UTC LUBUMBASHI, KASAI, KIVU, -ZAIRE WEST HAUT-ZAIRE, SHABA -ZAMBIA 2 H AHEAD OF UTC -ZIMBABWE 2 H AHEAD OF UTC diff --git a/share/zoneinfo/ialloc.c b/share/zoneinfo/ialloc.c deleted file mode 100644 index 118a97b..0000000 --- a/share/zoneinfo/ialloc.c +++ /dev/null @@ -1,140 +0,0 @@ -/*- - * Copyright (c) 1991, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Arthur David Olson of the National Cancer Institute. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#ifndef lint -static char sccsid[] = "@(#)ialloc.c 8.1 (Berkeley) 6/8/93"; -#endif /* not lint */ - -#ifdef notdef -static char elsieid[] = "@(#)ialloc.c 8.18"; -#endif - -/*LINTLIBRARY*/ - -#include -#include - -#ifdef MAL -#define NULLMAL(x) ((x) == NULL || (x) == MAL) -#else /* !defined MAL */ -#define NULLMAL(x) ((x) == NULL) -#endif /* !defined MAL */ - -#define nonzero(n) (((n) == 0) ? 1 : (n)) - -char * icalloc __P((int nelem, int elsize)); -char * icatalloc __P((char * old, const char * new)); -char * icpyalloc __P((const char * string)); -char * imalloc __P((int n)); -char * irealloc __P((char * pointer, int size)); -void ifree __P((char * pointer)); - -char * -imalloc(n) -const int n; -{ -#ifdef MAL - register char * result; - - result = malloc((size_t) nonzero(n)); - return NULLMAL(result) ? NULL : result; -#else /* !defined MAL */ - return malloc((size_t) nonzero(n)); -#endif /* !defined MAL */ -} - -char * -icalloc(nelem, elsize) -int nelem; -int elsize; -{ - if (nelem == 0 || elsize == 0) - nelem = elsize = 1; - return calloc((size_t) nelem, (size_t) elsize); -} - -char * -irealloc(pointer, size) -char * const pointer; -const int size; -{ - if (NULLMAL(pointer)) - return imalloc(size); - return realloc((void *) pointer, (size_t) nonzero(size)); -} - -char * -icatalloc(old, new) -char * const old; -const char * const new; -{ - register char * result; - register oldsize, newsize; - - newsize = NULLMAL(new) ? 0 : strlen(new); - if (NULLMAL(old)) - oldsize = 0; - else if (newsize == 0) - return old; - else oldsize = strlen(old); - if ((result = irealloc(old, oldsize + newsize + 1)) != NULL) - if (!NULLMAL(new)) - (void) strcpy(result + oldsize, new); - return result; -} - -char * -icpyalloc(string) -const char * const string; -{ - return icatalloc((char *) NULL, string); -} - -void -ifree(p) -char * const p; -{ - if (!NULLMAL(p)) - (void) free(p); -} - -void -icfree(p) -char * const p; -{ - if (!NULLMAL(p)) - (void) free(p); -} diff --git a/share/zoneinfo/scheck.c b/share/zoneinfo/scheck.c deleted file mode 100644 index 44a7c3c..0000000 --- a/share/zoneinfo/scheck.c +++ /dev/null @@ -1,99 +0,0 @@ -/*- - * Copyright (c) 1991, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Arthur David Olson of the National Cancer Institute. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#ifndef lint -static char sccsid[] = "@(#)scheck.c 8.1 (Berkeley) 6/8/93"; -#endif /* not lint */ - -#ifdef notdef -static char elsieid[] = "@(#)scheck.c 8.9"; -#endif - -/*LINTLIBRARY*/ - -#include -#include -#include -#include - -char * -scheck(string, format) -const char * const string; -const char * const format; -{ - register char * fbuf; - register const char * fp; - register char * tp; - register int c; - register char * result; - char dummy; - - result = ""; - if (string == NULL || format == NULL) - return result; - fbuf = malloc(2 * strlen(format) + 4); - if (fbuf == NULL) - return result; - fp = format; - tp = fbuf; - while ((*tp++ = c = *fp++) != '\0') { - if (c != '%') - continue; - if (*fp == '%') { - *tp++ = *fp++; - continue; - } - *tp++ = '*'; - if (*fp == '*') - ++fp; - while (isascii(*fp) && isdigit(*fp)) - *tp++ = *fp++; - if (*fp == 'l' || *fp == 'h') - *tp++ = *fp++; - else if (*fp == '[') - do *tp++ = *fp++; - while (*fp != '\0' && *fp != ']'); - if ((*tp++ = *fp++) == '\0') - break; - } - *(tp - 1) = '%'; - *tp++ = 'c'; - *tp = '\0'; - if (sscanf((char *)string, fbuf, &dummy) != 1) - result = (char *) format; - ifree(fbuf); - return result; -} diff --git a/share/zoneinfo/tzfile.5 b/share/zoneinfo/tzfile.5 deleted file mode 100644 index 07842cf..0000000 --- a/share/zoneinfo/tzfile.5 +++ /dev/null @@ -1,162 +0,0 @@ -.\" Copyright (c) 1991, 1993 -.\" The Regents of the University of California. All rights reserved. -.\" -.\" This code is derived from software contributed to Berkeley by -.\" Arthur David Olson of the National Cancer Institute. -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed by the University of -.\" California, Berkeley and its contributors. -.\" 4. Neither the name of the University nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.\" @(#)tzfile.5 8.1 (Berkeley) 6/8/93 -.\" -.Dd June 8, 1993 -.Dt TZFILE 5 -.Os -.Sh NAME -.Nm tzfile -.Nd time zone information -.Sh SYNOPSIS -.Fd #include -.Sh DESCRIPTION -The time zone information files used by -.Xr tzset 3 -begin with bytes reserved for future use, -followed by four four-byte values of type -.Em long , -written in a ``standard'' byte order -(the high-order byte of the value is written first). -These values are, -in order: -.Bl -tag -width tzh_ttisstdcnt -.It Fa tzh_ttisstdcnt -The number of standard/wall indicators stored in the file. -.It Fa tzh_leapcnt -The number of leap seconds for which data is stored in the file. -.It Fa tzh_timecnt -The number of "transition times" for which data is stored -in the file. -.It Fa tzh_typecnt -The number of "local time types" for which data is stored -in the file (must not be zero). -.It Fa tzh_charcnt -The number of characters of "time zone abbreviation strings" -stored in the file. -.El -.Pp -The above header is followed by -.Fa tzh_timecnt -four-byte values of type -.Em long , -sorted in ascending order. -These values are written in ``standard'' byte order. -Each is used as a transition time (as returned by -.Xr time 2 ) -at which the rules for computing local time change. -Next come -.Fa tzh_timecnt -one-byte values of type -.Fa unsigned char ; -each one tells which of the different types of ``local time'' types -described in the file is associated with the same-indexed transition time. -These values serve as indices into an array of -.Fa ttinfo -structures that appears next in the file; -these structures are defined as follows: -.Bd -literal -offset indent -struct ttinfo { - long tt_gmtoff; - int tt_isdst; - unsigned int tt_abbrind; -}; -.Ed -.Pp -Each structure is written as a four-byte value for -.Fa tt_gmtoff -of type -.Em long , -in a standard byte order, followed by a one-byte value for -.Fa tt_isdst -and a one-byte value for -.Fa tt_abbrind . -In each structure, -.Fa tt_gmtoff -gives the number of seconds to be added to -.Tn GMT , -.Fa tt_isdst -tells whether -.Fa tm_isdst -should be set by -.Xr localtime 3 -and -.Fa tt_abbrind -serves as an index into the array of time zone abbreviation characters -that follow the -.Fa ttinfo -structure(s) in the file. -.Pp -Then there are -.Fa tzh_leapcnt -pairs of four-byte values, written in standard byte order; -the first value of each pair gives the time -(as returned by -.Xr time 2 ) -at which a leap second occurs; -the second gives the -.Em total -number of leap seconds to be applied after the given time. -The pairs of values are sorted in ascending order by time. -.Pp -Finally there are -.Fa tzh_ttisstdcnt -standard/wall indicators, each stored as a one-byte value; -they tell whether the transition times associated with local time types -were specified as standard time or wall clock time, -and are used when a time zone file is used in handling -.Tn POSIX Ns -style -time zone environment variables. -.Pp -.Fa Localtime -uses the first standard-time -.Fa ttinfo -structure in the file -(or simply the first -.Fa ttinfo -structure in the absence of a standard-time structure) -if either -.Fa tzh_timecnt -is zero or the time argument is less than the first transition time recorded -in the file. -.Sh SEE ALSO -.Xr ctime 3 -.Sh HISTORY -The -.Nm tzfile -file format appeared in -.Bx 4.3 tahoe. diff --git a/share/zoneinfo/zic.8 b/share/zoneinfo/zic.8 deleted file mode 100644 index 66191c0..0000000 --- a/share/zoneinfo/zic.8 +++ /dev/null @@ -1,424 +0,0 @@ -.\" Copyright (c) 1991, 1993 -.\" The Regents of the University of California. All rights reserved. -.\" -.\" This code is derived from software contributed to Berkeley by -.\" Arthur David Olson of the National Cancer Institute. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed by the University of -.\" California, Berkeley and its contributors. -.\" 4. Neither the name of the University nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.\" @(#)zic.8 8.1 (Berkeley) 6/8/93 -.\" -.TH ZIC 8 -.SH NAME -zic \- time zone compiler -.SH SYNOPSIS -.B zic -[ -.B \-v -] [ -.B \-d -.I directory -] [ -.B \-l -.I localtime -] [ -.B \-p -.I posixrules -] [ -.B \-L -.I leapsecondfilename -] [ -.B \-s -] [ -.I filename -\&... ] -.SH DESCRIPTION -.if t .ds lq `` -.if t .ds rq '' -.if n .ds lq \&"\" -.if n .ds rq \&"\" -.de q -\\$3\*(lq\\$1\*(rq\\$2 -.. -.I Zic -reads text from the file(s) named on the command line -and creates the time conversion information files specified in this input. -If a -.I filename -is -.BR \- , -the standard input is read. -.PP -These options are available: -.TP -.BI "\-d " directory -Create time conversion information files in the named directory rather than -in the standard directory named below. -.TP -.BI "\-l " timezone -Use the given time zone as local time. -.I Zic -will act as if the input contained a link line of the form -.sp -.ti +.5i -Link \fItimezone\fP localtime -.TP -.BI "\-p " timezone -Use the given time zone's rules when handling POSIX-format -time zone environment variables. -.I Zic -will act as if the input contained a link line of the form -.sp -.ti +.5i -Link \fItimezone\fP posixrules -.TP -.BI "\-L " leapsecondfilename -Read leap second information from the file with the given name. -If this option is not used, -no leap second information appears in output files. -.TP -.B \-v -Complain if a year that appears in a data file is outside the range -of years representable by -.IR time (2) -values. -.TP -.B \-s -Limit time values stored in output files to values that are the same -whether they're taken to be signed or unsigned. -You can use this option to generate SVVS-compatible files. -.sp -Input lines are made up of fields. -Fields are separated from one another by any number of white space characters. -Leading and trailing white space on input lines is ignored. -An unquoted sharp character (#) in the input introduces a comment which extends -to the end of the line the sharp character appears on. -White space characters and sharp characters may be enclosed in double quotes -(") if they're to be used as part of a field. -Any line that is blank (after comment stripping) is ignored. -Non-blank lines are expected to be of one of three types: -rule lines, zone lines, and link lines. -.PP -A rule line has the form -.nf -.B -.ti +.5i -.ta \w'Rule\0\0'u +\w'NAME\0\0'u +\w'FROM\0\0'u +\w'1973\0\0'u +\w'TYPE\0\0'u +\w'Apr\0\0'u +\w'lastSun\0\0'u +\w'2:00\0\0'u +\w'SAVE\0\0'u -.sp -Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -.sp -For example: -.ti +.5i -.sp -Rule USA 1969 1973 \- Apr lastSun 2:00 1:00 D -.sp -.fi -The fields that make up a rule line are: -.TP "\w'LETTER/S'u" -.B NAME -Gives the (arbitrary) name of the set of rules this rule is part of. -.TP -.B FROM -Gives the first year in which the rule applies. -The word -.B minimum -(or an abbreviation) means the minimum year with a representable time value. -The word -.B maximum -(or an abbreviation) means the maximum year with a representable time value. -.TP -.B TO -Gives the final year in which the rule applies. -In addition to -.B minimum -and -.B maximum -(as above), -the word -.B only -(or an abbreviation) -may be used to repeat the value of the -.B FROM -field. -.TP -.B TYPE -Gives the type of year in which the rule applies. -If -.B TYPE -is -.B \- -then the rule applies in all years between -.B FROM -and -.B TO -inclusive; -if -.B TYPE -is -.BR uspres , -the rule applies in U.S. Presidential election years; -if -.B TYPE -is -.BR nonpres , -the rule applies in years other than U.S. Presidential election years. -If -.B TYPE -is something else, then -.I zic -executes the command -.ti +.5i -\fByearistype\fP \fIyear\fP \fItype\fP -.br -to check the type of a year: -an exit status of zero is taken to mean that the year is of the given type; -an exit status of one is taken to mean that the year is not of the given type. -.TP -.B IN -Names the month in which the rule takes effect. -Month names may be abbreviated. -.TP -.B ON -Gives the day on which the rule takes effect. -Recognized forms include: -.nf -.in +.5i -.sp -.ta \w'Sun<=25\0\0'u -5 the fifth of the month -lastSun the last Sunday in the month -lastMon the last Monday in the month -Sun>=8 first Sunday on or after the eighth -Sun<=25 last Sunday on or before the 25th -.fi -.in -.5i -.sp -Names of days of the week may be abbreviated or spelled out in full. -Note that there must be no spaces within the -.B ON -field. -.TP -.B AT -Gives the time of day at which the rule takes effect. -Recognized forms include: -.nf -.in +.5i -.sp -.ta \w'1:28:13\0\0'u -2 time in hours -2:00 time in hours and minutes -15:00 24-hour format time (for times after noon) -1:28:14 time in hours, minutes, and seconds -.fi -.in -.5i -.sp -Any of these forms may be followed by the letter -.B w -if the given time is local -.q "wall clock" -time or -.B s -if the given time is local -.q standard -time; in the absence of -.B w -or -.BR s , -wall clock time is assumed. -.TP -.B SAVE -Gives the amount of time to be added to local standard time when the rule is in -effect. -This field has the same format as the -.B AT -field -(although, of course, the -.B w -and -.B s -suffixes are not used). -.TP -.B LETTER/S -Gives the -.q "variable part" -(for example, the -.q S -or -.q D -in -.q EST -or -.q EDT ) -of time zone abbreviations to be used when this rule is in effect. -If this field is -.BR \- , -the variable part is null. -.PP -A zone line has the form -.sp -.nf -.ti +.5i -.ta \w'Zone\0\0'u +\w'Australia/South\-west\0\0'u +\w'GMTOFF\0\0'u +\w'RULES/SAVE\0\0'u +\w'FORMAT\0\0'u -Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -.sp -For example: -.sp -.ti +.5i -Zone Australia/South\-west 9:30 Aus CST 1987 Mar 15 2:00 -.sp -.fi -The fields that make up a zone line are: -.TP "\w'GMTOFF'u" -.B NAME -The name of the time zone. -This is the name used in creating the time conversion information file for the -zone. -.TP -.B GMTOFF -The amount of time to add to GMT to get standard time in this zone. -This field has the same format as the -.B AT -and -.B SAVE -fields of rule lines; -begin the field with a minus sign if time must be subtracted from GMT. -.TP -.B RULES/SAVE -The name of the rule(s) that apply in the time zone or, -alternately, an amount of time to add to local standard time. -If this field is -.B \- -then standard time always applies in the time zone. -.TP -.B FORMAT -The format for time zone abbreviations in this time zone. -The pair of characters -.B %s -is used to show where the -.q "variable part" -of the time zone abbreviation goes. -.TP -.B UNTIL -The time at which the GMT offset or the rule(s) change for a location. -It is specified as a year, a month, a day, and a time of day. -If this is specified, -the time zone information is generated from the given GMT offset -and rule change until the time specified. -.IP -The next line must be a -.q continuation -line; this has the same form as a zone line except that the -string -.q Zone -and the name are omitted, as the continuation line will -place information starting at the time specified as the -.B UNTIL -field in the previous line in the file used by the previous line. -Continuation lines may contain an -.B UNTIL -field, just as zone lines do, indicating that the next line is a further -continuation. -.PP -A link line has the form -.sp -.nf -.ti +.5i -.if t .ta \w'Link\0\0'u +\w'LINK-FROM\0\0'u -.if n .ta \w'Link\0\0'u +\w'US/Eastern\0\0'u -Link LINK-FROM LINK-TO -.sp -For example: -.sp -.ti +.5i -Link US/Eastern EST5EDT -.sp -.fi -The -.B LINK-FROM -field should appear as the -.B NAME -field in some zone line; -the -.B LINK-TO -field is used as an alternate name for that zone. -.PP -Except for continuation lines, -lines may appear in any order in the input. -.PP -Lines in the file that describes leap seconds have the following form: -.nf -.B -.ti +.5i -.ta \w'Leap\0\0'u +\w'YEAR\0\0'u +\w'MONTH\0\0'u +\w'DAY\0\0'u +\w'HH:MM:SS\0\0'u +\w'CORR\0\0'u -Leap YEAR MONTH DAY HH:MM:SS CORR R/S -.sp -For example: -.ti +.5i -.sp -Leap 1974 Dec 31 23:59:60 + S -.sp -.fi -The -.BR YEAR , -.BR MONTH , -.BR DAY , -and -.B HH:MM:SS -fields tell when the leap second happened. -The -.B CORR -field -should be -.q + -if a second was added -or -.q - -if a second was skipped. -The -.B R/S -field -should be (an abbreviation of) -.q Stationary -if the leap second time given by the other fields should be interpreted as GMT -or -(an abbreviation of) -.q Rolling -if the leap second time given by the other fields should be interpreted as -local wall clock time. -.SH NOTE -For areas with more than two types of local time, -you may need to use local standard time in the -.B AT -field of the earliest transition time's rule to ensure that -the earliest transition time recorded in the compiled file is correct. -.SH FILE -/etc/zoneinfo standard directory used for created files -.SH "SEE ALSO" -newctime(3), tzfile(5), zdump(8) -.. @(#)zic.8 4.4 diff --git a/share/zoneinfo/zic.c b/share/zoneinfo/zic.c deleted file mode 100644 index 8d80e63..0000000 --- a/share/zoneinfo/zic.c +++ /dev/null @@ -1,1892 +0,0 @@ -/*- - * Copyright (c) 1991, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Arthur David Olson of the National Cancer Institute. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#ifndef lint -static char sccsid[] = "@(#)zic.c 8.1 (Berkeley) 7/19/93"; -#endif /* not lint */ - -#ifdef notdef -static char elsieid[] = "@(#)zic.c 4.12"; -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#ifndef TRUE -#define TRUE 1 -#define FALSE 0 -#endif /* !defined TRUE */ - -struct rule { - const char * r_filename; - int r_linenum; - const char * r_name; - - int r_loyear; /* for example, 1986 */ - int r_hiyear; /* for example, 1986 */ - const char * r_yrtype; - - int r_month; /* 0..11 */ - - int r_dycode; /* see below */ - int r_dayofmonth; - int r_wday; - - long r_tod; /* time from midnight */ - int r_todisstd; /* above is standard time if TRUE */ - /* or wall clock time if FALSE */ - long r_stdoff; /* offset from standard time */ - const char * r_abbrvar; /* variable part of abbreviation */ - - int r_todo; /* a rule to do (used in outzone) */ - time_t r_temp; /* used in outzone */ -}; - -/* -** r_dycode r_dayofmonth r_wday -*/ - -#define DC_DOM 0 /* 1..31 */ /* unused */ -#define DC_DOWGEQ 1 /* 1..31 */ /* 0..6 (Sun..Sat) */ -#define DC_DOWLEQ 2 /* 1..31 */ /* 0..6 (Sun..Sat) */ - -struct zone { - const char * z_filename; - int z_linenum; - - const char * z_name; - long z_gmtoff; - const char * z_rule; - const char * z_format; - - long z_stdoff; - - struct rule * z_rules; - int z_nrules; - - struct rule z_untilrule; - time_t z_untiltime; -}; - -extern char * icatalloc __P((char * old, const char * new)); -extern char * icpyalloc __P((const char * string)); -extern void ifree __P((char * p)); -extern char * imalloc __P((int n)); -extern char * irealloc __P((char * old, int n)); -extern int link __P((const char * fromname, const char * toname)); -extern char * optarg; -extern int optind; -extern void perror __P((const char * string)); -extern char * scheck __P((const char * string, const char * format)); -static void addtt __P((time_t starttime, int type)); -static int addtype - __P((long gmtoff, const char * abbr, int isdst, - int ttisstd)); -static void addleap __P((time_t t, int positive, int rolling)); -static void adjleap __P((void)); -static void associate __P((void)); -static int ciequal __P((const char * ap, const char * bp)); -static void convert __P((long val, char * buf)); -static void dolink __P((const char * fromfile, const char * tofile)); -static void eat __P((const char * name, int num)); -static void eats __P((const char * name, int num, - const char * rname, int rnum)); -static long eitol __P((int i)); -static void error __P((const char * message)); -static char ** getfields __P((char * buf)); -static long gethms __P((char * string, const char * errstrng, - int signable)); -static void infile __P((const char * filename)); -static void inleap __P((char ** fields, int nfields)); -static void inlink __P((char ** fields, int nfields)); -static void inrule __P((char ** fields, int nfields)); -static int inzcont __P((char ** fields, int nfields)); -static int inzone __P((char ** fields, int nfields)); -static int inzsub __P((char ** fields, int nfields, int iscont)); -static int itsabbr __P((const char * abbr, const char * word)); -static int itsdir __P((const char * name)); -static int lowerit __P((int c)); -static char * memcheck __P((char * tocheck)); -static int mkdirs __P((char * filename)); -static void newabbr __P((const char * abbr)); -static long oadd __P((long t1, long t2)); -static void outzone __P((const struct zone * zp, int ntzones)); -static void puttzcode __P((long code, FILE * fp)); -static int rcomp __P((const void *leftp, const void *rightp)); -static time_t rpytime __P((const struct rule * rp, int wantedy)); -static void rulesub __P((struct rule * rp, char * loyearp, char * hiyearp, - char * typep, char * monthp, char * dayp, char * timep)); -static void setboundaries __P((void)); -static time_t tadd __P((time_t t1, long t2)); -static void usage __P((void)); -static void writezone __P((const char * name)); -static int yearistype __P((int year, const char * type)); - -static int charcnt; -static int errors; -static const char * filename; -static int leapcnt; -static int linenum; -static time_t max_time; -static int max_year; -static time_t min_time; -static int min_year; -static int noise; -static const char * rfilename; -static int rlinenum; -static const char * progname; -static int timecnt; -static int typecnt; -static int tt_signed; - -/* -** Line codes. -*/ - -#define LC_RULE 0 -#define LC_ZONE 1 -#define LC_LINK 2 -#define LC_LEAP 3 - -/* -** Which fields are which on a Zone line. -*/ - -#define ZF_NAME 1 -#define ZF_GMTOFF 2 -#define ZF_RULE 3 -#define ZF_FORMAT 4 -#define ZF_TILYEAR 5 -#define ZF_TILMONTH 6 -#define ZF_TILDAY 7 -#define ZF_TILTIME 8 -#define ZONE_MINFIELDS 5 -#define ZONE_MAXFIELDS 9 - -/* -** Which fields are which on a Zone continuation line. -*/ - -#define ZFC_GMTOFF 0 -#define ZFC_RULE 1 -#define ZFC_FORMAT 2 -#define ZFC_TILYEAR 3 -#define ZFC_TILMONTH 4 -#define ZFC_TILDAY 5 -#define ZFC_TILTIME 6 -#define ZONEC_MINFIELDS 3 -#define ZONEC_MAXFIELDS 7 - -/* -** Which files are which on a Rule line. -*/ - -#define RF_NAME 1 -#define RF_LOYEAR 2 -#define RF_HIYEAR 3 -#define RF_COMMAND 4 -#define RF_MONTH 5 -#define RF_DAY 6 -#define RF_TOD 7 -#define RF_STDOFF 8 -#define RF_ABBRVAR 9 -#define RULE_FIELDS 10 - -/* -** Which fields are which on a Link line. -*/ - -#define LF_FROM 1 -#define LF_TO 2 -#define LINK_FIELDS 3 - -/* -** Which fields are which on a Leap line. -*/ - -#define LP_YEAR 1 -#define LP_MONTH 2 -#define LP_DAY 3 -#define LP_TIME 4 -#define LP_CORR 5 -#define LP_ROLL 6 -#define LEAP_FIELDS 7 - -/* -** Year synonyms. -*/ - -#define YR_MINIMUM 0 -#define YR_MAXIMUM 1 -#define YR_ONLY 2 - -static struct rule * rules; -static int nrules; /* number of rules */ - -static struct zone * zones; -static int nzones; /* number of zones */ - -struct link { - const char * l_filename; - int l_linenum; - const char * l_from; - const char * l_to; -}; - -static struct link * links; -static int nlinks; - -struct lookup { - const char * l_word; - const int l_value; -}; - -static struct lookup const * byword __P((const char * string, - const struct lookup * lp)); - -static struct lookup const line_codes[] = { - "Rule", LC_RULE, - "Zone", LC_ZONE, - "Link", LC_LINK, - "Leap", LC_LEAP, - NULL, 0 -}; - -static struct lookup const mon_names[] = { - "January", TM_JANUARY, - "February", TM_FEBRUARY, - "March", TM_MARCH, - "April", TM_APRIL, - "May", TM_MAY, - "June", TM_JUNE, - "July", TM_JULY, - "August", TM_AUGUST, - "September", TM_SEPTEMBER, - "October", TM_OCTOBER, - "November", TM_NOVEMBER, - "December", TM_DECEMBER, - NULL, 0 -}; - -static struct lookup const wday_names[] = { - "Sunday", TM_SUNDAY, - "Monday", TM_MONDAY, - "Tuesday", TM_TUESDAY, - "Wednesday", TM_WEDNESDAY, - "Thursday", TM_THURSDAY, - "Friday", TM_FRIDAY, - "Saturday", TM_SATURDAY, - NULL, 0 -}; - -static struct lookup const lasts[] = { - "last-Sunday", TM_SUNDAY, - "last-Monday", TM_MONDAY, - "last-Tuesday", TM_TUESDAY, - "last-Wednesday", TM_WEDNESDAY, - "last-Thursday", TM_THURSDAY, - "last-Friday", TM_FRIDAY, - "last-Saturday", TM_SATURDAY, - NULL, 0 -}; - -static struct lookup const begin_years[] = { - "minimum", YR_MINIMUM, - "maximum", YR_MAXIMUM, - NULL, 0 -}; - -static struct lookup const end_years[] = { - "minimum", YR_MINIMUM, - "maximum", YR_MAXIMUM, - "only", YR_ONLY, - NULL, 0 -}; - -static struct lookup const leap_types[] = { - "Rolling", TRUE, - "Stationary", FALSE, - NULL, 0 -}; - -static const int len_months[2][MONSPERYEAR] = { - 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31, - 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 -}; - -static const int len_years[2] = { - DAYSPERNYEAR, DAYSPERLYEAR -}; - -static time_t ats[TZ_MAX_TIMES]; -static unsigned char types[TZ_MAX_TIMES]; -static long gmtoffs[TZ_MAX_TYPES]; -static char isdsts[TZ_MAX_TYPES]; -static char abbrinds[TZ_MAX_TYPES]; -static char ttisstds[TZ_MAX_TYPES]; -static char chars[TZ_MAX_CHARS]; -static time_t trans[TZ_MAX_LEAPS]; -static long corr[TZ_MAX_LEAPS]; -static char roll[TZ_MAX_LEAPS]; - -/* -** Memory allocation. -*/ - -static char * -memcheck(ptr) -char * const ptr; -{ - if (ptr == NULL) { - (void) perror(progname); - (void) exit(EXIT_FAILURE); - } - return ptr; -} - -#define emalloc(size) memcheck(imalloc(size)) -#define erealloc(ptr, size) memcheck(irealloc(ptr, size)) -#define ecpyalloc(ptr) memcheck(icpyalloc(ptr)) -#define ecatalloc(oldp, newp) memcheck(icatalloc(oldp, newp)) - -/* -** Error handling. -*/ - -static void -eats(name, num, rname, rnum) -const char * const name; -const int num; -const char * const rname; -const int rnum; -{ - filename = name; - linenum = num; - rfilename = rname; - rlinenum = rnum; -} - -static void -eat(name, num) -const char * const name; -const int num; -{ - eats(name, num, (char *) NULL, -1); -} - -static void -error(string) -const char * const string; -{ - /* - ** Match the format of "cc" to allow sh users to - ** zic ... 2>&1 | error -t "*" -v - ** on BSD systems. - */ - (void) fprintf(stderr, "\"%s\", line %d: %s", - filename, linenum, string); - if (rfilename != NULL) - (void) fprintf(stderr, " (rule from \"%s\", line %d)", - rfilename, rlinenum); - (void) fprintf(stderr, "\n"); - ++errors; -} - -static void -usage() -{ - (void) fprintf(stderr, -"%s: usage is %s [ -s ] [ -v ] [ -l localtime ] [ -p posixrules ] [ -d directory ]\n\ -\t[ -L leapseconds ] [ filename ... ]\n", - progname, progname); - (void) exit(EXIT_FAILURE); -} - -static const char * psxrules = NULL; -static const char * lcltime = NULL; -static const char * directory = NULL; -static const char * leapsec = NULL; -static int sflag = FALSE; - -int -main(argc, argv) -int argc; -char * argv[]; -{ - register int i, j; - register int c; - - (void) umask(umask(022) | 022); - progname = argv[0]; - while ((c = getopt(argc, argv, "d:l:p:L:vs")) != EOF) - switch (c) { - default: - usage(); - case 'd': - if (directory == NULL) - directory = optarg; - else { - (void) fprintf(stderr, -"%s: More than one -d option specified\n", - progname); - (void) exit(EXIT_FAILURE); - } - break; - case 'l': - if (lcltime == NULL) - lcltime = optarg; - else { - (void) fprintf(stderr, -"%s: More than one -l option specified\n", - progname); - (void) exit(EXIT_FAILURE); - } - break; - case 'p': - if (psxrules == NULL) - psxrules = optarg; - else { - (void) fprintf(stderr, -"%s: More than one -p option specified\n", - progname); - (void) exit(EXIT_FAILURE); - } - break; - case 'L': - if (leapsec == NULL) - leapsec = optarg; - else { - (void) fprintf(stderr, -"%s: More than one -L option specified\n", - progname); - (void) exit(EXIT_FAILURE); - } - break; - case 'v': - noise = TRUE; - break; - case 's': - sflag = TRUE; - break; - } - if (optind == argc - 1 && strcmp(argv[optind], "=") == 0) - usage(); /* usage message by request */ - if (directory == NULL) - directory = TZDIR; - - setboundaries(); - - if (optind < argc && leapsec != NULL) { - infile(leapsec); - adjleap(); - } - - zones = (struct zone *) emalloc(0); - rules = (struct rule *) emalloc(0); - links = (struct link *) emalloc(0); - for (i = optind; i < argc; ++i) - infile(argv[i]); - if (errors) - (void) exit(EXIT_FAILURE); - associate(); - for (i = 0; i < nzones; i = j) { - /* - ** Find the next non-continuation zone entry. - */ - for (j = i + 1; j < nzones && zones[j].z_name == NULL; ++j) - ; - outzone(&zones[i], j - i); - } - /* - ** Make links. - */ - for (i = 0; i < nlinks; ++i) - dolink(links[i].l_from, links[i].l_to); - if (lcltime != NULL) - dolink(lcltime, TZDEFAULT); - if (psxrules != NULL) - dolink(psxrules, TZDEFRULES); - return (errors == 0) ? EXIT_SUCCESS : EXIT_FAILURE; -} - -static void -dolink(fromfile, tofile) -const char * const fromfile; -const char * const tofile; -{ - register char * fromname; - register char * toname; - - fromname = ecpyalloc(directory); - fromname = ecatalloc(fromname, "/"); - fromname = ecatalloc(fromname, fromfile); - toname = ecpyalloc(directory); - toname = ecatalloc(toname, "/"); - toname = ecatalloc(toname, tofile); - /* - ** We get to be careful here since - ** there's a fair chance of root running us. - */ - if (!itsdir(toname)) - (void) remove(toname); - if (link(fromname, toname) != 0) { - (void) fprintf(stderr, "%s: Can't link from %s to ", - progname, fromname); - (void) perror(toname); - (void) exit(EXIT_FAILURE); - } - ifree(fromname); - ifree(toname); -} - -static void -setboundaries() -{ - register time_t bit; - - for (bit = 1; bit > 0; bit <<= 1) - ; - if (bit == 0) { /* time_t is an unsigned type */ - tt_signed = FALSE; - min_time = 0; - max_time = ~(time_t) 0; - if (sflag) - max_time >>= 1; - } else { - tt_signed = TRUE; - min_time = bit; - max_time = bit; - ++max_time; - max_time = -max_time; - if (sflag) - min_time = 0; - } - min_year = TM_YEAR_BASE + gmtime(&min_time)->tm_year; - max_year = TM_YEAR_BASE + gmtime(&max_time)->tm_year; -} - -static int -itsdir(name) -const char * const name; -{ - struct stat s; - - return (stat(name, &s) == 0 && S_ISDIR(s.st_mode)); -} - -/* -** Associate sets of rules with zones. -*/ - -/* -** Sort by rule name. -*/ - -static int -rcomp(cp1, cp2) -const void * cp1; -const void * cp2; -{ - return strcmp(((struct rule *) cp1)->r_name, - ((struct rule *) cp2)->r_name); -} - -static void -associate() -{ - register struct zone * zp; - register struct rule * rp; - register int base, out; - register int i; - - if (nrules != 0) - (void) qsort((void *) rules, (size_t) nrules, - (size_t) sizeof *rules, rcomp); - for (i = 0; i < nzones; ++i) { - zp = &zones[i]; - zp->z_rules = NULL; - zp->z_nrules = 0; - } - for (base = 0; base < nrules; base = out) { - rp = &rules[base]; - for (out = base + 1; out < nrules; ++out) - if (strcmp(rp->r_name, rules[out].r_name) != 0) - break; - for (i = 0; i < nzones; ++i) { - zp = &zones[i]; - if (strcmp(zp->z_rule, rp->r_name) != 0) - continue; - zp->z_rules = rp; - zp->z_nrules = out - base; - } - } - for (i = 0; i < nzones; ++i) { - zp = &zones[i]; - if (zp->z_nrules == 0) { - /* - ** Maybe we have a local standard time offset. - */ - eat(zp->z_filename, zp->z_linenum); - zp->z_stdoff = - gethms((char *)zp->z_rule, "unruly zone", TRUE); - /* - ** Note, though, that if there's no rule, - ** a '%s' in the format is a bad thing. - */ - if (strchr(zp->z_format, '%') != 0) - error("%s in ruleless zone"); - } - } - if (errors) - (void) exit(EXIT_FAILURE); -} - -static void -infile(name) -const char * name; -{ - register FILE * fp; - register char ** fields; - register char * cp; - register const struct lookup * lp; - register int nfields; - register int wantcont; - register int num; - char buf[BUFSIZ]; - - if (strcmp(name, "-") == 0) { - name = "standard input"; - fp = stdin; - } else if ((fp = fopen(name, "r")) == NULL) { - (void) fprintf(stderr, "%s: Can't open ", progname); - (void) perror(name); - (void) exit(EXIT_FAILURE); - } - wantcont = FALSE; - for (num = 1; ; ++num) { - eat(name, num); - if (fgets(buf, (int) sizeof buf, fp) != buf) - break; - cp = strchr(buf, '\n'); - if (cp == NULL) { - error("line too long"); - (void) exit(EXIT_FAILURE); - } - *cp = '\0'; - fields = getfields(buf); - nfields = 0; - while (fields[nfields] != NULL) { - if (ciequal(fields[nfields], "-")) - fields[nfields] = ""; - ++nfields; - } - if (nfields == 0) { - /* nothing to do */ - } else if (wantcont) { - wantcont = inzcont(fields, nfields); - } else { - lp = byword(fields[0], line_codes); - if (lp == NULL) - error("input line of unknown type"); - else switch ((int) (lp->l_value)) { - case LC_RULE: - inrule(fields, nfields); - wantcont = FALSE; - break; - case LC_ZONE: - wantcont = inzone(fields, nfields); - break; - case LC_LINK: - inlink(fields, nfields); - wantcont = FALSE; - break; - case LC_LEAP: - if (name != leapsec) - (void) fprintf(stderr, -"%s: Leap line in non leap seconds file %s\n", - progname, name); - else inleap(fields, nfields); - wantcont = FALSE; - break; - default: /* "cannot happen" */ - (void) fprintf(stderr, -"%s: panic: Invalid l_value %d\n", - progname, lp->l_value); - (void) exit(EXIT_FAILURE); - } - } - ifree((char *) fields); - } - if (ferror(fp)) { - (void) fprintf(stderr, "%s: Error reading ", progname); - (void) perror(filename); - (void) exit(EXIT_FAILURE); - } - if (fp != stdin && fclose(fp)) { - (void) fprintf(stderr, "%s: Error closing ", progname); - (void) perror(filename); - (void) exit(EXIT_FAILURE); - } - if (wantcont) - error("expected continuation line not found"); -} - -/* -** Convert a string of one of the forms -** h -h hh:mm -hh:mm hh:mm:ss -hh:mm:ss -** into a number of seconds. -** A null string maps to zero. -** Call error with errstring and return zero on errors. -*/ - -static long -gethms(string, errstring, signable) -char * string; -const char * const errstring; -const int signable; -{ - int hh, mm, ss, sign; - - if (string == NULL || *string == '\0') - return 0; - if (!signable) - sign = 1; - else if (*string == '-') { - sign = -1; - ++string; - } else sign = 1; - if (sscanf(string, scheck(string, "%d"), &hh) == 1) - mm = ss = 0; - else if (sscanf(string, scheck(string, "%d:%d"), &hh, &mm) == 2) - ss = 0; - else if (sscanf(string, scheck(string, "%d:%d:%d"), - &hh, &mm, &ss) != 3) { - error(errstring); - return 0; - } - if (hh < 0 || hh >= HOURSPERDAY || - mm < 0 || mm >= MINSPERHOUR || - ss < 0 || ss > SECSPERMIN) { - error(errstring); - return 0; - } - return eitol(sign) * - (eitol(hh * MINSPERHOUR + mm) * - eitol(SECSPERMIN) + eitol(ss)); -} - -static void -inrule(fields, nfields) -register char ** const fields; -const int nfields; -{ - static struct rule r; - - if (nfields != RULE_FIELDS) { - error("wrong number of fields on Rule line"); - return; - } - if (*fields[RF_NAME] == '\0') { - error("nameless rule"); - return; - } - r.r_filename = filename; - r.r_linenum = linenum; - r.r_stdoff = gethms(fields[RF_STDOFF], "invalid saved time", TRUE); - rulesub(&r, fields[RF_LOYEAR], fields[RF_HIYEAR], fields[RF_COMMAND], - fields[RF_MONTH], fields[RF_DAY], fields[RF_TOD]); - r.r_name = ecpyalloc(fields[RF_NAME]); - r.r_abbrvar = ecpyalloc(fields[RF_ABBRVAR]); - rules = (struct rule *) erealloc((char *) rules, - (int) ((nrules + 1) * sizeof *rules)); - rules[nrules++] = r; -} - -static int -inzone(fields, nfields) -register char ** const fields; -const int nfields; -{ - register int i; - char buf[132]; - - if (nfields < ZONE_MINFIELDS || nfields > ZONE_MAXFIELDS) { - error("wrong number of fields on Zone line"); - return FALSE; - } - if (strcmp(fields[ZF_NAME], TZDEFAULT) == 0 && lcltime != NULL) { - (void) sprintf(buf, - "\"Zone %s\" line and -l option are mutually exclusive", - TZDEFAULT); - error(buf); - return FALSE; - } - if (strcmp(fields[ZF_NAME], TZDEFRULES) == 0 && psxrules != NULL) { - (void) sprintf(buf, - "\"Zone %s\" line and -p option are mutually exclusive", - TZDEFRULES); - error(buf); - return FALSE; - } - for (i = 0; i < nzones; ++i) - if (zones[i].z_name != NULL && - strcmp(zones[i].z_name, fields[ZF_NAME]) == 0) { - (void) sprintf(buf, -"duplicate zone name %s (file \"%s\", line %d)", - fields[ZF_NAME], - zones[i].z_filename, - zones[i].z_linenum); - error(buf); - return FALSE; - } - return inzsub(fields, nfields, FALSE); -} - -static int -inzcont(fields, nfields) -register char ** const fields; -const int nfields; -{ - if (nfields < ZONEC_MINFIELDS || nfields > ZONEC_MAXFIELDS) { - error("wrong number of fields on Zone continuation line"); - return FALSE; - } - return inzsub(fields, nfields, TRUE); -} - -static int -inzsub(fields, nfields, iscont) -register char ** const fields; -const int nfields; -const int iscont; -{ - register char * cp; - static struct zone z; - register int i_gmtoff, i_rule, i_format; - register int i_untilyear, i_untilmonth; - register int i_untilday, i_untiltime; - register int hasuntil; - - if (iscont) { - i_gmtoff = ZFC_GMTOFF; - i_rule = ZFC_RULE; - i_format = ZFC_FORMAT; - i_untilyear = ZFC_TILYEAR; - i_untilmonth = ZFC_TILMONTH; - i_untilday = ZFC_TILDAY; - i_untiltime = ZFC_TILTIME; - z.z_name = NULL; - } else { - i_gmtoff = ZF_GMTOFF; - i_rule = ZF_RULE; - i_format = ZF_FORMAT; - i_untilyear = ZF_TILYEAR; - i_untilmonth = ZF_TILMONTH; - i_untilday = ZF_TILDAY; - i_untiltime = ZF_TILTIME; - z.z_name = ecpyalloc(fields[ZF_NAME]); - } - z.z_filename = filename; - z.z_linenum = linenum; - z.z_gmtoff = gethms(fields[i_gmtoff], "invalid GMT offset", TRUE); - if ((cp = strchr(fields[i_format], '%')) != 0) { - if (*++cp != 's' || strchr(cp, '%') != 0) { - error("invalid abbreviation format"); - return FALSE; - } - } - z.z_rule = ecpyalloc(fields[i_rule]); - z.z_format = ecpyalloc(fields[i_format]); - hasuntil = nfields > i_untilyear; - if (hasuntil) { - z.z_untilrule.r_filename = filename; - z.z_untilrule.r_linenum = linenum; - rulesub(&z.z_untilrule, - fields[i_untilyear], - "only", - "", - (nfields > i_untilmonth) ? fields[i_untilmonth] : "Jan", - (nfields > i_untilday) ? fields[i_untilday] : "1", - (nfields > i_untiltime) ? fields[i_untiltime] : "0"); - z.z_untiltime = rpytime(&z.z_untilrule, z.z_untilrule.r_loyear); - if (iscont && nzones > 0 && z.z_untiltime < max_time && - z.z_untiltime > min_time && - zones[nzones - 1].z_untiltime >= z.z_untiltime) { -error("Zone continuation line end time is not after end time of previous line"); - return FALSE; - } - } - zones = (struct zone *) erealloc((char *) zones, - (int) ((nzones + 1) * sizeof *zones)); - zones[nzones++] = z; - /* - ** If there was an UNTIL field on this line, - ** there's more information about the zone on the next line. - */ - return hasuntil; -} - -static void -inleap(fields, nfields) -register char ** const fields; -const int nfields; -{ - register const char * cp; - register const struct lookup * lp; - register int i, j; - int year, month, day; - long dayoff, tod; - time_t t; - - if (nfields != LEAP_FIELDS) { - error("wrong number of fields on Leap line"); - return; - } - dayoff = 0; - cp = fields[LP_YEAR]; - if (sscanf((char *)cp, scheck(cp, "%d"), &year) != 1 || - year < min_year || year > max_year) { - /* - * Leapin' Lizards! - */ - error("invalid leaping year"); - return; - } - j = EPOCH_YEAR; - while (j != year) { - if (year > j) { - i = len_years[isleap(j)]; - ++j; - } else { - --j; - i = -len_years[isleap(j)]; - } - dayoff = oadd(dayoff, eitol(i)); - } - if ((lp = byword(fields[LP_MONTH], mon_names)) == NULL) { - error("invalid month name"); - return; - } - month = lp->l_value; - j = TM_JANUARY; - while (j != month) { - i = len_months[isleap(year)][j]; - dayoff = oadd(dayoff, eitol(i)); - ++j; - } - cp = fields[LP_DAY]; - if (sscanf((char *)cp, scheck(cp, "%d"), &day) != 1 || - day <= 0 || day > len_months[isleap(year)][month]) { - error("invalid day of month"); - return; - } - dayoff = oadd(dayoff, eitol(day - 1)); - if (dayoff < 0 && !tt_signed) { - error("time before zero"); - return; - } - t = (time_t) dayoff * SECSPERDAY; - /* - ** Cheap overflow check. - */ - if (t / SECSPERDAY != dayoff) { - error("time overflow"); - return; - } - tod = gethms(fields[LP_TIME], "invalid time of day", FALSE); - cp = fields[LP_CORR]; - if (strcmp(cp, "+") != 0 && strcmp(cp, "") != 0) { - /* infile() turned "-" into "" */ - error("illegal CORRECTION field on Leap line"); - return; - } - if ((lp = byword(fields[LP_ROLL], leap_types)) == NULL) { - error("illegal Rolling/Stationary field on Leap line"); - return; - } - addleap(tadd(t, tod), *cp == '+', lp->l_value); -} - -static void -inlink(fields, nfields) -register char ** const fields; -const int nfields; -{ - struct link l; - - if (nfields != LINK_FIELDS) { - error("wrong number of fields on Link line"); - return; - } - if (*fields[LF_FROM] == '\0') { - error("blank FROM field on Link line"); - return; - } - if (*fields[LF_TO] == '\0') { - error("blank TO field on Link line"); - return; - } - l.l_filename = filename; - l.l_linenum = linenum; - l.l_from = ecpyalloc(fields[LF_FROM]); - l.l_to = ecpyalloc(fields[LF_TO]); - links = (struct link *) erealloc((char *) links, - (int) ((nlinks + 1) * sizeof *links)); - links[nlinks++] = l; -} - -static void -rulesub(rp, loyearp, hiyearp, typep, monthp, dayp, timep) -register struct rule * const rp; -char * const loyearp; -char * const hiyearp; -char * const typep; -char * const monthp; -char * const dayp; -char * const timep; -{ - register struct lookup const * lp; - register char * cp; - - if ((lp = byword(monthp, mon_names)) == NULL) { - error("invalid month name"); - return; - } - rp->r_month = lp->l_value; - rp->r_todisstd = FALSE; - cp = timep; - if (*cp != '\0') { - cp += strlen(cp) - 1; - switch (lowerit(*cp)) { - case 's': - rp->r_todisstd = TRUE; - *cp = '\0'; - break; - case 'w': - rp->r_todisstd = FALSE; - *cp = '\0'; - break; - } - } - rp->r_tod = gethms(timep, "invalid time of day", FALSE); - /* - ** Year work. - */ - cp = loyearp; - if ((lp = byword(cp, begin_years)) != NULL) switch ((int) lp->l_value) { - case YR_MINIMUM: - rp->r_loyear = min_year; - break; - case YR_MAXIMUM: - rp->r_loyear = max_year; - break; - default: /* "cannot happen" */ - (void) fprintf(stderr, - "%s: panic: Invalid l_value %d\n", - progname, lp->l_value); - (void) exit(EXIT_FAILURE); - } else if (sscanf(cp, scheck(cp, "%d"), &rp->r_loyear) != 1 || - rp->r_loyear < min_year || rp->r_loyear > max_year) { - if (noise) - error("invalid starting year"); - if (rp->r_loyear > max_year) - return; - } - cp = hiyearp; - if ((lp = byword(cp, end_years)) != NULL) switch ((int) lp->l_value) { - case YR_MINIMUM: - rp->r_hiyear = min_year; - break; - case YR_MAXIMUM: - rp->r_hiyear = max_year; - break; - case YR_ONLY: - rp->r_hiyear = rp->r_loyear; - break; - default: /* "cannot happen" */ - (void) fprintf(stderr, - "%s: panic: Invalid l_value %d\n", - progname, lp->l_value); - (void) exit(EXIT_FAILURE); - } else if (sscanf(cp, scheck(cp, "%d"), &rp->r_hiyear) != 1 || - rp->r_hiyear < min_year || rp->r_hiyear > max_year) { - if (noise) - error("invalid ending year"); - if (rp->r_hiyear < min_year) - return; - } - if (rp->r_hiyear < min_year) - return; - if (rp->r_loyear < min_year) - rp->r_loyear = min_year; - if (rp->r_hiyear > max_year) - rp->r_hiyear = max_year; - if (rp->r_loyear > rp->r_hiyear) { - error("starting year greater than ending year"); - return; - } - if (*typep == '\0') - rp->r_yrtype = NULL; - else { - if (rp->r_loyear == rp->r_hiyear) { - error("typed single year"); - return; - } - rp->r_yrtype = ecpyalloc(typep); - } - /* - ** Day work. - ** Accept things such as: - ** 1 - ** last-Sunday - ** Sun<=20 - ** Sun>=7 - */ - if ((lp = byword(dayp, lasts)) != NULL) { - rp->r_dycode = DC_DOWLEQ; - rp->r_wday = lp->l_value; - rp->r_dayofmonth = len_months[1][rp->r_month]; - } else { - if ((cp = strchr(dayp, '<')) != 0) - rp->r_dycode = DC_DOWLEQ; - else if ((cp = strchr(dayp, '>')) != 0) - rp->r_dycode = DC_DOWGEQ; - else { - cp = dayp; - rp->r_dycode = DC_DOM; - } - if (rp->r_dycode != DC_DOM) { - *cp++ = 0; - if (*cp++ != '=') { - error("invalid day of month"); - return; - } - if ((lp = byword(dayp, wday_names)) == NULL) { - error("invalid weekday name"); - return; - } - rp->r_wday = lp->l_value; - } - if (sscanf(cp, scheck(cp, "%d"), &rp->r_dayofmonth) != 1 || - rp->r_dayofmonth <= 0 || - (rp->r_dayofmonth > len_months[1][rp->r_month])) { - error("invalid day of month"); - return; - } - } -} - -static void -convert(val, buf) -const long val; -char * const buf; -{ - register int i; - register long shift; - - for (i = 0, shift = 24; i < 4; ++i, shift -= 8) - buf[i] = val >> shift; -} - -static void -puttzcode(val, fp) -const long val; -FILE * const fp; -{ - char buf[4]; - - convert(val, buf); - (void) fwrite((void *) buf, (size_t) sizeof buf, (size_t) 1, fp); -} - -static void -writezone(name) -const char * const name; -{ - register FILE * fp; - register int i, j; - char fullname[BUFSIZ]; - static struct tzhead tzh; - - if (strlen(directory) + 1 + strlen(name) >= sizeof fullname) { - (void) fprintf(stderr, - "%s: File name %s/%s too long\n", progname, - directory, name); - (void) exit(EXIT_FAILURE); - } - (void) sprintf(fullname, "%s/%s", directory, name); - if ((fp = fopen(fullname, "wb")) == NULL) { - if (mkdirs(fullname) != 0) - (void) exit(EXIT_FAILURE); - if ((fp = fopen(fullname, "wb")) == NULL) { - (void) fprintf(stderr, "%s: Can't create ", progname); - (void) perror(fullname); - (void) exit(EXIT_FAILURE); - } - } - convert(eitol(typecnt), tzh.tzh_ttisstdcnt); - convert(eitol(leapcnt), tzh.tzh_leapcnt); - convert(eitol(timecnt), tzh.tzh_timecnt); - convert(eitol(typecnt), tzh.tzh_typecnt); - convert(eitol(charcnt), tzh.tzh_charcnt); - (void) fwrite((void *) &tzh, (size_t) sizeof tzh, (size_t) 1, fp); - for (i = 0; i < timecnt; ++i) { - j = leapcnt; - while (--j >= 0) - if (ats[i] >= trans[j]) { - ats[i] = tadd(ats[i], corr[j]); - break; - } - puttzcode((long) ats[i], fp); - } - if (timecnt > 0) - (void) fwrite((void *) types, (size_t) sizeof types[0], - (size_t) timecnt, fp); - for (i = 0; i < typecnt; ++i) { - puttzcode((long) gmtoffs[i], fp); - (void) putc(isdsts[i], fp); - (void) putc(abbrinds[i], fp); - } - if (charcnt != 0) - (void) fwrite((void *) chars, (size_t) sizeof chars[0], - (size_t) charcnt, fp); - for (i = 0; i < leapcnt; ++i) { - if (roll[i]) { - if (timecnt == 0 || trans[i] < ats[0]) { - j = 0; - while (isdsts[j]) - if (++j >= typecnt) { - j = 0; - break; - } - } else { - j = 1; - while (j < timecnt && trans[i] >= ats[j]) - ++j; - j = types[j - 1]; - } - puttzcode((long) tadd(trans[i], -gmtoffs[j]), fp); - } else puttzcode((long) trans[i], fp); - puttzcode((long) corr[i], fp); - } - for (i = 0; i < typecnt; ++i) - (void) putc(ttisstds[i], fp); - if (ferror(fp) || fclose(fp)) { - (void) fprintf(stderr, "%s: Write error on ", progname); - (void) perror(fullname); - (void) exit(EXIT_FAILURE); - } -} - -static void -outzone(zpfirst, zonecount) -const struct zone * const zpfirst; -const int zonecount; -{ - register const struct zone * zp; - register struct rule * rp; - register int i, j; - register int usestart, useuntil; - register time_t starttime, untiltime; - register long gmtoff; - register long stdoff; - register int year; - register long startoff; - register int startisdst; - register int startttisstd; - register int type; - char startbuf[BUFSIZ]; - - /* - ** Now. . .finally. . .generate some useful data! - */ - timecnt = 0; - typecnt = 0; - charcnt = 0; - /* - ** Two guesses. . .the second may well be corrected later. - */ - gmtoff = zpfirst->z_gmtoff; - stdoff = 0; - starttime = 0; - startttisstd = FALSE; - for (i = 0; i < zonecount; ++i) { - usestart = i > 0; - useuntil = i < (zonecount - 1); - zp = &zpfirst[i]; - eat(zp->z_filename, zp->z_linenum); - startisdst = -1; - if (zp->z_nrules == 0) { - type = addtype(oadd(zp->z_gmtoff, zp->z_stdoff), - zp->z_format, zp->z_stdoff != 0, - startttisstd); - if (usestart) - addtt(starttime, type); - gmtoff = zp->z_gmtoff; - stdoff = zp->z_stdoff; - } else for (year = min_year; year <= max_year; ++year) { - if (useuntil && year > zp->z_untilrule.r_hiyear) - break; - /* - ** Mark which rules to do in the current year. - ** For those to do, calculate rpytime(rp, year); - */ - for (j = 0; j < zp->z_nrules; ++j) { - rp = &zp->z_rules[j]; - eats(zp->z_filename, zp->z_linenum, - rp->r_filename, rp->r_linenum); - rp->r_todo = year >= rp->r_loyear && - year <= rp->r_hiyear && - yearistype(year, rp->r_yrtype); - if (rp->r_todo) - rp->r_temp = rpytime(rp, year); - } - for ( ; ; ) { - register int k; - register time_t jtime, ktime; - register long offset; - char buf[BUFSIZ]; - - if (useuntil) { - /* - ** Turn untiltime into GMT - ** assuming the current gmtoff and - ** stdoff values. - */ - offset = gmtoff; - if (!zp->z_untilrule.r_todisstd) - offset = oadd(offset, stdoff); - untiltime = tadd(zp->z_untiltime, - -offset); - } - /* - ** Find the rule (of those to do, if any) - ** that takes effect earliest in the year. - */ - k = -1; -#ifdef lint - ktime = 0; -#endif /* defined lint */ - for (j = 0; j < zp->z_nrules; ++j) { - rp = &zp->z_rules[j]; - if (!rp->r_todo) - continue; - eats(zp->z_filename, zp->z_linenum, - rp->r_filename, rp->r_linenum); - offset = gmtoff; - if (!rp->r_todisstd) - offset = oadd(offset, stdoff); - jtime = rp->r_temp; - if (jtime == min_time || - jtime == max_time) - continue; - jtime = tadd(jtime, -offset); - if (k < 0 || jtime < ktime) { - k = j; - ktime = jtime; - } - } - if (k < 0) - break; /* go on to next year */ - rp = &zp->z_rules[k]; - rp->r_todo = FALSE; - if (useuntil && ktime >= untiltime) - break; - if (usestart) { - if (ktime < starttime) { - stdoff = rp->r_stdoff; - startoff = oadd(zp->z_gmtoff, - rp->r_stdoff); - (void) sprintf(startbuf, - zp->z_format, - rp->r_abbrvar); - startisdst = - rp->r_stdoff != 0; - continue; - } - if (ktime != starttime && - startisdst >= 0) -addtt(starttime, addtype(startoff, startbuf, startisdst, startttisstd)); - usestart = FALSE; - } - eats(zp->z_filename, zp->z_linenum, - rp->r_filename, rp->r_linenum); - (void) sprintf(buf, zp->z_format, - rp->r_abbrvar); - offset = oadd(zp->z_gmtoff, rp->r_stdoff); - type = addtype(offset, buf, rp->r_stdoff != 0, - rp->r_todisstd); - if (timecnt != 0 || rp->r_stdoff != 0) - addtt(ktime, type); - gmtoff = zp->z_gmtoff; - stdoff = rp->r_stdoff; - } - } - /* - ** Now we may get to set starttime for the next zone line. - */ - if (useuntil) { - starttime = tadd(zp->z_untiltime, - -gmtoffs[types[timecnt - 1]]); - startttisstd = zp->z_untilrule.r_todisstd; - } - } - writezone(zpfirst->z_name); -} - -static void -addtt(starttime, type) -const time_t starttime; -const int type; -{ - if (timecnt != 0 && type == types[timecnt - 1]) - return; /* easy enough! */ - if (timecnt >= TZ_MAX_TIMES) { - error("too many transitions?!"); - (void) exit(EXIT_FAILURE); - } - ats[timecnt] = starttime; - types[timecnt] = type; - ++timecnt; -} - -static int -addtype(gmtoff, abbr, isdst, ttisstd) -const long gmtoff; -const char * const abbr; -const int isdst; -const int ttisstd; -{ - register int i, j; - - /* - ** See if there's already an entry for this zone type. - ** If so, just return its index. - */ - for (i = 0; i < typecnt; ++i) { - if (gmtoff == gmtoffs[i] && isdst == isdsts[i] && - strcmp(abbr, &chars[abbrinds[i]]) == 0 && - ttisstd == ttisstds[i]) - return i; - } - /* - ** There isn't one; add a new one, unless there are already too - ** many. - */ - if (typecnt >= TZ_MAX_TYPES) { - error("too many local time types"); - (void) exit(EXIT_FAILURE); - } - gmtoffs[i] = gmtoff; - isdsts[i] = isdst; - ttisstds[i] = ttisstd; - - for (j = 0; j < charcnt; ++j) - if (strcmp(&chars[j], abbr) == 0) - break; - if (j == charcnt) - newabbr(abbr); - abbrinds[i] = j; - ++typecnt; - return i; -} - -static void -addleap(t, positive, rolling) -const time_t t; -const int positive; -const int rolling; -{ - register int i, j; - - if (leapcnt >= TZ_MAX_LEAPS) { - error("too many leap seconds"); - (void) exit(EXIT_FAILURE); - } - for (i = 0; i < leapcnt; ++i) - if (t <= trans[i]) { - if (t == trans[i]) { - error("repeated leap second moment"); - (void) exit(EXIT_FAILURE); - } - break; - } - for (j = leapcnt; j > i; --j) { - trans[j] = trans[j-1]; - corr[j] = corr[j-1]; - roll[j] = roll[j-1]; - } - trans[i] = t; - corr[i] = (positive ? 1L : -1L); - roll[i] = rolling; - ++leapcnt; -} - -static void -adjleap() -{ - register int i; - register long last = 0; - - /* - ** propagate leap seconds forward - */ - for (i = 0; i < leapcnt; ++i) { - trans[i] = tadd(trans[i], last); - last = corr[i] += last; - } -} - -static int -yearistype(year, type) -const int year; -const char * const type; -{ - char buf[BUFSIZ]; - int result; - - if (type == NULL || *type == '\0') - return TRUE; - if (strcmp(type, "uspres") == 0) - return (year % 4) == 0; - if (strcmp(type, "nonpres") == 0) - return (year % 4) != 0; - (void) sprintf(buf, "yearistype %d %s", year, type); - result = system(buf); - if (result == 0) - return TRUE; - if (result == (1 << 8)) - return FALSE; - error("Wild result from command execution"); - (void) fprintf(stderr, "%s: command was '%s', result was %d\n", - progname, buf, result); - for ( ; ; ) - (void) exit(EXIT_FAILURE); -} - -static int -lowerit(a) -const int a; -{ - return (isascii(a) && isupper(a)) ? tolower(a) : a; -} - -static int -ciequal(ap, bp) /* case-insensitive equality */ -register const char * ap; -register const char * bp; -{ - while (lowerit(*ap) == lowerit(*bp++)) - if (*ap++ == '\0') - return TRUE; - return FALSE; -} - -static int -itsabbr(abbr, word) -register const char * abbr; -register const char * word; -{ - if (lowerit(*abbr) != lowerit(*word)) - return FALSE; - ++word; - while (*++abbr != '\0') - do if (*word == '\0') - return FALSE; - while (lowerit(*word++) != lowerit(*abbr)); - return TRUE; -} - -static const struct lookup * -byword(word, table) -register const char * const word; -register const struct lookup * const table; -{ - register const struct lookup * foundlp; - register const struct lookup * lp; - - if (word == NULL || table == NULL) - return NULL; - /* - ** Look for exact match. - */ - for (lp = table; lp->l_word != NULL; ++lp) - if (ciequal(word, lp->l_word)) - return lp; - /* - ** Look for inexact match. - */ - foundlp = NULL; - for (lp = table; lp->l_word != NULL; ++lp) - if (itsabbr(word, lp->l_word)) - if (foundlp == NULL) - foundlp = lp; - else return NULL; /* multiple inexact matches */ - return foundlp; -} - -static char ** -getfields(cp) -register char * cp; -{ - register char * dp; - register char ** array; - register int nsubs; - - if (cp == NULL) - return NULL; - array = (char **) emalloc((int) ((strlen(cp) + 1) * sizeof *array)); - nsubs = 0; - for ( ; ; ) { - while (isascii(*cp) && isspace(*cp)) - ++cp; - if (*cp == '\0' || *cp == '#') - break; - array[nsubs++] = dp = cp; - do { - if ((*dp = *cp++) != '"') - ++dp; - else while ((*dp = *cp++) != '"') - if (*dp != '\0') - ++dp; - else error("Odd number of quotation marks"); - } while (*cp != '\0' && *cp != '#' && - (!isascii(*cp) || !isspace(*cp))); - if (isascii(*cp) && isspace(*cp)) - ++cp; - *dp = '\0'; - } - array[nsubs] = NULL; - return array; -} - -static long -oadd(t1, t2) -const long t1; -const long t2; -{ - register long t; - - t = t1 + t2; - if (t2 > 0 && t <= t1 || t2 < 0 && t >= t1) { - error("time overflow"); - (void) exit(EXIT_FAILURE); - } - return t; -} - -static time_t -tadd(t1, t2) -const time_t t1; -const long t2; -{ - register time_t t; - - if (t1 == max_time && t2 > 0) - return max_time; - if (t1 == min_time && t2 < 0) - return min_time; - t = t1 + t2; - if (t2 > 0 && t <= t1 || t2 < 0 && t >= t1) { - error("time overflow"); - (void) exit(EXIT_FAILURE); - } - return t; -} - -/* -** Given a rule, and a year, compute the date - in seconds since January 1, -** 1970, 00:00 LOCAL time - in that year that the rule refers to. -*/ - -static time_t -rpytime(rp, wantedy) -register const struct rule * const rp; -register const int wantedy; -{ - register int y, m, i; - register long dayoff; /* with a nod to Margaret O. */ - register time_t t; - - dayoff = 0; - m = TM_JANUARY; - y = EPOCH_YEAR; - while (wantedy != y) { - if (wantedy > y) { - i = len_years[isleap(y)]; - ++y; - } else { - --y; - i = -len_years[isleap(y)]; - } - dayoff = oadd(dayoff, eitol(i)); - } - while (m != rp->r_month) { - i = len_months[isleap(y)][m]; - dayoff = oadd(dayoff, eitol(i)); - ++m; - } - i = rp->r_dayofmonth; - if (m == TM_FEBRUARY && i == 29 && !isleap(y)) { - if (rp->r_dycode == DC_DOWLEQ) - --i; - else { - error("use of 2/29 in non leap-year"); - (void) exit(EXIT_FAILURE); - } - } - --i; - dayoff = oadd(dayoff, eitol(i)); - if (rp->r_dycode == DC_DOWGEQ || rp->r_dycode == DC_DOWLEQ) { - register long wday; - -#define LDAYSPERWEEK ((long) DAYSPERWEEK) - wday = eitol(EPOCH_WDAY); - /* - ** Don't trust mod of negative numbers. - */ - if (dayoff >= 0) - wday = (wday + dayoff) % LDAYSPERWEEK; - else { - wday -= ((-dayoff) % LDAYSPERWEEK); - if (wday < 0) - wday += LDAYSPERWEEK; - } - while (wday != eitol(rp->r_wday)) - if (rp->r_dycode == DC_DOWGEQ) { - dayoff = oadd(dayoff, (long) 1); - if (++wday >= LDAYSPERWEEK) - wday = 0; - ++i; - } else { - dayoff = oadd(dayoff, (long) -1); - if (--wday < 0) - wday = LDAYSPERWEEK - 1; - --i; - } - if (i < 0 || i >= len_months[isleap(y)][m]) { - error("no day in month matches rule"); - (void) exit(EXIT_FAILURE); - } - } - if (dayoff < 0 && !tt_signed) { - if (wantedy == rp->r_loyear) - return min_time; - error("time before zero"); - (void) exit(EXIT_FAILURE); - } - t = (time_t) dayoff * SECSPERDAY; - /* - ** Cheap overflow check. - */ - if (t / SECSPERDAY != dayoff) { - if (wantedy == rp->r_hiyear) - return max_time; - if (wantedy == rp->r_loyear) - return min_time; - error("time overflow"); - (void) exit(EXIT_FAILURE); - } - return tadd(t, rp->r_tod); -} - -static void -newabbr(string) -const char * const string; -{ - register int i; - - i = strlen(string) + 1; - if (charcnt + i >= TZ_MAX_CHARS) { - error("too many, or too long, time zone abbreviations"); - (void) exit(EXIT_FAILURE); - } - (void) strcpy(&chars[charcnt], string); - charcnt += eitol(i); -} - -static int -mkdirs(name) -char * const name; -{ - register char * cp; - - if ((cp = name) == NULL || *cp == '\0') - return 0; - while ((cp = strchr(cp + 1, '/')) != 0) { - *cp = '\0'; - if (!itsdir(name)) { - /* - ** It doesn't seem to exist, so we try to create it. - */ - if (mkdir(name, 0755) != 0) { - (void) fprintf(stderr, - "%s: Can't create directory ", - progname); - (void) perror(name); - return -1; - } - } - *cp = '/'; - } - return 0; -} - -static long -eitol(i) -const int i; -{ - long l; - - l = i; - if (i < 0 && l >= 0 || i == 0 && l != 0 || i > 0 && l <= 0) { - (void) fprintf(stderr, "%s: %d did not sign extend correctly\n", - progname, i); - (void) exit(EXIT_FAILURE); - } - return l; -} - -/* -** UNIX is a registered trademark of AT&T. -*/ -- cgit v1.1 From e1e2dbd6d535913764c66c3061e4ad283da8b024 Mon Sep 17 00:00:00 2001 From: wollman Date: Sat, 2 Mar 1996 20:48:55 +0000 Subject: Latest rlelease of timezone data files. Obtained from: Arthud David Olson --- share/zoneinfo/africa | 74 +++++--- share/zoneinfo/antarctica | 18 +- share/zoneinfo/asia | 191 ++++++++++++------- share/zoneinfo/australasia | 314 +++++++++++++++++++------------ share/zoneinfo/backward | 23 ++- share/zoneinfo/europe | 100 +++++----- share/zoneinfo/northamerica | 439 ++++++++++++++++++++++++++++++++++--------- share/zoneinfo/pacificnew | 8 +- share/zoneinfo/solar87 | 12 +- share/zoneinfo/solar88 | 12 +- share/zoneinfo/solar89 | 12 +- share/zoneinfo/southamerica | 29 +-- share/zoneinfo/yearistype.sh | 6 +- 13 files changed, 833 insertions(+), 405 deletions(-) diff --git a/share/zoneinfo/africa b/share/zoneinfo/africa index a978667..ddb472d 100644 --- a/share/zoneinfo/africa +++ b/share/zoneinfo/africa @@ -1,4 +1,4 @@ -# @(#)africa 7.6 +# @(#)africa 7.12 # 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 @@ -15,6 +15,10 @@ # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which # I found in the UCLA library. # +# A reliable and entertaining source about time zones is +# Derek Howse, Greenwich time and the discovery of the longitude, +# Oxford University Press (1980). +# # I added so many Zone names that the old, mostly flat name space was unwieldy. # So I renamed the Zones to have the form AREA/LOCATION, where # AREA is the name of a continent or ocean, and @@ -29,6 +33,10 @@ # E.g. prefer `Brunei' to `Bandar_Seri_Begawan'. # Include at least one location per time zone rule set per country. # One such location is enough. +# If all the clocks in a country's region have agreed since 1970, +# don't bother to include more than one location +# even if subregions' clocks disagreed before 1970. +# Otherwise these tables would become annoyingly large. # If a name is ambiguous, use a less ambiguous alternative; # e.g. many cities are named San Jose and Georgetown, so # prefer `Costa_Rica' to `San_Jose' and `Guyana' to `Georgetown'. @@ -95,10 +103,10 @@ Rule Algeria 1978 only - Mar 24 1:00 1:00 " DST" Rule Algeria 1978 only - Sep 22 3:00 0 - Rule Algeria 1980 only - Apr 25 0:00 1:00 " DST" Rule Algeria 1980 only - Oct 31 2:00 0 - -# Shanks gives 0:09 for Paris Mean Time; go with Whitman's more precise 0:09:05. +# Shanks gives 0:09 for Paris Mean Time; go with Howse's more precise 0:09:21. # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 15 0:01 - 0:09:05 - PMT 1911 Mar 11 # Paris Mean Time + 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time 0:00 Algeria WET%s 1940 Feb 25 2:00 1:00 Algeria MET%s 1946 Oct 7 0:00 - WET 1956 Jan 29 @@ -114,6 +122,9 @@ Zone Africa/Luanda 0:52:56 - LMT 1892 0:52 - LMT 1911 May 26 # Luanda Mean Time 1:00 - CAT +# Bassas da India +# uninhabited + # Benin # Whitman says they switched to 1:00 in 1946, not 1934; go with Shanks. # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -244,6 +255,9 @@ Zone Africa/Addis_Ababa 2:34:48 - LMT 1870 2:35 - AAMT 1936 May 5 # Addis Ababa MT 3:00 - EAT +# Europa Island +# uninhabited + # Gabon # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Africa/Libreville 0:37:48 - LMT 1912 @@ -269,6 +283,9 @@ Rule Ghana 1936 1942 - Dec 31 0:00 0 WAT Zone Africa/Accra -0:00:52 - LMT 1918 0:00 Ghana %s +# Glorioso Is +# uninhabited + # Guinea # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Africa/Conakry -0:54:52 - LMT 1912 @@ -282,6 +299,9 @@ Zone Africa/Bissau -1:02:20 - LMT 1911 May 26 1:00 - CAT 1975 0:00 - WAT +# Juan de Nova +# uninhabited + # Kenya # From Paul Eggert (November 18, 1993): # Shanks says the transition to 2:45 was in 1940, but it must have been 1948. @@ -303,9 +323,10 @@ Zone Africa/Maseru 1:50:00 - LMT 1903 Mar # From Paul Eggert (November 18, 1993): # In 1972 Liberia was the last country to switch # from a GMT offset that was not a multiple of 15 minutes. -# Time magazine reported that it was in honor of their leader's birthday. -# For Liberia before 1972, Shanks reports -0:44, and Whitman reports -0:44:30; -# go with Whitman. +# Howse reports that it was in honor of their president's birthday. +# Shanks reports the date as May 1, whereas Howse reports Jan; go with Shanks. +# For Liberia before 1972, Shanks reports -0:44, whereas Howse and Whitman +# each report -0:44:30; go with the more precise figure. # # From Shanks (1991), as corrected by Whitman: # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -342,16 +363,15 @@ Rule Libya 1986 only - Oct 3 0:00 0 - Rule Libya 1987 1989 - Apr 1 0:00 1:00 " DST" Rule Libya 1987 1990 - Oct 1 0:00 0 - Rule Libya 1990 only - May 4 0:00 1:00 " DST" -# From Paul Eggert (November 18, 1993): -# Here's a guess for years starting with 1991. -Rule Libya 1991 max - Apr 1 0:00 1:00 " DST" -Rule Libya 1991 max - Oct 1 0:00 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Africa/Tripoli 0:52:44 - LMT 1920 1:00 Libya MET%s 1959 2:00 - EET 1982 - 1:00 Libya MET%s +# From Paul Eggert (1995-12-19): +# usno1995 (from OAG) says Libya uses 2:00 all year, as they did before 1982. +# We don't know when they switched back. We'll guess 1991. + 1:00 Libya MET%s 1991 + 2:00 - EET # Madagascar # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -391,7 +411,7 @@ Zone Indian/Mauritius 3:50:00 - LMT 1907 # Port Louis # Mayotte # Zone NAME GMTOFF RULES FORMAT [UNTIL] -Zone Indian/Mayotte 3:01:08 - LMT 1911 Jul # Dzaoudzi +Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou 3:00 - EAT # Morocco @@ -418,7 +438,7 @@ Zone Africa/Casablanca -0:30:20 - LMT 1913 Oct 26 1:00 - MET 1986 0:00 - WET # The following are controlled by Spain, and are like Europe/Madrid: -# Alboran, Alhucemas Is, Ceuta, Chafarinas Is, Mellila. +# Alboran, Alhucemas Is, Ceuta, Chafarinas Is, Melilla. # Mozambique # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -447,7 +467,7 @@ Zone Africa/Lagos 0:13:36 - LMT 1919 Sep # Reunion # Zone NAME GMTOFF RULES FORMAT [UNTIL] -Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # St Denis +Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis 4:00 - SMT # Rwanda @@ -460,10 +480,10 @@ Zone Africa/Kigali 2:00:16 - LMT 1935 Jun Zone Atlantic/St_Helena -0:22:48 - LMT 1890 # Jamestown -0:06 - ?MT 1951 # a typo in Shanks? 0:00 - GMT -# Whitman says Tristan da Cunha is on GMT, like Atlantic/St_Helena. -# -# Ascension, Gough, Inaccessible, Nightingale -# no information; probably like Atlantic/St_Helena +# The other parts of the St Helena territory are similar: +# Tristan da Cunha: on GMT, says Whitman +# Ascension: on GMT, says usno1995 +# Gough, Inaccessible, Nightingale: no information, but probably GMT # Sao Tome and Principe # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -519,12 +539,16 @@ Zone Africa/Johannesburg 1:52:00 - LMT 1892 Feb 8 # no information # Sudan +# From Michael Ross (November 15, 1995): +# Sudan no longer observes any form of daylight time change. +# I verified this today by telephone with the Sudan Mission to the +# United Nations: 212-573-6033 # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S Rule Sudan 1931 only - Feb 8 0:00 0 - Rule Sudan 1970 only - May 1 0:00 1:00 " DST" -Rule Sudan 1970 max - Oct 15 0:00 0 - +Rule Sudan 1970 1985 - Oct 15 0:00 0 - Rule Sudan 1971 only - Apr 30 0:00 1:00 " DST" -Rule Sudan 1972 max - Apr lastSun 0:00 1:00 " DST" +Rule Sudan 1972 1985 - Apr lastSun 0:00 1:00 " DST" # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Africa/Khartoum 2:10:08 - LMT 1931 2:00 Sudan EET%s @@ -546,6 +570,9 @@ Zone Africa/Dar_es_Salaam 2:37:08 - LMT 1931 Zone Africa/Lome 0:04:52 - LMT 1893 0:00 - WAT +# Tromelin +# uninhabited + # Tunisia # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S Rule Tunisia 1911 only - Mar 9 0:00 0 - @@ -571,10 +598,11 @@ Rule Tunisia 1988 max - Sep lastSun 0:00s 0 - Rule Tunisia 1989 only - Mar 26 0:00s 1:00 " DST" Rule Tunisia 1990 only - May 1 0:00s 1:00 " DST" Rule Tunisia 1991 max - Mar lastSun 0:00s 1:00 " DST" -# Shanks gives 0:09 for Paris Mean Time; go with Whitman's more precise 0:09:05. +# Shanks gives 0:09 for Paris Mean Time; go with Howse's more precise 0:09:21. +# Shanks says the 1911 switch occurred on Mar 9; go with Howse's Mar 11. # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Africa/Tunis 0:40:44 - LMT 1881 May 12 - 0:09:05 - PMT 1911 Mar 9 # Paris Mean Time + 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time 1:00 Tunisia MET%s # Uganda diff --git a/share/zoneinfo/antarctica b/share/zoneinfo/antarctica index f5ed313..3c46c15 100644 --- a/share/zoneinfo/antarctica +++ b/share/zoneinfo/antarctica @@ -1,4 +1,4 @@ -# @(#)antarctica 7.2 +# @(#)antarctica 7.3 # From Arthur David Olson (February 13, 1988): # No data available. @@ -9,11 +9,17 @@ # South Orkney Is # South Shetland Is -# Amsterdam Island # Bouvet -# Crozet Is -# Heard and McDonald Is -# Kerguelen Is -# St Paul Island +# uninhabited + +# French Southern and Antarctic Lands (no indigenous inhabitants) include +# Amsterdam Island +# Crozet Is +# Kerguelen Is +# St Paul Island + +# Heard Island, McDonald Is +# uninhabited + # Peter I Island # Scott Island diff --git a/share/zoneinfo/asia b/share/zoneinfo/asia index 6e7c636..c9cdc7e 100644 --- a/share/zoneinfo/asia +++ b/share/zoneinfo/asia @@ -1,10 +1,10 @@ -# @(#)asia 7.13 +# @(#)asia 7.18 # 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 # tz@elsie.nci.nih.gov for general use in the future). -# From Paul Eggert (August 18, 1994): +# From Paul Eggert (1995-12-19): # # A good source for time zone historical data outside the U.S. is # Thomas G. Shanks, The International Atlas (3rd edition), @@ -28,17 +28,21 @@ # 2:00 EET EET DST Eastern European Time # 2:00 IST IDT Israel # 3:00 AST ADT Arabia* -# 3:00 MSK MSD Moscow +# 3:00 BSK BSD Baku (was 4:00)* # 3:30 IST IDT Iran -# 4:00 BSK BSD Baku* +# 4:00 TBSK TBSD Tbilisi (was 3:00)* +# 4:00 YSK YSD Yerevan (was 3:00)* # 4:00 GST GDT Gulf* # 4:30 AFT Afghanistan* -# 5:00 ASK ASD Ashkhabad* +# 5:00 ASK ASD Ashkhabad (was 4:00)* +# 5:00 BSK BSD Bishkek (was 6:00) (was FSK, FSD)* # 5:00 PKT Pakistan* +# 5:00 TSK TSD Tashkent (was 6:00)* # 5:30 IST IST India # 5:45 NPT Nepal* +# 6:00 AASK AASD Alma-Ata (was 5:00)* # 6:00 BGT Bengal, Bangladesh* -# 6:00 TSK TSD Tashkent* +# 6:00 DSK DSD Dushanbe (was 5:00)* # 6:30 BMT Burma* # 7:00 ICT Indochina* # 7:00 JVT Java* @@ -65,14 +69,11 @@ ############################################################################### -# From Paul Eggert (May 28, 1994): -# We don't know what happened to the clocks in the Caucausus and the ex-Soviet -# Central Asia after 1990. Until we get more info, stick with the pre-1991 rules. # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S Rule Russia 1981 1984 - Apr 1 0:00 1:00 D Rule Russia 1981 1983 - Oct 1 0:00 0 K -Rule Russia 1984 max - Sep lastSun 3:00 0 K -Rule Russia 1985 max - Mar lastSun 2:00 1:00 D +Rule Russia 1984 max - Sep lastSun 2:00s 0 K +Rule Russia 1985 max - Mar lastSun 2:00s 1:00 D # Afghanistan # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -83,14 +84,20 @@ Zone Asia/Kabul 4:36:48 - LMT 1890 # Armenia # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Asia/Yerevan 2:58:00 - LMT 1924 May 2 - 3:00 - MSK 1957 Mar - 4:00 Russia BS%s + 3:00 - YSK 1957 Mar + 4:00 Russia YS%s +# Shanks has Yerevan switching to 3:00 (with Russian DST) in spring 1991, +# but usno1995 has Armenia at 4:00 (with DST). Ignore the 1991 switch for now. # Azerbaijan # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Asia/Baku 3:19:24 - LMT 1924 May 2 - 3:00 - MSK 1957 Mar - 4:00 Russia BS%s + 3:00 - BSK 1957 Mar + 4:00 Russia BS%s 1991 Mar 31 2:00s + 3:00 1:00 BSD 1991 Sep 29 2:00s + 3:00 - BSK +# Shanks has Baku using Russian DST rules after 1991, +# but usno1995 has Azerbaijan with no DST. Go with usno1995. # Bahrain # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -124,7 +131,7 @@ Zone Asia/Brunei 7:39:40 - LMT 1926 Mar # Bandar Seri Begawan 7:30 - BNT 1933 8:00 - BNT -# Burma +# Burma / Myanmar # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Asia/Rangoon 6:24:40 - LMT 1880 6:25 - RMT 1920 @@ -159,19 +166,16 @@ Zone Asia/Phnom_Penh 6:59:40 - LMT 1906 Jun 9 # 1986 May 4 - Sept 14 # 1987 mid-April - ?? -# From Paul Eggert (November 18, 1993): -# According to Shanks, China started using DST in 1986, -# but it's still all one big happy time zone. - # 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 -# From Paul Eggert (November 18, 1993): +# From Paul Eggert (1995-12-19): # Shanks writes that China switched from the Chinese calendar on 1912 Feb 12. # He also writes that China has had a single time zone since 1980 May 1, -# and that they instituted DST on 1986 May 4; this contradicts Devine's +# observing summer DST from 1986 through 1991; this contradicts Devine's # note about Time magazine, though apparently _something_ happened in 1986. +# Go with Shanks for now. I made up names for the other pre-1980 time zones. # From Shanks (1991): # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S @@ -181,12 +185,28 @@ Rule Shang 1940 1941 - Oct 1 0:00 0 S Rule Shang 1941 only - Mar 16 0:00 1:00 D Rule PRC 1949 only - Jan 1 0:00 0 S Rule PRC 1986 only - May 4 0:00 1:00 D -Rule PRC 1986 max - Sep Sun>=11 0:00 0 S -Rule PRC 1987 max - Apr Sun>=10 0:00 1:00 D -# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Rule PRC 1986 1991 - Sep Sun>=11 0:00 0 S +Rule PRC 1987 1991 - Apr Sun>=10 0:00 1:00 D +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone Asia/Harbin 8:26:44 - LMT 1928 + 8:30 - MAT 1932 Mar # Manchuria + 8:00 - CST 1940 + 9:00 - KST 1966 May + 8:30 - MAT 1980 May + 8:00 PRC C%sT Zone Asia/Shanghai 8:05:52 - LMT 1928 8:00 Shang C%sT 1949 8:00 PRC C%sT +Zone Asia/Chungking 7:06:20 - LMT 1928 + 7:00 - ICT 1980 May + 8:00 PRC C%sT +Zone Asia/Urumqi 5:50:20 - LMT 1928 + 6:00 - URT 1980 May # Urumqi + 8:00 PRC C%sT +Zone Asia/Kashgar 5:03:56 - LMT 1928 + 5:30 - ETT 1940 # Eastern Turkestan + 5:00 - ETT 1980 May + 8:00 PRC C%sT ############################################################################### @@ -211,8 +231,6 @@ Zone Asia/Taipei 8:06:00 - LMT 1896 ############################################################################### # Hong Kong -# Presumably Hong Kong will have DST again when it merges with China, -# but it's too early to predict the details. # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S Rule HK 1904 only - Oct 30 0:00 0 - Rule HK 1946 only - Apr 20 3:30 1:00 S @@ -235,8 +253,6 @@ Zone Asia/Hong_Kong 7:36:36 - LMT 1904 Oct 30 8:00 HK HK%sT # Macao -# Presumably Macao will have DST again when it merges with China, -# but it's too early to predict the details. # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S Rule Macao 1912 only - Jan 1 0:00 0 S Rule Macao 1961 1962 - Mar Sun>=16 3:30 1:00 D @@ -281,12 +297,20 @@ Zone Asia/Nicosia 2:13:28 - LMT 1921 Nov 14 # Today's _Economist_ (p 60) reports that Georgia moved its clocks forward # an hour recently, due to a law proposed by Zurab Murvanidze, # an MP who went on a hunger strike for 11 days to force discussion about it! -# Alas, we have no details. +# We have no details, but we'll guess they didn't move the clocks back in fall. +# +# From Paul Eggert (1995-11-13): +# usno1995 has Georgia at 4:00. Guess that Georgia stopped transitions +# after spring 1994 (thus sticking at 4:00). +# Most likely we're still missing some rule changes between 1991 and 1994. # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Asia/Tbilisi 2:59:16 - LMT 1880 2:59 - LST 1924 May 2 - 3:00 - MSK 1957 Mar - 4:00 Russia BS%s + 3:00 - TBSK 1957 Mar + 4:00 Russia TBS%s 1991 Mar 31 2:00s + 3:00 1:00 TBSD 1991 Sep 29 2:00s + 3:00 Russia TBS%s 1994 Sep 25 2:00s + 4:00 - TBSK # India # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -323,26 +347,12 @@ Zone Asia/Jayapura 9:22:48 - LMT 1932 Nov 9:00 - MLT # Iran - -# Shanks has no record of DST after 1980. - -# 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 - -# From Shanks (1991), with corrections from Devine: # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S Rule Iran 1977 only - Nov 1 0:00 0 S Rule Iran 1978 1980 - Mar 21 0:00 1:00 D Rule Iran 1978 only - Oct 21 0:00 0 S Rule Iran 1979 only - Sep 19 0:00 0 S Rule Iran 1980 only - Sep 23 0:00 0 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 FORMAT [UNTIL] Zone Asia/Tehran 3:25:44 - LMT 1916 3:26 - TMT 1946 @@ -428,7 +438,7 @@ Rule Zion 1988 only - Sep 3 0:00 0 S #Rule Zion 1991 only - Mar 10 0:00 1:00 D #Rule Zion 1991 only - Sep 1 0:00 0 S -# From Ephraim Silverberg (September 5, 1993): +# From Ephraim Silverberg (1996-01-02): # # According to the Office of the Secretary General of the Ministry of # Interior, there is NO set rule for Daylight-Savings/Standard time changes. @@ -437,8 +447,13 @@ Rule Zion 1988 only - Sep 3 0:00 0 S # on the party the Minister of Interior, the size of the coalition # government, the phase of the moon and the direction of the wind. Hence, # changes may need to be made on a semi-annual basis. One thing is entrenched -# in law, however: that there must be at least 150 days on daylight savings -# time annually. +# in law, however: that there must be at least 150 days of daylight savings +# time annually. Ever since 1993, the change to daylight savings time has +# been from midnight Thursday night to 1 a.m. Friday morning and the change +# back to standard time on Saturday night from midnight daylight savings time +# to 11 p.m. standard time. 1996 is an exception to this rule where the +# change back to standard time takes place on Sunday night instead of Saturday +# night to avoid conflicts with the Jewish New Year. # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S Rule Zion 1989 only - Apr 30 0:00 1:00 D @@ -452,26 +467,39 @@ Rule Zion 1992 only - Sep 6 0:00 0:00 S Rule Zion 1993 only - Apr 2 0:00 1:00 D Rule Zion 1993 only - Sep 5 0:00 0:00 S -# The dates for 1994-1995 were obtained from Office of the Spokeswoman for -# the Ministry of Interior, Jerusalem. There are no dates yet for 1996 and -# beyond so your guess is as good as theirs (those who are interested can -# call 972-2-701411 and ask for the spokeswoman). +# The dates for 1994-1995 were obtained from Office of the Spokeswoman for the +# Ministry of Interior, Jerusalem, Israel. The spokeswoman can be reached by +# calling the switchboard at 972-2-701411 and asking for the spokeswoman. # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S Rule Zion 1994 only - Apr 1 0:00 1:00 D Rule Zion 1994 only - Aug 28 0:00 0:00 S Rule Zion 1995 only - Mar 31 0:00 1:00 D -# On 1995-03-13 Ephraim Silverberg corrected the next line from Aug 27 to Sep 3. Rule Zion 1995 only - Sep 3 0:00 0:00 S -# From Ephraim Silverberg (1995-03-13): -# The Spokeswoman's office confirmed that there are not yet any dates -# for the timezone conversion for the years 1996 and beyond yet -# and this is one of the things the newly-appointed Minister of Interior -# will have to decide sometime this year. +# The dates for 1996-1998 were also obtained from Office of the Spokeswoman +# for the Ministry of Interior, Jerusalem, Israel. The official announcement +# can be viewed (in Hebrew) at the following URL: +# +# ftp://ftp.huji.ac.il/pub/misc/timezones/announcements/1996-1998.ps.gz +# +# Emptor Caveat: The dates for the years 1996-1998 were originally announced +# on August 31, 1995, by the previous Minister of Interior. The new Minister +# of Interior changed the dates on January 1, 1996, to take into account the +# desires of certain portions of Israeli society (the next election is in the +# Fall of 1996). After this (1996) year's Daylight Savings Time is over, the +# new minister has announced that a study will be conducted as to the wishes of +# the populace regarding the length of Daylight Savings Time and the Interior +# Committee will meet to review the results of the study and make any necessary +# changes to the 1997-1998 dates. Never a dull moment in the State of Israel. + +# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S +Rule Zion 1996 1998 - Mar Fri>=14 0:00 1:00 D +Rule Zion 1996 only - Sep 16 0:00 0:00 S +Rule Zion 1997 1998 - Oct Sun>=14 0:00 0:00 S # Zone NAME GMTOFF RULES FORMAT [UNTIL] -Zone Asia/Tel_Aviv 2:19:04 - LMT 1880 +Zone Asia/Jerusalem 2:20:56 - LMT 1880 2:21 - JMT 1918 2:00 Zion I%sT @@ -511,12 +539,11 @@ Zone Asia/Tokyo 9:19:04 - LMT 1896 # 9:00 Japan J%sT # and uncomment the two `Rule' lines commented out above. -# From Paul Eggert (November 18, 1993): +# From Paul Eggert (1995-12-19): # Shanks says that the far southern Ryukyu Is (Nansei-Shoto) are 8:00, -# but we don't have a good location name for them; -# we don't even know the name of the principal town. +# but we haven't confirmed this. # Zone NAME GMTOFF RULES FORMAT [UNTIL] -#Zone Asia/South_Ryukyu 8:14:44 - LMT 1896 # Amitori +#Zone Asia/Ishigaki 8:16:36 - LMT 1896 # 8:00 - CST # There is no information for Marcus. # Other Japanese possessions are probably like Asia/Tokyo. @@ -552,14 +579,18 @@ Zone Asia/Amman 2:23:44 - LMT 1931 # From Shanks (1991): # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Asia/Alma-Ata 5:07:48 - LMT 1924 May 2 - 5:00 - TSK 1957 Mar - 6:00 Russia TS%s + 5:00 - AASK 1957 Mar + 6:00 Russia AAS%s +# Shanks has Alma-Ata switching to 5:00 in 1991, +# but usno1995 has Kazakhstan at 6:00. Ignore the 1991 switch for now. # Kirgizstan # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Asia/Bishkek 4:58:24 - LMT 1924 May 2 - 5:00 - TSK 1957 Mar - 6:00 Russia TS%s + 5:00 - FSK 1957 Mar # Frunze + 6:00 Russia FS%s 1991 Mar 31 2:00s + 5:00 1:00 FSD 1991 Sep 29 2:00s + 5:00 Russia BS%s ############################################################################### @@ -708,6 +739,9 @@ Zone Asia/Gaza 2:17:52 - LMT 1900 Oct 2:00 Zion I%sT # This will undoubtedly change soon. +# Paracel Is +# no information + # Philippines # Howse writes (p 162) that until 1844 the Philippines kept American date. # The rest of this data is from Shanks. @@ -748,6 +782,9 @@ Zone Asia/Singapore 6:55:24 - LMT 1880 7:30 - SGT 1982 May 8:00 - SGT +# Spratly Is +# no information + # Sri Lanka # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Asia/Colombo 5:19:24 - LMT 1880 @@ -790,8 +827,11 @@ Zone Asia/Damascus 2:25:12 - LMT 1920 # Tajikistan # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Asia/Dushanbe 4:35:12 - LMT 1924 May 2 - 5:00 - TSK 1957 Mar - 6:00 Russia TS%s + 5:00 - DSK 1957 Mar + 6:00 Russia DS%s 1991 + 6:00 - DSK +# Shanks has Dushanbe at 5:00 (6:00 summer) after 1991 Sep 29 3:00, +# but usno1995 has it at 6:00. Go with usno1995. # Thailand # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -803,7 +843,10 @@ Zone Asia/Bangkok 6:42:04 - LMT 1880 # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Asia/Ashkhabad 3:53:32 - LMT 1924 May 2 4:00 - ASK 1957 Mar - 5:00 Russia AS%s + 5:00 Russia AS%s 1991 + 5:00 - ASK +# Shanks has Ashkhabad at 4:00 (5:00 summer) after 1991 Sep 20 3:00, +# but usno has it at 5:00. Go with usno1995. # United Arab Emirates # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -814,7 +857,11 @@ Zone Asia/Dubai 3:41:12 - LMT 1920 # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Asia/Tashkent 4:37:12 - LMT 1924 May 2 5:00 - TSK 1957 Mar - 6:00 Russia TS%s + 6:00 Russia TS%s 1991 Mar 31 2:00s + 5:00 1:00 TSD 1991 Sep 29 2:00s + 5:00 - TSK +# Shanks has Tashkent using DST after 1991, but usno1995 says they don't. +# Go with usno1995. # Vietnam # From Paul Eggert (November 18, 1993): diff --git a/share/zoneinfo/australasia b/share/zoneinfo/australasia index f9cde45..8c92a5b 100644 --- a/share/zoneinfo/australasia +++ b/share/zoneinfo/australasia @@ -1,4 +1,4 @@ -# @(#)australasia 7.21 +# @(#)australasia 7.25 # This file also includes Pacific islands. # Notes are at the end of this file @@ -28,122 +28,132 @@ Zone Australia/Darwin 8:43:20 - LMT 1895 Feb # Western Australia Zone Australia/Perth 7:43:24 - LMT 1895 Dec 8:00 - WST 1917 Jan 1 0:01 - 8:00 Aus WST 1974 Oct lastSun 2:00 - 8:00 1:00 WST 1975 Mar Sun>=1 3:00 - 8:00 - WST 1983 Oct lastSun 2:00 - 8:00 1:00 WST 1984 Mar Sun>=1 3:00 - 8:00 - WST 1991 Nov 17 2:00 - 8:00 1:00 WST 1992 Mar Sun>=1 3:00 + 8:00 Aus WST 1974 Oct lastSun 2:00s + 8:00 1:00 WST 1975 Mar Sun>=1 2:00s + 8:00 - WST 1983 Oct lastSun 2:00s + 8:00 1:00 WST 1984 Mar Sun>=1 2:00s + 8:00 - WST 1991 Nov 17 2:00s + 8:00 1:00 WST 1992 Mar Sun>=1 2:00s 8:00 - WST # Queensland Zone Australia/Brisbane 10:12:08 - LMT 1895 10:00 - EST 1917 Jan 1 0:01 - 10:00 Aus EST 1971 Oct lastSun 2:00 - 10:00 1:00 EST 1972 Feb lastSun 3:00 - 10:00 - EST 1989 Oct lastSun 2:00 - 10:00 1:00 EST 1990 Mar Sun>=1 3:00 - 10:00 - EST 1990 Oct lastSun 2:00 - 10:00 1:00 EST 1991 Mar Sun>=1 3:00 - 10:00 - EST 1991 Oct lastSun 2:00 - 10:00 1:00 EST 1992 Mar Sun>=1 3:00 + 10:00 Aus EST 1971 Oct lastSun 2:00s + 10:00 1:00 EST 1972 Feb lastSun 2:00s + 10:00 - EST 1989 Oct lastSun 2:00s + 10:00 1:00 EST 1990 Mar Sun>=1 2:00s + 10:00 - EST 1990 Oct lastSun 2:00s + 10:00 1:00 EST 1991 Mar Sun>=1 2:00s + 10:00 - EST 1991 Oct lastSun 2:00s + 10:00 1:00 EST 1992 Mar Sun>=1 2:00s 10:00 - EST # South Australia # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule AS 1971 1985 - Oct lastSun 2:00 1:00 - -Rule AS 1986 only - Oct 19 2:00 1:00 - -Rule AS 1987 max - Oct lastSun 2:00 1:00 - -Rule AS 1972 only - Feb 27 3:00 0 - -Rule AS 1973 1985 - Mar Sun>=1 3:00 0 - -Rule AS 1986 1989 - Mar Sun>=15 3:00 0 - -Rule AS 1990 1994 even Mar Sun>=18 3:00 0 - -Rule AS 1990 1994 odd Mar Sun>=1 3:00 0 - -Rule AS 1995 max - Mar lastSun 3:00 0 - +Rule AS 1971 1985 - Oct lastSun 2:00s 1:00 - +Rule AS 1986 only - Oct 19 2:00s 1:00 - +Rule AS 1987 max - Oct lastSun 2:00s 1:00 - +Rule AS 1972 only - Feb 27 2:00s 0 - +Rule AS 1973 1985 - Mar Sun>=1 2:00s 0 - +Rule AS 1986 1989 - Mar Sun>=15 2:00s 0 - +Rule AS 1990 1994 even Mar Sun>=18 2:00s 0 - +Rule AS 1990 1994 odd Mar Sun>=1 2:00s 0 - +Rule AS 1995 max - Mar lastSun 2:00s 0 - # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Australia/Adelaide 9:14:20 - LMT 1895 Feb 9:00 - CST 1899 May 9:30 - CST 1917 Jan 1 0:01 - 9:30 Aus CST 1971 Oct lastSun 2:00 + 9:30 Aus CST 1971 Oct lastSun 2:00s 9:30 AS CST # Tasmania # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule AT 1967 only - Oct 1 2:00 1:00 - -Rule AT 1968 only - Mar 31 3:00 0 - -Rule AT 1968 1985 - Oct lastSun 2:00 1:00 - -Rule AT 1969 1971 - Mar Sun>=8 3:00 0 - -Rule AT 1972 only - Feb 27 3:00 0 - -Rule AT 1973 1981 - Mar Sun>=1 3:00 0 - -Rule AT 1982 1983 - Mar lastSun 3:00 0 - -Rule AT 1984 1986 - Mar Sun>=1 3:00 0 - -Rule AT 1986 only - Oct 19 2:00 1:00 - -Rule AT 1987 1990 - Mar Sun>=15 3:00 0 - -Rule AT 1987 1990 - Oct lastSun 2:00 1:00 - -Rule AT 1991 max - Oct Sun>=1 2:00 1:00 - -Rule AT 1991 max - Mar lastSun 3:00 0 - +Rule AT 1967 only - Oct 1 2:00s 1:00 - +Rule AT 1968 only - Mar 31 2:00s 0 - +Rule AT 1968 1985 - Oct lastSun 2:00s 1:00 - +Rule AT 1969 1971 - Mar Sun>=8 2:00s 0 - +Rule AT 1972 only - Feb 27 2:00s 0 - +Rule AT 1973 1981 - Mar Sun>=1 2:00s 0 - +Rule AT 1982 1983 - Mar lastSun 2:00s 0 - +Rule AT 1984 1986 - Mar Sun>=1 2:00s 0 - +Rule AT 1986 only - Oct 19 2:00s 1:00 - +Rule AT 1987 1990 - Mar Sun>=15 2:00s 0 - +Rule AT 1987 1990 - Oct lastSun 2:00s 1:00 - +Rule AT 1991 max - Oct Sun>=1 2:00s 1:00 - +Rule AT 1991 max - Mar lastSun 2:00s 0 - # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Australia/Hobart 9:49:16 - LMT 1895 Sep 10:00 - EST 1917 Jan 1 0:01 - 10:00 Aus EST 1967 Oct 1 2:00 + 10:00 Aus EST 1967 Oct 1 2:00s 10:00 AT EST # Victoria # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule AV 1971 1985 - Oct lastSun 2:00 1:00 - -Rule AV 1972 only - Feb 27 3:00 0 - -Rule AV 1973 1985 - Mar Sun>=1 3:00 0 - -Rule AV 1986 1990 - Mar Sun>=15 3:00 0 - -Rule AV 1986 only - Oct 19 2:00 1:00 - -Rule AV 1987 max - Oct lastSun 2:00 1:00 - -Rule AV 1991 1994 - Mar Sun>=1 3:00 0 - -Rule AV 1995 max - Mar lastSun 3:00 0 - +Rule AV 1971 1985 - Oct lastSun 2:00s 1:00 - +Rule AV 1972 only - Feb 27 2:00s 0 - +Rule AV 1973 1985 - Mar Sun>=1 2:00s 0 - +Rule AV 1986 1990 - Mar Sun>=15 2:00s 0 - +Rule AV 1986 only - Oct 19 2:00s 1:00 - +Rule AV 1987 max - Oct lastSun 2:00s 1:00 - +Rule AV 1991 1994 - Mar Sun>=1 2:00s 0 - +Rule AV 1995 max - Mar lastSun 2:00s 0 - # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Australia/Melbourne 9:39:52 - LMT 1895 Feb 10:00 - EST 1917 Jan 1 0:01 - 10:00 Aus EST 1971 Oct 31 2:00 + 10:00 Aus EST 1971 Oct 31 2:00s 10:00 AV EST # New South Wales # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule AN 1971 1985 - Oct lastSun 2:00 1:00 - -Rule AN 1972 only - Feb 27 3:00 0 - -Rule AN 1973 1985 - Mar Sun>=1 3:00 0 - -Rule AN 1986 1989 - Mar Sun>=15 3:00 0 - -Rule AN 1986 only - Oct 19 2:00 1:00 - -Rule AN 1987 max - Oct lastSun 2:00 1:00 - -Rule AN 1990 max - Mar Sun>=1 3:00 0 - +Rule AN 1971 1985 - Oct lastSun 2:00s 1:00 - +Rule AN 1972 only - Feb 27 2:00s 0 - +Rule AN 1973 1981 - Mar Sun>=1 2:00s 0 - +Rule AN 1982 only - Apr Sun>=1 2:00s 0 - +Rule AN 1983 1985 - Mar Sun>=1 2:00s 0 - +Rule AN 1986 1989 - Mar Sun>=15 2:00s 0 - +Rule AN 1986 only - Oct 19 2:00s 1:00 - +Rule AN 1987 max - Oct lastSun 2:00s 1:00 - +Rule AN 1990 1995 - Mar Sun>=1 2:00s 0 - +Rule AN 1996 max - Mar lastSun 2:00s 0 - # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Australia/Sydney 10:04:52 - LMT 1895 Feb 10:00 - EST 1917 Jan 1 0:01 - 10:00 Aus EST 1971 Oct 31 2:00 + 10:00 Aus EST 1971 Oct 31 2:00s 10:00 AN EST Zone Australia/Broken_Hill 9:25:48 - LMT 1895 Feb 10:00 - EST 1896 Aug 23 9:00 - CST 1899 May 9:30 - CST 1917 Jan 1 0:01 - 9:30 Aus CST 1971 Oct 31 2:00 + 9:30 Aus CST 1971 Oct 31 2:00s 9:30 AN CST -# Australian Capital Territory -# Zone NAME GMTOFF RULES FORMAT [UNTIL] -Zone Australia/Canberra 9:56:32 - LMT 1895 Feb - 10:00 - EST 1917 Jan 1 0:01 - 10:00 Aus EST 1971 Oct 31 2:00 - 10:00 AN EST 1981 Oct 25 2:00 - 10:00 1:00 EST 1982 Apr 4 3:00 - 10:00 AN EST +# Lord Howe Island +# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S +Rule LH 1981 1984 - Oct lastSun 2:00s 1:00 - +Rule LH 1982 1985 - Mar Sun>=1 2:00s 0 - +Rule LH 1985 only - Oct lastSun 2:00s 0:30 - +Rule LH 1986 1989 - Mar Sun>=15 2:00s 0 - +Rule LH 1986 only - Oct 19 2:00s 0:30 - +Rule LH 1987 max - Oct lastSun 2:00s 0:30 - +Rule LH 1990 1995 - Mar Sun>=1 2:00s 0 - +Rule LH 1996 max - Mar lastSun 2:00s 0 - +Zone Australia/Lord_Howe 10:36:20 - LMT 1895 Feb + 10:00 - EST 1981 Mar + 10:30 LH LHST # Australian miscellany # Zone NAME GMTOFF RULES FORMAT [UNTIL] -Zone Australia/Lord_Howe 10:36:20 - LMT 1895 Feb - 10:00 - EST 1981 Mar - 10:30 AN LHST Zone Indian/Christmas 7:02:52 - LMT 1895 Feb 7:00 - JVT # # Ashmore Is, Cartier +# no indigenous inhabitants; only seasonal caretakers # no information; probably like Australia/Perth # +# Coral Sea Is +# no indigenous inhabitants; only meteorologists +# no information +# # Macquarie, Manihiki, Penrhyn, Rakehanga # no information @@ -183,24 +193,66 @@ Zone Pacific/Guam 9:39:00 - LMT 1901 # Agana 10:00 - GST # Howland, Baker -# no information; probably like Pacific/Samoa +# uninhabited since World War II +# no information; was probably like Pacific/Pago_Pago # Jarvis -# no information; probably like Pacific/Kiritimati +# uninhabited since 1958 +# no information; was probably like Pacific/Kiritimati # Johnston -# no information; probably like Pacific/Honolulu +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone Pacific/Johnston -10:00 - HST + +# Kingman +# uninhabited # Kiribati +# From Paul Eggert (1996-01-22): +# Today's _Wall Street Journal_ (page 1) reports that Kiribati +# ``declared it the same day throught the country as of Jan. 1, 1995'' +# as part of the competition to be first into the 21st century. # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki 12:00 - NZST Zone Pacific/Enderbury -11:24:20 - LMT 1901 -12:00 - KJT 1979 Oct - -11:00 - SST + -11:00 - SST 1995 + 13:00 - TGT Zone Pacific/Kiritimati -10:29:20 - LMT 1901 -10:40 - LIT 1979 Oct # Line Is Time - -10:00 - THT + -10:00 - THT 1995 + 14:00 - KRT + +# N Mariana Is +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone Pacific/Saipan 9:43:00 - LMT 1901 + 9:00 - PLT 1969 Oct + 10:00 - GST + +# Marshall Is +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone Pacific/Majuro 11:24:48 - LMT 1901 + 11:00 - NCST 1969 Oct + 12:00 - NZST +Zone Pacific/Kwajalein 11:09:20 - LMT 1901 + 11:00 - NCST 1969 Oct + -12:00 - KJT 1993 Aug 20 + 12:00 - NZST + +# Micronesia +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone Pacific/Yap 9:12:32 - LMT 1901 # Colonia + 9:00 - PLT 1969 Oct + 10:00 - GST +Zone Pacific/Truk 10:07:08 - LMT 1901 + 10:00 - GST 1978 Oct + 11:00 - NCST +Zone Pacific/Ponape 10:32:52 - LMT 1901 # Kolonia + 11:00 - NCST +Zone Pacific/Kosrae 10:51:56 - LMT 1901 + 11:00 - NCST 1969 Oct + 12:00 - NZST # Nauru # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -228,15 +280,16 @@ Zone Pacific/Noumea 11:05:48 - LMT 1912 Jan 13 Rule NZ 1868 only - Jan 1 0:00 0 S # Shanks gives 1927 Nov 6 - 1928 Mar 4, 1928 Oct 14 - 1929 Mar 17, # 1929 Oct 13 - 1930 Mar 16; go with Whitman. -Rule NZ 1927 only - Nov 26 2:00 1:00 D +Rule NZ 1927 only - Nov 26 2:00 0:30 HD Rule NZ 1928 1929 - Mar Sun>=1 2:00 0 S -Rule NZ 1928 only - Nov 4 2:00 1:00 D -Rule NZ 1929 only - Oct 30 2:00 1:00 D +Rule NZ 1928 only - Nov 4 2:00 0:30 HD +Rule NZ 1929 only - Oct 30 2:00 0:30 HD Rule NZ 1930 1933 - Mar Sun>=15 2:00 0 S -Rule NZ 1930 1933 - Oct Sun>=8 2:00 1:00 D -# Shanks says DST stopped 1940 Sep lastSun; go with Whitman for war years. -Rule NZ 1934 1944 - Apr lastSun 2:00 0 S -Rule NZ 1934 1944 - Sep lastSun 2:00 1:00 D +Rule NZ 1930 1933 - Oct Sun>=8 2:00 0:30 HD +# Whitman says DST went on and off during war years, and the base GMT offset +# didn't change until 1945 Apr 30; go with Shanks. +Rule NZ 1934 1940 - Apr lastSun 2:00 0 S +Rule NZ 1934 1939 - Sep lastSun 2:00 0:30 HD Rule NZ 1974 only - Nov 3 2:00s 1:00 D Rule NZ 1975 1988 - Oct lastSun 2:00s 1:00 D Rule NZ 1989 only - Oct 8 2:00s 1:00 D @@ -246,11 +299,9 @@ Rule NZ 1976 1989 - Mar Sun>=1 2:00s 0 S Rule NZ 1990 max - Mar Sun>=15 2:00s 0 S # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Pacific/Auckland 11:39:04 - LMT 1868 - # Shanks gives 1940 Sep 29 2:00; - # go with Whitman. - 11:30 NZ NZ%sT 1945 Apr 29 2:00 + 11:30 NZ NZ%sT 1940 Sep 29 2:00 12:00 NZ NZ%sT -Zone Pacific/Chatham 12:45 - NZ-CHAT +Zone Pacific/Chatham 12:45 NZ CH%sT # Antipodes Is, Kermadec Is @@ -272,31 +323,13 @@ Zone Pacific/Norfolk 11:11:52 - LMT 1901 # Kingston 11:12 - NMT 1951 11:30 - NRFT -# Pacific Islands Trust Territories -# Zone NAME GMTOFF RULES FORMAT [UNTIL] -Zone Pacific/Majuro 11:24:48 - LMT 1901 - 11:00 - NCST 1969 Oct - 12:00 - NZST -Zone Pacific/Kwajalein 11:09:20 - LMT 1901 - 11:00 - NCST 1969 Oct - -12:00 - KJT 1993 Aug 20 - 12:00 - NZST -Zone Pacific/Truk 10:07:08 - LMT 1901 - 10:00 - GST 1978 Oct - 11:00 - NCST -Zone Pacific/Ponape 10:33:00 - LMT 1901 - 11:00 - NCST -Zone Pacific/Yap 9:12:24 - LMT 1901 - 9:00 - PLT 1969 Oct - 10:00 - GST - # Palau # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Pacific/Palau 8:57:56 - LMT 1901 # Koror 9:00 - PLT # Palmyra -# no information; probably like Pacific/Kiritmati +# uninhabited since World War II; was probably like Pacific/Kiritmati # Papua New Guinea # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -309,6 +342,20 @@ Zone Pacific/Port_Moresby 9:48:40 - LMT 1880 Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown -8:30 - PIT +# American Samoa +Zone Pacific/Pago_Pago 12:37:12 - LMT 1879 Jul 5 + -11:22:48 - LMT 1911 + -11:30 - SST 1950 + -11:00 - NST 1967 Apr # N=Nome + -11:00 - BST 1983 Nov 30 # B=Bering + -11:00 - SST # S=Samoa + +# W Samoa +Zone Pacific/Apia 12:33:04 - LMT 1879 Jul 5 + -11:26:56 - LMT 1911 + -11:30 - SST 1950 + -11:00 - SST + # Solomon Is # excludes Bougainville, for which see Papua New Guinea # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -321,6 +368,10 @@ Zone Pacific/Fakaofo -11:24:56 - LMT 1901 -10:00 - THT # Tonga +# From Paul Eggert (1996-01-22): +# Today's _Wall Street Journal_ (page 1) reports that ``Tonga has been plotting +# to sneak ahead of [New Zealanders] by introducing daylight-saving time.'' +# But since Kiribati has moved the Date Line it's not clear what Tonga will do. # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Pacific/Tongatapu 12:19:20 - LMT 1901 12:20 - TMT 1968 Oct @@ -335,9 +386,11 @@ Zone Pacific/Funafuti 11:56:52 - LMT 1901 # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S Rule Vanuatu 1912 only - Jan 13 0:00 0 S Rule Vanuatu 1983 only - Sep 25 0:00 1:00 D -Rule Vanuatu 1984 max - Mar Sun>=23 0:00 0 S +Rule Vanuatu 1984 1991 - Mar Sun>=23 0:00 0 S Rule Vanuatu 1984 only - Oct 23 0:00 1:00 D -Rule Vanuatu 1985 max - Sep Sun>=23 0:00 1:00 D +Rule Vanuatu 1985 1990 - Sep Sun>=23 0:00 1:00 D +Rule Vanuatu 1991 max - Sep lastSun 0:00 1:00 D +Rule Vanuatu 1992 max - Mar lastSun 0:00 0 S # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila 11:00 - NCST @@ -352,9 +405,6 @@ Zone Pacific/Wake 11:06:28 - LMT 1901 Zone Pacific/Wallis 12:15:20 - LMT 1901 12:00 - NZST -# Western Samoa -# See Pacific/Samoa in the `northamerica' file, of all places. - ############################################################################### # NOTES @@ -363,7 +413,7 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901 # go ahead and edit the file (and please send any changes to # tz@elsie.nci.nih.gov for general use in the future). -# From Paul Eggert (August 18, 1994): +# From Paul Eggert (1996-01-22); # A good source for time zone historical data outside the U.S. is # Thomas G. Shanks, The International Atlas (3rd edition), # San Diego: ACS Publications, Inc. (1991). @@ -394,17 +444,19 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901 # 11:00 NCST NCDT New Caledonia* # 11:30 NRFT Norfolk* # 12:00 NZST NZDT New Zealand -# 12:45 NZ-CHAT Chatham +# 12:45 CHST CHDT Chatham* # 13:00 TGT Tongatapu* +# 14:00 KRT Kiritimati* # -12:00 KJT Kwajalein (no longer used)* # -11:00 SST Samoa # -10:40 LIT Line Is (no longer used)* # -10:00 THT Tahiti* +# -10:00 HST Hawaii # - 9:30 MQT Marquesas* # - 9:00 GBT Gambier* # - 8:30 PIT Pitcairn* # -# See the `northamerica' file for Hawaii and Samoa. +# See the `northamerica' file for Hawaii. # See the `southamerica' file for Easter I and the Galapagos Is. # # See the `africa' file for Zone naming conventions. @@ -437,16 +489,13 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901 # WST for any place operating at a GMTOFF of 8:00 # EST for any place operating at a GMTOFF of 10:00 -# From Paul Eggert (November 8, 1994): +# From Paul Eggert (1995-12-19): # Shanks reports 2:00 for all autumn changes in Australia and New Zealand. # Mark Prior writes that his newspaper # reports that NSW's fall 1995 change will occur at 2:00, # but Robert Elz says it's been 3:00 in Victoria since 1970 # and perhaps the newspaper's `2:00' is referring to standard time. -# And Robert Uzgalis says that the New Zealand Daylight -# Savings Time Order in Council dated 1990-06-18 specifies 2:00 standard -# time on both the first Sunday in October and the third Sunday in March. -# For now we'll continue to assume 3:00 for changes since 1970. +# For now we'll continue to assume 2:00s for changes since 1960. # Northern Territory @@ -701,6 +750,10 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901 # Sources differ on whether DST ended March 6 or March 20 in 1988; # March 20 (the "confirmed" date) is in the chosen rules. +# From Bradley White (1995-05-20): +# Prem Bob Carr announced NSW will fall into line with other E states +# and SA and continue daylight savings to the last Sun in Mar. + # Yancowinna # From John Basser (January 4, 1989): @@ -730,6 +783,12 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901 # Lord Howe Island is located off the New South Wales coast, and is half an # hour ahead of NSW time. +# From Paul Eggert (1995-12-19): +# For Lord Howe we use Shanks through its time of publication (1991). +# Lord Howe is part of NSW, so we'll guess it has used the same transition +# times as NSW since 1991, even though Shanks writes that Lord Howe went +# with Victoria when NSW and Victoria disagreed in 1982. + ############################################################################### # New Zealand, from Elz' asia 1.1 @@ -759,6 +818,16 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901 # The chosen rules use the Davies October 8 values for the start of DST in 1989 # rather than the October 1 value. +# From Paul Eggert (1995-12-19); +# Shanks reports 2:00 for all autumn changes in Australia and New Zealand. +# Robert Uzgalis writes that the New Zealand Daylight +# Savings Time Order in Council dated 1990-06-18 specifies 2:00 standard +# time on both the first Sunday in October and the third Sunday in March. +# As with Australia, we'll assume the tradition is 2:00s, not 2:00. +# +# Shanks gives no data for Chatham, but usno1995 says it's +12:45/+13:45. +# Guess NZ switchover rules for now. + ############################################################################### # Fiji @@ -767,6 +836,10 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901 # enacted an ordinance standardizing the islands on +12:00. # Perhaps it didn't take. We go with Shanks's more precise date in 1915. +# Johnston + +# Johnston data is from usno1995. + # Kwajalein # In comp.risks 14.87 (26 August 1993), Peter Neumann writes: @@ -775,9 +848,16 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901 # respect to the International Date Line, to rejoin its fellow islands, # going from 11:59 p.m. Thursday to 12:00 m. Saturday in a blink. -# Pacific Islands Trust Territories +# N Mariana Is, Guam # Howse writes (p 162) ``The Spaniards, on the other hand, reached the # Philippines and the Ladrones from America,'' and implies that the Ladrones # (now called the Marianas) kept American date for quite some time. # Ignore this for now, as we have no hard data. See also Asia/Manila. + +# Samoa + +# Howse writes that in 1879 the King of Samoa decided to change +# ``the date in his kingdom from the Antipodean to the American system, +# ordaining -- by a masterpiece of diplomatic flattery -- that +# the Fourth of July should be celebrated twice in that year.'' diff --git a/share/zoneinfo/backward b/share/zoneinfo/backward index ff9784a..59fcffc 100644 --- a/share/zoneinfo/backward +++ b/share/zoneinfo/backward @@ -1,9 +1,15 @@ -# @(#)backward 7.9 +# @(#)backward 7.13 # This file provides links between current names for time zones # and their old names. Many names changed in late 1993. -Link Australia/Canberra Australia/ACT +Link America/Adak America/Atka +Link America/Indianapolis America/Fort_Wayne +Link America/Indiana/Knox America/Knox_IN +Link America/St_Thomas America/Virgin +Link Asia/Jerusalem Asia/Tel_Aviv +Link Australia/Sydney Australia/ACT +Link Australia/Sydney Australia/Canberra Link Australia/Lord_Howe Australia/LHI Link Australia/Sydney Australia/NSW Link Australia/Darwin Australia/North @@ -40,7 +46,7 @@ Link Etc/Greenwich Greenwich Link Asia/Hong_Kong Hongkong Link Atlantic/Reykjavik Iceland Link Asia/Tehran Iran -Link Asia/Tel_Aviv Israel +Link Asia/Jerusalem Israel Link America/Jamaica Jamaica Link Asia/Tokyo Japan Link Pacific/Kwajalein Kwajalein @@ -48,9 +54,10 @@ Link Africa/Tripoli Libya Link America/Tijuana Mexico/BajaNorte Link America/Mazatlan Mexico/BajaSur Link America/Mexico_City Mexico/General -Link America/Shiprock Navajo +Link America/Denver Navajo Link Pacific/Auckland NZ Link Pacific/Chatham NZ-CHAT +Link Pacific/Pago_Pago Pacific/Samoa Link Asia/Shanghai PRC Link Europe/Warsaw Poland Link Europe/Lisbon Portugal @@ -60,17 +67,17 @@ Link Asia/Singapore Singapore Link Europe/Istanbul Turkey Link Etc/UCT UCT Link America/Anchorage US/Alaska -Link America/Atka US/Aleutian +Link America/Adak US/Aleutian Link America/Phoenix US/Arizona Link America/Chicago US/Central -Link America/Fort_Wayne US/East-Indiana +Link America/Indianapolis US/East-Indiana Link America/New_York US/Eastern Link Pacific/Honolulu US/Hawaii -Link America/Knox_IN US/Indiana-Starke +Link America/Indiana/Knox US/Indiana-Starke Link America/Detroit US/Michigan Link America/Denver US/Mountain Link America/Los_Angeles US/Pacific -Link Pacific/Samoa US/Samoa +Link Pacific/Pago_Pago US/Samoa Link Etc/UTC UTC Link Etc/Universal Universal Link Europe/Moscow W-SU diff --git a/share/zoneinfo/europe b/share/zoneinfo/europe index a01124b..85c05ee 100644 --- a/share/zoneinfo/europe +++ b/share/zoneinfo/europe @@ -1,10 +1,10 @@ -# @(#)europe 7.17 +# @(#)europe 7.31 # 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 # tz@elsie.nci.nih.gov for general use in the future). -# From Paul Eggert (November 18, 1993): +# From Paul Eggert (1995-12-19): # A good source for time zone historical data outside the U.S. is # Thomas G. Shanks, The International Atlas (3rd edition), # San Diego: ACS Publications, Inc. (1991). @@ -32,17 +32,17 @@ # 2:00 EET+DST Eastern Europe # 3:00 MSK MSD Moscow # 3:00 TUR+DST Turkey (no longer used)* -# 4:00 KSK KSD Kuybyshev* -# 5:00 ESK ESD Yekaterinburg* -# 6:00 OSK OSD Omsk* -# 6:00 NSK NSD Novosibirsk (was 7:00 until 1994) -# 7:00 TSK TSD Tomsk* -# 8:00 ISK ISD Irkutsk* -# 9:00 YSK YSD Yakutsk* -# 10:00 VSK VSD Vladivostok* -# 11:00 GSK GSD Magadan* -# 12:00 PSK PSD Petropavlovsk-Kamchatski* -# 13:00 ASK ASD Anadyr* +# 4:00 KSK KSD Kuybyshev (was 3:00)* +# 5:00 ESK ESD Yekaterinburg (was 4:00) (was SSK, SSD)* +# 6:00 OSK OSD Omsk (was 5:00)* +# 6:00 NSK NSD Novosibirsk (was 7:00) +# 7:00 TSK TSD Tomsk (was 6:00)* +# 8:00 ISK ISD Irkutsk (was 7:00)* +# 9:00 YSK YSD Yakutsk (was 8:00)* +# 10:00 VSK VSD Vladivostok (was 9:00)* +# 11:00 MSK MSD Magadan (was 10:00)* +# 12:00 PSK PSD Petropavlovsk-Kamchatski (was 11:00)* +# 13:00 ASK ASD Anadyr (was 12:00)* # # See the `africa' file for Zone naming conventions. # @@ -54,7 +54,7 @@ # LST is Local Star Time (``mestnoe zvezdnoe vremya''). # From Peter Ilieve (December 4, 1994), -# The original six [EU members]: Belguim, France, (West) Germany, Italy, +# The original six [EU members]: Belgium, France, (West) Germany, Italy, # Luxembourg, the Netherlands. # Plus, from 1 Jan 73: Denmark, Ireland, United Kingdom. # Plus, from 1 Jan 81: Greece. @@ -65,9 +65,8 @@ # referendum in 1972, they are the only country to have said No twice. # Referendums in the other three countries voted Yes.) # ... -# The only [current nonmember using EU rules] I can speak for is Estonia, -# which uses EU dates but not at 01:00 GMT, they use midnight GMT. I don't -# think they know yet what they will do from 1996 onwards. +# Estonia ... uses EU dates but not at 01:00 GMT, they use midnight GMT. +# I don't think they know yet what they will do from 1996 onwards. # ... # There shouldn't be any [current members who are not using EU rules]. # A Directive has the force of law, member states are obliged to enact @@ -603,8 +602,8 @@ # seventh Summer Time Directive.... # From Peter Ilieve (March 28, 1994): -# The UK/Eire end date of 22 October [1995] conflicts with your current rule of -# Oct Sun>=23, and the historical UK formula of Sun after 4th Sat. +# The [GB-Eire] end date of 22 October [1995] conflicts with your current rule +# of Oct Sun>=23, and the historical UK formula of Sun after 4th Sat. # The last time 4th Sun and Sun after 4th Sat differed was in 1989, # when 29 October was used. That year was covered by a UK Summer Time Order # for only a single year and it looks as though there was a matching 4th EC @@ -895,10 +894,9 @@ Zone Europe/Minsk 1:50:16 - LMT 1880 3:00 Russia MS%s 1922 Oct 2:00 - EET 1930 Jun 21 3:00 Russia MS%s 1991 Mar 31 2:00s -# From Paul Eggert (May 28, 1994): A guess at recent dates: 2:00 1:00 "EET DST" 1991 Sep 29 2:00s - 2:00 - EET 1992 Jan 19 2:00s - 3:00 Russia MS%s + 2:00 M-Eur EET%s +# This may change to `EC' soon. # Belgium # Whitman and Shanks disagree; go with Shanks, usually. @@ -1128,17 +1126,15 @@ Rule France 1944 only - Apr 3 2:00 2:00 " DDST" Rule France 1944 only - Oct 8 1:00 1:00 " DST" Rule France 1945 only - Apr 2 2:00 2:00 " DDST" Rule France 1945 only - Sep 16 3:00 0 - -# From Paul Eggert =13 22:00s 2:00 " DDST" Rule Spain 1943 only - Oct 3 22:00s 1:00 " DST" Rule Spain 1944 only - Oct 10 22:00s 1:00 " DST" Rule Spain 1945 only - Sep 30 1:00 1:00 " DST" +Rule Spain 1946 only - Sep 30 0:00 0 - Rule Spain 1949 only - Apr 30 23:00 1:00 " DST" Rule Spain 1949 only - Sep 30 1:00 0 - Rule Spain 1974 1975 - Apr Sat>=13 23:00 1:00 " DST" @@ -1980,6 +1968,16 @@ Zone Europe/Simferopol 2:16:24 - LMT 1880 2:00 M-Eur EET%s 1994 Mar 27 2:00s 3:00 Russia MS%s +# Yugoslavia +# They switched from the Julian to the Gregorian calendar on 1918 Mar 18. +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone Europe/Belgrade 1:22:00 - LMT 1884 + 1:00 - MET 1941 Apr 18 23:00 + 1:00 M-Eur MET%s 1945 May 8 2:00s + 1:00 1:00 "MET DST" 1945 Sep 16 2:00s + 1:00 - MET 1983 + 1:00 EC MET%s + ############################################################################### # One source shows that Bulgaria, Cyprus, Finland, and Greece observe DST from diff --git a/share/zoneinfo/northamerica b/share/zoneinfo/northamerica index 479f3fc..d142790 100644 --- a/share/zoneinfo/northamerica +++ b/share/zoneinfo/northamerica @@ -1,4 +1,4 @@ -# @(#)northamerica 7.15 +# @(#)northamerica 7.22 # also includes Central America and the Caribbean # This data is by no means authoritative; if you think you know better, @@ -14,25 +14,24 @@ # United States +# From Paul Eggert (1995-12-19): +# A good source for time zone historical data in the US is +# Thomas G. Shanks, The American Atlas (5th edition), +# San Diego: ACS Publications, Inc. (1991). +# Make sure you have the errata sheet; the book is somewhat useless without it. +# It is the source for the US and Puerto Rico entries below. + # From Arthur David Olson: # US Daylight Saving Time ended on the last Sunday of *October* in 1974. # See, for example, the front page of the Saturday, October 26, 1974 # and Sunday, October 27, 1974 editions of the Washington Post. -# From seismo!munnari!kre: -# I recall also being told by someone once that Canada didn't have -# the DST variations in 74/75 that the US did, but I am not nearly -# sure enough of this to add anything. - -# From Arthur David Olson: -# The above has been confirmed by Bob Devine; we'll go with it here. - # From Arthur David Olson: # Before the Uniform Time Act of 1966 took effect in 1967, observance of # Daylight Saving Time in the US was by local option, except during wartime. # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule US 1918 1919 - Mar lastSun 2:00 1:00 D +Rule US 1918 1919 - Mar lastSun 2:00 1:00 W # War Rule US 1918 1919 - Oct lastSun 2:00 0 S Rule US 1942 only - Feb 9 2:00 1:00 W # War Rule US 1945 only - Sep 30 2:00 0 S @@ -55,6 +54,10 @@ Rule US 1987 max - Apr Sun>=1 2:00 1:00 D # The YST zone now covers nearly all of the state, AHST just part # of the Aleutian islands. No DST. +# From Paul Eggert (1995-12-19): +# The tables below use `NST', not `NT', for Nome Standard Time. +# I invented `CAWT' for Central Alaska War Time. + # From U. S. Naval Observatory (January 19, 1989): # USA EASTERN 5 H BEHIND UTC NEW YORK, WASHINGTON # USA EASTERN 4 H BEHIND UTC APR 3 - OCT 30 @@ -110,90 +113,321 @@ Rule US 1987 max - Apr Sun>=1 2:00 1:00 D # Hawaii-Aleutian standard time # Samoa standard time # The law doesn't give abbreviations. +# +# From Paul Eggert (1995-12-19): +# Shanks uses 1983-10-30, not 1983-11-30, for the 1983 transitions. +# Go with Shanks. + +# US Eastern time, represented by New York +# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER +Rule NYC 1920 only - Mar lastSun 2:00 1:00 D +Rule NYC 1920 only - Oct lastSun 2:00 0 S +Rule NYC 1921 1966 - Apr lastSun 2:00 1:00 D +Rule NYC 1921 1954 - Sep lastSun 2:00 0 S +Rule NYC 1955 1966 - Oct lastSun 2:00 0 S +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone America/New_York -4:56:02 - LMT 1883 Nov 18 12:00 + -5:00 US E%sT 1920 + -5:00 NYC E%sT 1942 + -5:00 US E%sT 1946 + -5:00 NYC E%sT 1967 + -5:00 US E%sT -# From Paul Eggert (August 16, 1994): +# US Central time, represented by Chicago +# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER +Rule Chicago 1920 only - Jun 13 2:00 1:00 D +Rule Chicago 1920 1921 - Oct lastSun 2:00 0 S +Rule Chicago 1921 only - Mar lastSun 2:00 1:00 D +Rule Chicago 1922 1966 - Apr lastSun 2:00 1:00 D +Rule Chicago 1922 1954 - Sep lastSun 2:00 0 S +Rule Chicago 1955 1966 - Oct lastSun 2:00 0 S +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone America/Chicago -5:50:36 - LMT 1883 Nov 18 12:00 + -6:00 US C%sT 1920 + -6:00 Chicago C%sT 1936 Mar 1 2:00 + -5:00 - EST 1936 Nov 15 2:00 + -6:00 Chicago C%sT 1942 + -6:00 US C%sT 1946 + -6:00 Chicago C%sT 1967 + -6:00 US C%sT + +# US Mountain time, represented by Denver +# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER +Rule Denver 1920 1921 - Mar lastSun 2:00 1:00 D +Rule Denver 1920 only - Oct lastSun 2:00 0 S +Rule Denver 1921 only - May 22 2:00 0 S +Rule Denver 1965 1966 - Apr lastSun 2:00 1:00 D +Rule Denver 1965 1966 - Oct lastSun 2:00 0 S +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone America/Denver -6:59:56 - LMT 1883 Nov 18 12:00 + -7:00 US E%sT 1920 + -7:00 Denver E%sT 1942 + -7:00 US E%sT 1946 + -7:00 Denver E%sT 1967 + -7:00 US E%sT + +# US Pacific time, represented by Los Angeles +# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER +Rule CA 1948 only - Mar 14 2:00 1:00 D +Rule CA 1949 only - Jan 1 2:00 0 S +Rule CA 1950 1966 - Apr lastSun 2:00 1:00 D +Rule CA 1950 1961 - Sep lastSun 2:00 0 S +Rule CA 1962 1966 - Oct lastSun 2:00 0 S +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone America/Los_Angeles -7:52:58 - LMT 1883 Nov 18 12:00 + -8:00 US P%sT 1946 + -8:00 CA P%sT 1967 + -8:00 US P%sT + +# Alaska +# AK%sT is the modern abbreviation for -9:00 per USNO. +# +# From Paul Eggert (1995-12-19): # Howse writes that Alaska switched from the Julian to the Gregorian calendar, # and from east-of-GMT to west-of-GMT days, in 1867 when the US purchased it -# from Russia. We don't have this data pinned down yet, though. - -# Easy stuff first--including Alaska, where we ignore history (since we -# can't tell if we should give Yukon time or Alaska-Hawaii time for "old" -# times). - +# from Russia. We omit this transition, since we can't represent changes +# from Julian to Gregorian. +# # Zone NAME GMTOFF RULES FORMAT [UNTIL] -Zone America/New_York -5:00 US E%sT -Zone America/Chicago -6:00 US C%sT -Zone America/Denver -7:00 US M%sT -Zone America/Los_Angeles -8:00 US P%sT -Zone America/Anchorage -9:00 US AK%sT - # AK%sT is the abbreviation per USNO +Zone America/Juneau -8:57:41 - LMT 1900 Aug 20 12:00 + -8:00 - PST 1942 + -8:00 US P%sT 1946 + -8:00 - PST 1969 + -8:00 US P%sT 1983 Oct 30 2:00 + -9:00 US AK%sT +Zone America/Yakutat -9:18:55 - LMT 1900 Aug 20 12:00 + -9:00 - YST 1942 + -9:00 US Y%sT 1946 + -9:00 - YST 1969 + -9:00 US Y%sT 1983 Oct 30 2:00 + -9:00 US AK%sT +Zone America/Anchorage -9:59:36 - LMT 1900 Aug 20 12:00 + -10:00 - CAT 1942 + -10:00 US CAT/CAWT 1946 + -10:00 - CAT 1967 Apr + -10:00 - AHST 1969 + -10:00 US AH%sT 1983 Oct 30 2:00 + -9:00 US AK%sT +Zone America/Nome -11:01:38 - LMT 1900 Aug 20 12:00 + -11:00 - NST 1942 + -11:00 US N%sT 1946 + -11:00 - NST 1967 Apr + -11:00 - BST 1969 + -11:00 US B%sT 1983 Oct 30 2:00 + -9:00 US AK%sT +Zone America/Adak -11:46:38 - LMT 1900 Aug 20 12:00 + -11:00 - NST 1942 + -11:00 US N%sT 1946 + -11:00 - NST 1967 Apr + -11:00 - BST 1969 + -11:00 US B%sT 1983 Oct 30 2:00 + -10:00 US HA%sT +# Shanks writes that part of southwest Alaska (e.g. Aniak) +# switched from -11:00 to -10:00 on 1968-09-22 at 02:00, +# and another part (e.g. Akiak) made the same switch five weeks later. +# These switches don't quite make our 1970 cutoff. + +# Hawaii +# +# From Arthur David Olson: +# And then there's Hawaii. +# DST was observed for one day in 1933; +# standard time was changed by half an hour in 1947; +# it's always standard as of 1986. +# +# From Paul Eggert: +# Shanks says the 1933 experiment lasted for three weeks. Go with Shanks. +# +Zone Pacific/Honolulu -10:31:26 - LMT 1900 Jan 1 12:00 + -10:30 - HST 1933 Apr 30 2:00 + -10:30 1:00 HDT 1933 May 21 2:00 + -10:30 US H%sT 1947 Jun 8 2:00 + -10:00 - HST -# Mainland US areas that are always Standard as of 1986. +Zone Pacific/Midway -11:49:28 - LMT 1901 + -11:00 - NST 1967 Apr # N=Nome + -11:00 - BST 1983 Nov 30 # B=Bering + -11:00 - SST # S=Samoa -Zone America/Fort_Wayne -5:00 US E%sT 1946 - -5:00 - EST # Always EST as of 1986 -# From Arthur David Olson (October 28, 1991): -# An article on page A3 of the Sunday, October 27, 1991 Washington Post -# notes that Starke County switched from Central time to Eastern time as of -# October 27, 1991. -Zone America/Knox_IN -6:00 US C%sT 1991 Oct 27 2:00 - -5:00 - EST # Always EST as of 1991 -Zone America/Phoenix -7:00 US M%sT 1946 - -7:00 - MST # Always MST as of 1986 +# Now we turn to US areas that have diverged from the consensus since 1970. +# Arizona mostly uses MST. +Zone America/Phoenix -7:28:18 - LMT 1883 Nov 18 12:00 + -7:00 US M%sT 1944 Jan 1 00:01 + -7:00 - MST 1944 Mar 17 00:01 + -7:00 US M%sT 1944 Oct 1 00:01 + -7:00 - MST 1967 + -7:00 US M%sT 1968 + -7:00 - MST # From Arthur David Olson (February 13, 1988): -# However. . .a writer from the Inter Tribal Council of Arizona, Inc., +# A writer from the Inter Tribal Council of Arizona, Inc., # notes in private correspondence dated 12/28/87 that "Presently, only the # Navajo Nation participates in the Daylight Saving Time policy, due to its # large size and location in three states." (The "only" means that other # tribal nations don't use DST.) -Link America/Denver America/Shiprock +Link America/Denver America/Shiprock -# From Bob Devine (January 28, 1988): -# Michigan didn't observe DST from 1968 to 1973. - -Zone America/Detroit -5:00 US E%sT 1968 - -5:00 - EST 1973 - -5:00 US E%sT +# Southern Idaho and eastern Oregon switched four weeks late in 1974. +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone America/Boise -7:44:49 - LMT 1883 Nov 18 12:00 + -8:00 US P%sT 1923 May 13 2:00 + -7:00 US M%sT 1974 + -7:00 - MST 1974 Feb 3 2:00 + -7:00 US M%sT -# Samoa just changes names. No DST, per Naval Observatory. +# Indiana # -# Howse writes that in 1879 the King of Samoa decided to change -# ``the date in his kingdom from the Antipodean to the American system, -# ordaining -- by a masterpiece of diplomatic flattery -- that -# the Fourth of July should be celebrated twice in that year.'' - -Zone Pacific/Samoa 12:37:12 - LMT 1879 Jul 5 - -11:22:48 - LMT 1911 - -11:30 - SST 1950 - -11:00 - NST 1967 Apr # N=Nome - -11:00 - BST 1983 Nov 30 # B=Bering - -11:00 - SST # S=Samoa - -Zone Pacific/Midway -11:49:28 - LMT 1901 - -11:00 - NST 1967 Apr # N=Nome - -11:00 - BST 1983 Nov 30 # B=Bering - -11:00 - SST # S=Samoa - -# Aleutian has a name change. DST, per Naval Observatory. - -Zone America/Atka -10:00 US AH%sT 1983 Nov 30 - -10:00 US HA%sT +# From Paul Eggert (1995-12-19): +# Indiana generally observes either EST all year, or CST/CDT, +# but areas near Cincinnati and Louisville use those cities' timekeeping +# and in 1969 and 1970 the whole state observed daylight time; +# and there are other exceptions as noted below. +# Shanks partitions Indiana into 345 regions, each with its own time history, +# and writes ``Even newspaper reports present contradictory information.'' +# Fortunately, most of the complexity occurred before our cutoff date of 1970. +# +# Since 1970, EST-only Indiana has been like America/Indianapolis, +# with exceptions noted below for Crawford, Starke, and Switzerland counties. +# The parts of Indiana not listed below have been like America/Chicago, +# America/Louisville, or America/New_York. +# +# Other than Indianapolis, the Indiana place names are so nondescript +# that they would be ambiguous if we left them at the `America' level. +# So we reluctantly put them all in a subdirectory `America/Indiana'. +# +# Most of EST-only Indiana last observed DST in 1970. +# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER +Rule Indianapolis 1941 only - Jun 22 2:00 1:00 D +Rule Indianapolis 1941 1954 - Sep lastSun 2:00 0 S +Rule Indianapolis 1946 1954 - Apr lastSun 2:00 1:00 D +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone America/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:00 + -6:00 US C%sT 1920 + -6:00 Indianapolis C%sT 1942 + -6:00 US C%sT 1946 + -6:00 Indianapolis C%sT 1955 Apr 24 2:00 + -5:00 - EST 1957 Sep 29 2:00 + -6:00 - CST 1958 Apr 27 2:00 + -5:00 - EST 1969 + -5:00 US E%sT 1971 + -5:00 - EST +Link America/Indianapolis America/Indiana/Indianapolis +# +# Part of Crawford County, Indiana, last observed DST in 1975, +# and left its clocks alone in 1974. +# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER +Rule Marengo 1951 only - Apr lastSun 2:00 1:00 D +Rule Marengo 1951 only - Sep lastSun 2:00 0 S +Rule Marengo 1954 1960 - Apr lastSun 2:00 1:00 D +Rule Marengo 1954 1960 - Sep lastSun 2:00 0 S +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone America/Indiana/Marengo -5:45:23 - LMT 1883 Nov 18 12:00 + -6:00 US C%sT 1951 + -6:00 Marengo C%sT 1961 Apr 30 2:00 + -5:00 - EST 1969 + -5:00 US E%sT 1974 Jan 6 2:00 + -6:00 1:00 CDT 1974 Oct 27 2:00 + -5:00 US E%sT 1976 + -5:00 - EST +# +# Starke County, Indiana +# From Arthur David Olson (October 28, 1991): +# An article on page A3 of the Sunday, October 27, 1991 Washington Post +# notes that Starke County switched from Central time to Eastern time as of +# October 27, 1991. +# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER +Rule Starke 1947 1961 - Apr lastSun 2:00 1:00 D +Rule Starke 1947 1954 - Sep lastSun 2:00 0 S +Rule Starke 1955 1956 - Oct lastSun 2:00 0 S +Rule Starke 1957 1958 - Sep lastSun 2:00 0 S +Rule Starke 1959 1961 - Oct lastSun 2:00 0 S +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone America/Indiana/Knox -5:46:30 - LMT 1883 Nov 18 12:00 + -6:00 US C%sT 1947 + -6:00 Starke C%sT 1962 Apr 29 2:00 + -5:00 - EST 1963 Oct 27 2:00 + -6:00 US C%sT 1991 Oct 27 2:00 + -5:00 - EST +# +# Switzerland County, Indiana, last observed DST in 1972. +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone America/Indiana/Vevay -5:40:16 - LMT 1883 Nov 18 12:00 + -6:00 US C%sT 1954 Apr 25 2:00 + -5:00 - EST 1969 + -5:00 US E%sT 1973 + -5:00 - EST -# From Arthur David Olson: -# And then there's Hawaii. -# DST was observed for one day in 1933; -# Standard time was change by half an hour in 1947; -# it's always standard as of 1986. +# Part of Kentucky left its clocks alone in 1974. +# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER +Rule Louisville 1921 only - May 1 2:00 1:00 D +Rule Louisville 1921 only - Sep 1 2:00 0 S +Rule Louisville 1941 1961 - Apr lastSun 2:00 1:00 D +Rule Louisville 1941 only - Sep lastSun 2:00 0 S +Rule Louisville 1946 only - Jun 2 2:00 0 S +Rule Louisville 1950 1955 - Sep lastSun 2:00 0 S +Rule Louisville 1956 1960 - Oct lastSun 2:00 0 S +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone America/Louisville -5:43:02 - LMT 1883 Nov 18 12:00 + -6:00 US C%sT 1921 + -6:00 Louisville C%sT 1942 + -6:00 US C%sT 1946 + -6:00 Louisville C%sT 1961 Jul 23 2:00 + -5:00 - EST 1968 + -5:00 US E%sT 1974 Jan 6 2:00 + -6:00 1:00 CDT 1974 Oct 27 2:00 + -5:00 US E%sT -Zone Pacific/Honolulu -10:30 US H%sT 1933 Apr 30 2:00 - -10:30 1:00 HDT 1933 May 1 2:00 - -10:30 US H%sT 1947 Jun 8 2:00 - -10:00 - HST +# Michigan +# +# From Bob Devine (January 28, 1988): +# Michigan didn't observe DST from 1968 to 1973. +# +# From Paul Eggert (1995-12-19): +# Shanks writes that Michigan started using standard time on 1885 Sep 18, +# but Howse (p 126) writes that Detroit kept +# +# local time until 1900 when the City Council decreed that clocks should +# be put back twenty-eight minutes to Central Standard Time. Half the +# city obeyed, half refused. After considerable debate, the decision +# was rescinded and the city reverted to Sun time. A derisive offer to +# erect a sundial in front of the city hall was referred to the +# Committee on Sewers. Then, in 1905, Central time was adopted +# by city vote. +# +# This story is too entertaining to be false, so go with Howse over Shanks. +# +# Most of Michigan observed DST from 1973 on, but was a bit late in 1975. +# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER +Rule Detroit 1948 only - Apr lastSun 2:00 1:00 D +Rule Detroit 1948 only - Sep lastSun 2:00 0 S +Rule Detroit 1967 only - Jun 14 2:00 1:00 D +Rule Detroit 1967 only - Oct lastSun 2:00 0 S +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone America/Detroit -5:32:11 - LMT 1905 + -6:00 - CST 1915 May 15 2:00 + -5:00 - EST 1942 + -5:00 US E%sT 1946 + -5:00 Detroit E%sT 1973 + -5:00 US E%sT 1975 + -5:00 - EST 1975 Apr 27 2:00 + -5:00 US E%sT +# +# The Michigan border with Wisconsin switched from EST to CST/CDT in 1973. +# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER +Rule Menominee 1946 only - Apr lastSun 2:00 1:00 D +Rule Menominee 1946 only - Sep lastSun 2:00 0 S +Rule Menominee 1966 only - Apr lastSun 2:00 1:00 D +Rule Menominee 1966 only - Oct lastSun 2:00 0 S +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone America/Menominee -5:50:27 - LMT 1885 Sep 18 12:00 + -6:00 US C%sT 1946 + -6:00 Menominee C%sT 1969 Apr 27 2:00 + -5:00 - EST 1973 Apr 29 2:00 + -6:00 US C%sT # Navassa -# no information; probably like US/Eastern +# uninhabited # Old names, for S5 users @@ -203,7 +437,7 @@ Link America/New_York EST5EDT Link America/Chicago CST6CDT Link America/Denver MST7MDT Link America/Los_Angeles PST8PDT -Link America/Fort_Wayne EST +Link America/Indianapolis EST Link America/Phoenix MST Link Pacific/Honolulu HST @@ -211,7 +445,7 @@ Link Pacific/Honolulu HST # From Paul Eggert (November 18, 1993): -# A good source for time zone historical data outside the U.S. is +# A good source for time zone historical data outside the US is # Thomas G. Shanks, The International Atlas (3rd edition), # San Diego: ACS Publications, Inc. (1991). # Except where otherwise noted, it is the source for the data below. @@ -369,7 +603,7 @@ Rule StJohns 1951 1986 - Apr lastSun 2:00 1:00 D Rule StJohns 1951 1959 - Sep lastSun 2:00 0 S Rule StJohns 1960 max - Oct lastSun 2:00 0 S Rule StJohns 1987 only - Apr Sun>=1 2:00 1:00 D -Rule StJohns 1988 only - Apr Sun>=1 2:00 2:00 D +Rule StJohns 1988 only - Apr Sun>=1 2:00 2:00 DD Rule StJohns 1989 max - Apr Sun>=1 2:00 1:00 D # St John's has an apostrophe, but Posix file names can't have apostrophes. # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -464,21 +698,23 @@ Rule Winn 1916 only - Sep 17 0:00 0 S Rule Winn 1918 only - Apr 14 2:00 1:00 D Rule Winn 1918 only - Oct 31 2:00 0 S Rule Winn 1937 only - May 16 2:00 1:00 D -Rule Winn 1937 only - Sep 23 2:00 0 S +Rule Winn 1937 only - Sep 26 2:00 0 S Rule Winn 1942 only - Feb 9 2:00 1:00 D Rule Winn 1945 only - Sep lastSun 2:00 0 S Rule Winn 1946 only - May 12 2:00 1:00 D Rule Winn 1946 only - Oct 13 2:00 0 S Rule Winn 1947 1949 - Apr lastSun 2:00 1:00 D -Rule Winn 1947 1958 - Sep lastSun 2:00 0 S -Rule Winn 1948 only - May 1 2:00 1:00 D -Rule Winn 1948 1960 - Apr lastSun 2:00 1:00 D +Rule Winn 1947 1949 - Sep lastSun 2:00 0 S +Rule Winn 1950 only - May 1 2:00 1:00 D +Rule Winn 1950 only - Sep 30 2:00 0 S +Rule Winn 1951 1960 - Apr lastSun 2:00 1:00 D +Rule Winn 1951 1958 - Sep lastSun 2:00 0 S Rule Winn 1959 only - Oct lastSun 2:00 0 S Rule Winn 1960 only - Sep lastSun 2:00 0 S Rule Winn 1963 only - Apr lastSun 2:00 1:00 D -Rule Winn 1963 only - Sep lastSun 2:00 0 S +Rule Winn 1963 only - Sep 22 2:00 0 S Rule Winn 1966 1986 - Apr lastSun 2:00 1:00 D -Rule Winn 1966 max - Sep lastSun 2:00 0 S +Rule Winn 1966 max - Oct lastSun 2:00 0 S Rule Winn 1987 max - Apr Sun>=1 2:00 1:00 D # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone America/Winnipeg -6:28:36 - LMT 1887 Jul 16 @@ -570,7 +806,7 @@ Zone America/Whitehorse -9:00:12 - LMT 1900 Aug 20 # Rules prior to 1987 are unknown. # The comments in the OAG say "Only Ensenada, Mexicale, San Felipe and Tijuana # observe DST." This is presumably Baja California Norte, above 28th parallel, -# as listed there; Mexico/BajaSur is for "Baja California Sur and N. Pacific +# as listed there; [there is also] "Baja California Sur and N. Pacific # Coast (States of Sinaloa and Sonora)." # From Bob Devine (January 28, 1988): @@ -616,6 +852,15 @@ Zone America/Whitehorse -9:00:12 - LMT 1900 Aug 20 # Shanks also says there are four zones, but disagrees about the fourth. # Instead of GMT-6 with DST, he says there's GMT-8 without DST. +# From Paul Eggert (1996-02-07): +# Today in news:4f90v4$g6g@news.internet.com.mx, Kevin Pitts +# wrote that Mexico will use Horario de Verano (DST) +# starting this year with the same rules as the US, and gave FIDE as a source. +# (FIDE is a private organization that promotes efficient electrical use.) +# On 1996-02-02 Mario Camou wrote that the transition times are Apr Sun>=1 +# 0:00 and Nov 1 0:00 but also wrote ``The DST-out date looks a bit fishy''. +# Go with Pitts after 1996, and with Shanks before that. + # From Shanks (1991): # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S Rule Mexico 1922 only - Jan 1 0:00 0 S @@ -627,6 +872,9 @@ Rule Mexico 1943 only - Dec 16 0:00 1:00 D Rule Mexico 1944 only - May 1 0:00 0 S Rule Mexico 1950 only - Feb 12 0:00 1:00 D Rule Mexico 1950 only - Jul 30 0:00 0 S +Rule Mexico 1996 max - Apr Sun>=1 2:00 1:00 D +Rule Mexico 1996 max - Oct lastSun 2:00 0 S +# Rule BajaN 1950 1966 - Apr lastSun 2:00 1:00 D Rule BajaN 1950 1961 - Sep lastSun 2:00 0 S Rule BajaN 1961 1966 - Oct lastSun 2:00 0 S @@ -647,20 +895,22 @@ Zone America/Mazatlan -7:05:40 - LMT 1921 Dec 31 23:54:20 -6:00 - CST 1942 Apr -7:00 - MST 1949 Jan 14 -8:00 - PST 1970 - -7:00 - MST + -7:00 Mexico M%sT Zone America/Tijuana -7:48:04 - LMT 1922 Jan 1 0:11:56 -8:00 - PST 1927 Jun 10 23:00 -7:00 - MST 1930 Nov 16 -8:00 - PST 1942 Apr -7:00 - MST 1949 Jan 14 -8:00 BajaN P%sT 1967 Apr lastSun 2:00 - -8:00 US P%sT + -8:00 US P%sT 1996 + -8:00 Mexico P%sT Zone America/Ensenada -7:46:28 - LMT 1922 Jan 1 0:13:32 -8:00 - PST 1927 Jun 10 23:00 -7:00 - MST 1930 Nov 16 -8:00 - PST 1942 Apr -7:00 - MST 1949 Jan 14 - -8:00 - PST + -8:00 - PST 1996 + -8:00 Mexico P%sT # # Revillagigedo Is # no information @@ -728,7 +978,7 @@ Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown -5:00 - EST # Clipperton -# no information +# uninhabited # Costa Rica # Shanks gives some very odd dates for 1991, and stops there. @@ -911,9 +1161,9 @@ Zone America/Panama -5:18:08 - LMT 1890 # Puerto Rico # There are too many San Juans elsewhere, so we'll use `Puerto_Rico'. # Zone NAME GMTOFF RULES FORMAT [UNTIL] -Zone America/Puerto_Rico -4:24:28 - LMT 1899 Mar 28 12:00 # San Juan +Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan -4:00 - AST 1942 May 3 - -4:00 1:00 ADT 1945 Sep 30 2:00 + -4:00 1:00 AWT 1945 Sep 30 2:00 -4:00 - AST # St Kitts-Nevis @@ -947,7 +1197,12 @@ Zone America/Grand_Turk -4:44:32 - LMT 1890 -5:00 - EST 1979 Apr 29 2:00 -5:00 US E%sT -# Virgin Is (British and US) +# British Virgin Is +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone America/Tortola -4:18:28 - LMT 1911 Jul # Road Town + -4:00 - AST + +# Virgin Is # Zone NAME GMTOFF RULES FORMAT [UNTIL] -Zone America/Virgin -4:19:44 - LMT 1911 Jul # Charlotte Amalie +Zone America/St_Thomas -4:19:44 - LMT 1911 Jul # Charlotte Amalie -4:00 - AST diff --git a/share/zoneinfo/pacificnew b/share/zoneinfo/pacificnew index 0c3ac86..0cabd5a 100644 --- a/share/zoneinfo/pacificnew +++ b/share/zoneinfo/pacificnew @@ -1,4 +1,4 @@ -# @(#)pacificnew 7.7 +# @(#)pacificnew 7.8 # From Arthur David Olson (April 5, 1989): # On April 5, 1989, the U. S. House of Representatives passed (238-154) a bill @@ -18,9 +18,9 @@ ## Rule Twilite XXXX max uspres Nov Sun>=7 2:00 0 S ## Rule Twilite XXXX max nonpres Oct lastSun 2:00 0 S -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -## Zone US/Pacific-PET -8:00 US P%sT XXXX -## -8:00 Twilite P%sT +# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] +## Zone America/Los_Angeles-PET -8:00 US P%sT XXXX +## -8:00 Twilite P%sT # For now... Link America/Los_Angeles US/Pacific-New ## diff --git a/share/zoneinfo/solar87 b/share/zoneinfo/solar87 index a4e2f39..3f32347 100644 --- a/share/zoneinfo/solar87 +++ b/share/zoneinfo/solar87 @@ -1,4 +1,4 @@ -# @(#)solar87 7.2 +# @(#)solar87 7.3 # So much for footnotes about Saudi Arabia. # Apparent noon times below are for Riyadh; your mileage will vary. @@ -380,7 +380,9 @@ Rule sol87 1987 only - Dec 31 12:02:45s -0:02:45 - # Riyadh is at about 46 degrees 46 minutes East: 3 hrs, 7 mins, 4 secs # Before and after 1987, we'll operate on local mean solar time. -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -Zone Mideast/Riyadh87 3:07:04 - ?? 1987 - 3:07:04 sol87 ?? 1988 - 3:07:04 - ?? +# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] +Zone Asia/Riyadh87 3:07:04 - ?? 1987 + 3:07:04 sol87 ?? 1988 + 3:07:04 - ?? +# For backward compatibility... +Link Asia/Riyadh87 Mideast/Riyadh87 diff --git a/share/zoneinfo/solar88 b/share/zoneinfo/solar88 index 0384b17..41a64e5 100644 --- a/share/zoneinfo/solar88 +++ b/share/zoneinfo/solar88 @@ -1,4 +1,4 @@ -# @(#)solar88 7.2 +# @(#)solar88 7.3 # Apparent noon times below are for Riyadh; they're a bit off for other places. # Times were computed using formulas in the U.S. Naval Observatory's @@ -380,7 +380,9 @@ Rule sol88 1988 only - Dec 31 12:03:05s -0:03:05 - # Riyadh is at about 46 degrees 46 minutes East: 3 hrs, 7 mins, 4 secs # Before and after 1988, we'll operate on local mean solar time. -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -Zone Mideast/Riyadh88 3:07:04 - ?? 1988 - 3:07:04 sol88 ?? 1989 - 3:07:04 - ?? +# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] +Zone Asia/Riyadh88 3:07:04 - ?? 1988 + 3:07:04 sol88 ?? 1989 + 3:07:04 - ?? +# For backward compatibility... +Link Asia/Riyadh88 Mideast/Riyadh88 diff --git a/share/zoneinfo/solar89 b/share/zoneinfo/solar89 index 3221f97..5a720a8 100644 --- a/share/zoneinfo/solar89 +++ b/share/zoneinfo/solar89 @@ -1,4 +1,4 @@ -# @(#)solar89 7.2 +# @(#)solar89 7.3 # Apparent noon times below are for Riyadh; they're a bit off for other places. # Times were computed using a formula provided by the U. S. Naval Observatory: @@ -385,7 +385,9 @@ Rule sol89 1989 only - Dec 31 12:03:00s -0:03:00 - # Riyadh is at about 46 degrees 46 minutes East: 3 hrs, 7 mins, 4 secs # Before and after 1989, we'll operate on local mean solar time. -# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] -Zone Mideast/Riyadh89 3:07:04 - ?? 1989 - 3:07:04 sol89 ?? 1990 - 3:07:04 - ?? +# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] +Zone Asia/Riyadh89 3:07:04 - ?? 1989 + 3:07:04 sol89 ?? 1990 + 3:07:04 - ?? +# For backward compatibility... +Link Asia/Riyadh88 Mideast/Riyadh88 diff --git a/share/zoneinfo/southamerica b/share/zoneinfo/southamerica index 52da58f..893d038 100644 --- a/share/zoneinfo/southamerica +++ b/share/zoneinfo/southamerica @@ -1,4 +1,4 @@ -# @(#)southamerica 7.8 +# @(#)southamerica 7.11 # 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 @@ -107,6 +107,12 @@ Zone America/Buenos_Aires -3:53:48 - LMT 1894 Nov -4:00 Arg A%sT 1969 Oct 5 -3:00 Arg AR%sT +# Aruba +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone America/Aruba -4:40:24 - LMT 1912 Feb 12 # Oranjestad + -4:30 - NAST 1965 # Netherlands Antilles + -4:00 - AST + # Bolivia # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone America/La_Paz -4:32:36 - LMT 1890 @@ -121,8 +127,8 @@ Zone America/La_Paz -4:32:36 - LMT 1890 # ending dates, giving them as "estimated date(s) based on previous year". We # infer a rule here from one example, always a dangerous practice.... Yes, # they really do switch on Saturday, according to the OAG. -# "Brazil/Acre" is for the Territory of Acre; "Brazil/DeNoronha" is for -# Fernando De Noronha. +# "[America/Porto_Acre]" is for the Territory of Acre; +# "[America/Noronha]" is for Fernando De Noronha. # From Bob Devine (January 28, 1988): # The only information I found is that there was no DST up to 1985. @@ -199,21 +205,17 @@ Zone America/Porto_Acre -4:31:12 - LMT 1914 # Chile -# From Guy Harris: -# The OAG lists October 11, 1987 and March 12, 1988 as the starting and -# ending dates, giving them as "estimated date(s) based on previous year." - -# From Bob Devine (January 28, 1988): -# Chile has had 2nd Sunday in October to 2nd Sunday in March DST since 1977. -# Switch is at midnight. OAG is right. +# From Eduardo Krell (1995-10-19): +# The law says to switch to DST at midnight [24:00] on the second SATURDAY +# of October.... The law is the same for March and October. # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S Rule Chile 1918 only - Sep 1 0:00 1:00 D Rule Chile 1919 only - Jul 2 0:00 0 S Rule Chile 1927 1931 - Sep 1 0:00 1:00 D Rule Chile 1928 1932 - Apr 1 0:00 0 S -Rule Chile 1969 max - Oct Sun>=8 0:00 1:00 D -Rule Chile 1970 max - Mar Sun>=8 0:00 0 S +Rule Chile 1969 max - Oct Sun>=9 0:00 1:00 D +Rule Chile 1970 max - Mar Sun>=9 0:00 0 S # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone America/Santiago -4:42:40 - LMT 1890 -4:43 - SMT 1910 # Santiago Mean Time @@ -334,7 +336,7 @@ Zone Atlantic/South_Georgia -2:26:08 - LMT 1890 # Grytviken -2:00 - FST # South Sandwich Is -# no information +# uninhabited # Suriname # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -352,7 +354,6 @@ Zone America/Port_of_Spain -4:06:04 - LMT 1912 Mar 2 # Uruguay # From Paul Eggert (November 18, 1993): # Uruguay wins the prize for the strangest peacetime manipulation of the rules. -# Your guess is as good as mine for what happened after 1989. # From Shanks (1991): # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S Rule Uruguay 1920 only - May 1 0:00 0 S diff --git a/share/zoneinfo/yearistype.sh b/share/zoneinfo/yearistype.sh index c7a886c..809f549 100755 --- a/share/zoneinfo/yearistype.sh +++ b/share/zoneinfo/yearistype.sh @@ -1,6 +1,6 @@ #! /bin/sh -: '@(#)yearistype.sh 7.3' +: '@(#)yearistype.sh 7.4' case $#-$2 in 2-even) case $1 in @@ -8,7 +8,7 @@ case $#-$2 in *) exit 1 ;; esac ;; 2-nonpres) case $1 in - *[02468][048]|*[13567][26]) exit 1 ;; + *[02468][048]|*[13579][26]) exit 1 ;; *) exit 0 ;; esac ;; 2-odd) case $1 in @@ -16,7 +16,7 @@ case $#-$2 in *) exit 1 ;; esac ;; 2-uspres) case $1 in - *[02468][048]|*[13567][26]) exit 0 ;; + *[02468][048]|*[13579][26]) exit 0 ;; *) exit 1 ;; esac ;; 2-*) echo "$0: wild type - $2" >&2 -- cgit v1.1