diff options
Diffstat (limited to 'timezone')
-rw-r--r-- | timezone/antarctica | 33 | ||||
-rw-r--r-- | timezone/asia | 182 | ||||
-rw-r--r-- | timezone/australasia | 31 | ||||
-rw-r--r-- | timezone/etcetera | 7 | ||||
-rw-r--r-- | timezone/europe | 31 | ||||
-rw-r--r-- | timezone/iso3166.tab | 4 | ||||
-rw-r--r-- | timezone/leapseconds | 44 | ||||
-rw-r--r-- | timezone/northamerica | 4 | ||||
-rw-r--r-- | timezone/scheck.c | 2 | ||||
-rw-r--r-- | timezone/southamerica | 12 | ||||
-rw-r--r-- | timezone/tzfile.h | 26 | ||||
-rw-r--r-- | timezone/zdump.c | 17 | ||||
-rw-r--r-- | timezone/zic.c | 124 |
13 files changed, 281 insertions, 236 deletions
diff --git a/timezone/antarctica b/timezone/antarctica index b5c12cb..ad47860 100644 --- a/timezone/antarctica +++ b/timezone/antarctica @@ -1,4 +1,4 @@ -# @(#)antarctica 7.23 +# @(#)antarctica 7.24 # From Paul Eggert (1999-11-15): # To keep things manageable, we list only locations occupied year-round; see @@ -90,19 +90,19 @@ Zone Antarctica/Mawson 0 - zzz 1954 Feb 13 # </a> # Brazil - year-round base -# Ferraz, King George Island, since 1983/4 +# Comandante Ferraz, King George Island, -6205+05824, since 1983/4 # Chile - year-round bases and towns # Escudero, South Shetland Is, -621157-0585735, since 1994 -# Frei, King George Island, -6214-05848, since 1969-03-07 -# O'Higgins, Antarctic Peninsula, -6319-05704, since 1948-02 -# Prat, -6230-05941 -# Villa Las Estrellas (a town), King George Island, since 1984-04-09 +# Presidente Eduadro Frei, King George Island, -6214-05848, since 1969-03-07 +# General Bernardo O'Higgins, Antarctic Peninsula, -6319-05704, since 1948-02 +# Capitan Arturo Prat, -6230-05941 +# Villa Las Estrellas (a town), around the Frei base, since 1984-04-09 # These locations have always used Santiago time; use TZ='America/Santiago'. # China - year-round bases -# Great Wall, King George Island, since 1985-02-20 -# Zhongshan, Larsemann Hills, Prydz Bay, since 1989-02-26 +# Great Wall, King George Island, -6213-05858, since 1985-02-20 +# Zhongshan, Larsemann Hills, Prydz Bay, -6922+07623, since 1989-02-26 # France - year-round bases # @@ -145,14 +145,14 @@ Zone Antarctica/DumontDUrville 0 - zzz 1947 # Germany - year-round base -# Georg von Neumayer +# Georg von Neumayer, -7039-00815 # India - year-round base -# Dakshin Gangotri +# Dakshin Gangotri, -7005+01200 # Japan - year-round bases -# Dome Fuji -# Syowa +# Dome Fuji, -7719+03942 +# Syowa, -690022+0393524 # # From Hideyuki Suzuki (1999-02-06): # In all Japanese stations, +0300 is used as the standard time. [See] @@ -171,7 +171,7 @@ Zone Antarctica/Syowa 0 - zzz 1957 Jan 29 # </a> # S Korea - year-round base -# King Sejong, King George Island, since 1988 +# King Sejong, King George Island, -6213-05847, since 1988 # New Zealand - claims # Balleny Islands (never inhabited) @@ -202,7 +202,8 @@ Rule NZAQ 1990 max - Mar Sun>=15 2:00s 0 S # Russia - year-round bases # Bellingshausen, King George Island, -621159-0585337, since 1968-02-22 # Mirny, Davis coast, -6633+09301, since 1956-02 -# Molodezhnaya, Alasheyev Bay, year-round from 1962-02 to 1999-07-01 +# Molodezhnaya, Alasheyev Bay, -6740+04551, +# year-round from 1962-02 to 1999-07-01 # Novolazarevskaya, Queen Maud Land, -7046+01150, # year-round from 1960/61 to 1992 @@ -234,8 +235,8 @@ Zone Antarctica/Vostok 0 - zzz 1957 Dec 16 6:00 - VOST # Vostok time # S Africa - year-round bases -# Marion Island -# Sanae +# Marion Island, -4653+03752 +# Sanae, -7141-00250 # UK # diff --git a/timezone/asia b/timezone/asia index 32e6e3c..915014c 100644 --- a/timezone/asia +++ b/timezone/asia @@ -1,4 +1,4 @@ -# @(#)asia 7.78 +# @(#)asia 7.81 # 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,7 +107,7 @@ Zone Asia/Baku 3:19:24 - LMT 1924 May 2 3:00 - BAKT 1957 Mar # Baku Time 4:00 RussiaAsia BAK%sT 1991 Mar 31 2:00s 3:00 1:00 BAKST 1991 Aug 30 # independence - 3:00 RussiaAsia AZ%sT 1992 Sep lastSun 2:00s + 3:00 RussiaAsia AZ%sT 1992 Sep lastSat 23:00 4:00 - AZT 1996 # Azerbaijan time 4:00 EUAsia AZ%sT 1997 4:00 Azer AZ%sT @@ -137,8 +137,12 @@ Zone Asia/Thimphu 5:58:36 - LMT 1947 Aug 15 # or Thimbu # British Indian Ocean Territory # Whitman and the 1995 CIA time zone map say 5:00, but the # 1997 and later maps say 6:00. Assume the switch occurred in 1996. +# We have no information as to when standard time was introduced; +# assume it occurred in 1907, the same year as Mauritius (which +# then contained the Chagos Archipelago). # Zone NAME GMTOFF RULES FORMAT [UNTIL] -Zone Indian/Chagos 5:00 - IOT 1996 # BIOT Time +Zone Indian/Chagos 4:49:40 - LMT 1907 + 5:00 - IOT 1996 # BIOT Time 6:00 - IOT # Brunei @@ -337,7 +341,7 @@ Link Asia/Nicosia Europe/Nicosia # President Eduard Shevardnadze decreed Wednesday. # # From the BBC via Joseph S. Myers (2004-06-27): -# +# # Georgia moved closer to Western Europe on Sunday... The former Soviet # republic has changed its time zone back to that of Moscow. As a result it # is now just four hours ahead of Greenwich Mean Time, rather than five hours @@ -639,7 +643,8 @@ Rule Zion 1988 only - Apr 9 0:00 1:00 D Rule Zion 1988 only - Sep 3 0:00 0 S # From Ephraim Silverberg <ephraim@cs.huji.ac.il> -# (1997-03-04, 1998-03-16, 1998-12-28, 2000-01-17, 2000-07-25, and 2004-12-22): +# (1997-03-04, 1998-03-16, 1998-12-28, 2000-01-17, 2000-07-25, 2004-12-22, +# and 2005-02-17): # According to the Office of the Secretary General of the Ministry of # Interior, there is NO set rule for Daylight-Savings/Standard time changes. @@ -735,91 +740,74 @@ Rule Zion 2003 only - Oct 3 1:00 0 S Rule Zion 2004 only - Apr 7 1:00 1:00 D Rule Zion 2004 only - Sep 22 1:00 0 S -# Yesterday, the Knesset Interior Committee passed a proposed (originally -# in March 2004) change to the Time Setting Law that would make the dates -# for DST from 2005 and beyond so that DST starts on the night _after_ the -# first night of the Passover holiday at midnight until midnight of the -# Saturday night _before_ the fast of Yom Kippur. +# The proposed law agreed upon by the Knesset Interior Committee on +# 2005-02-14 is that, for 2005 and beyond, DST starts at 02:00 the +# last Friday before April 2nd (i.e. the last Friday in March or April +# 1st itself if it falls on a Friday) and ends at 02:00 on the Saturday +# night _before_ the fast of Yom Kippur. +# +# Those who can read Hebrew can view the announcement at: # -# Those who can read Hebrew can view the proposal at: +# ftp://ftp.cs.huji.ac.il/pub/tz/announcements/2005+beyond.ps + +# From Paul Eggert (2005-02-22): +# I used Ephraim Silverberg's dst-israel.el program +# <ftp://ftp.cs.huji.ac.il/pub/tz/software/dst-israel.el> (2005-02-20) +# along with Ed Reingold's cal-hebrew in GNU Emacs 21.4, +# to generate the transitions in this list. +# (I replaced "lastFri" with "Fri>=26" by hand.) +# The spring transitions below all correspond to the following Rule: # -# ftp://ftp.cs.huji.ac.il/pub/tz/announcements/2005+.ps +# Rule Zion 2005 max - Mar Fri>=26 2:00 1:00 D # -# The proposal still has to be passed by the Knesset (three readings) for -# it to become law.... +# but older zic implementations (e.g., Solaris 8) do not support +# "Fri>=26" to mean April 1 in years like 2005, so for now we list the +# springtime transitions explicitly. -# From Paul Eggert (2004-12-22): -# For now, guess that the rules proposed on 2004-12-20 will be adopted. -# This is quite possibly wrong, but it is more likely than no DST at all. -# I used Ed Reingold's cal-hebrew in GNU Emacs 21.3, along with code -# written by Ephraim Silverberg, to generate this list. -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule Zion 2005 only - Apr 25 0:00 1:00 D -Rule Zion 2005 only - Oct 9 0:00 0 S -Rule Zion 2006 only - Apr 14 0:00 1:00 D -Rule Zion 2006 only - Oct 1 0:00 0 S -Rule Zion 2007 only - Apr 4 0:00 1:00 D -Rule Zion 2007 only - Sep 16 0:00 0 S -Rule Zion 2008 only - Apr 21 0:00 1:00 D -Rule Zion 2008 only - Oct 5 0:00 0 S -Rule Zion 2009 only - Apr 10 0:00 1:00 D -Rule Zion 2009 only - Sep 27 0:00 0 S -Rule Zion 2010 only - Mar 31 0:00 1:00 D -Rule Zion 2010 only - Sep 12 0:00 0 S -Rule Zion 2011 only - Apr 20 0:00 1:00 D -Rule Zion 2011 only - Oct 2 0:00 0 S -Rule Zion 2012 only - Apr 8 0:00 1:00 D -Rule Zion 2012 only - Sep 23 0:00 0 S -Rule Zion 2013 only - Mar 27 0:00 1:00 D -Rule Zion 2013 only - Sep 8 0:00 0 S -Rule Zion 2014 only - Apr 16 0:00 1:00 D -Rule Zion 2014 only - Sep 28 0:00 0 S -Rule Zion 2015 only - Apr 5 0:00 1:00 D -Rule Zion 2015 only - Sep 20 0:00 0 S -Rule Zion 2016 only - Apr 24 0:00 1:00 D -Rule Zion 2016 only - Oct 9 0:00 0 S -Rule Zion 2017 only - Apr 12 0:00 1:00 D -Rule Zion 2017 only - Sep 24 0:00 0 S -Rule Zion 2018 only - Apr 1 0:00 1:00 D -Rule Zion 2018 only - Sep 16 0:00 0 S -Rule Zion 2019 only - Apr 21 0:00 1:00 D -Rule Zion 2019 only - Oct 6 0:00 0 S -Rule Zion 2020 only - Apr 10 0:00 1:00 D -Rule Zion 2020 only - Sep 27 0:00 0 S -Rule Zion 2021 only - Mar 29 0:00 1:00 D -Rule Zion 2021 only - Sep 12 0:00 0 S -Rule Zion 2022 only - Apr 17 0:00 1:00 D -Rule Zion 2022 only - Oct 2 0:00 0 S -Rule Zion 2023 only - Apr 7 0:00 1:00 D -Rule Zion 2023 only - Sep 24 0:00 0 S -Rule Zion 2024 only - Apr 24 0:00 1:00 D -Rule Zion 2024 only - Oct 6 0:00 0 S -Rule Zion 2025 only - Apr 14 0:00 1:00 D -Rule Zion 2025 only - Sep 28 0:00 0 S -Rule Zion 2026 only - Apr 3 0:00 1:00 D -Rule Zion 2026 only - Sep 20 0:00 0 S -Rule Zion 2027 only - Apr 23 0:00 1:00 D -Rule Zion 2027 only - Oct 10 0:00 0 S -Rule Zion 2028 only - Apr 12 0:00 1:00 D -Rule Zion 2028 only - Sep 24 0:00 0 S -Rule Zion 2029 only - Apr 1 0:00 1:00 D -Rule Zion 2029 only - Sep 16 0:00 0 S -Rule Zion 2030 only - Apr 19 0:00 1:00 D -Rule Zion 2030 only - Oct 6 0:00 0 S -Rule Zion 2031 only - Apr 9 0:00 1:00 D -Rule Zion 2031 only - Sep 21 0:00 0 S -Rule Zion 2032 only - Mar 28 0:00 1:00 D -Rule Zion 2032 only - Sep 12 0:00 0 S -Rule Zion 2033 only - Apr 15 0:00 1:00 D -Rule Zion 2033 only - Oct 2 0:00 0 S -Rule Zion 2034 only - Apr 5 0:00 1:00 D -Rule Zion 2034 only - Sep 17 0:00 0 S -Rule Zion 2035 only - Apr 25 0:00 1:00 D -Rule Zion 2035 only - Oct 7 0:00 0 S -Rule Zion 2036 only - Apr 13 0:00 1:00 D -Rule Zion 2036 only - Sep 28 0:00 0 S -Rule Zion 2037 only - Apr 1 0:00 1:00 D -Rule Zion 2037 only - Sep 13 0:00 0 S +# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S +Rule Zion 2005 only - Apr 1 2:00 1:00 D +Rule Zion 2005 only - Oct 9 2:00 0 S +Rule Zion 2006 2010 - Mar Fri>=26 2:00 1:00 D +Rule Zion 2006 only - Oct 1 2:00 0 S +Rule Zion 2007 only - Sep 16 2:00 0 S +Rule Zion 2008 only - Oct 5 2:00 0 S +Rule Zion 2009 only - Sep 27 2:00 0 S +Rule Zion 2010 only - Sep 12 2:00 0 S +Rule Zion 2011 only - Apr 1 2:00 1:00 D +Rule Zion 2011 only - Oct 2 2:00 0 S +Rule Zion 2012 2015 - Mar Fri>=26 2:00 1:00 D +Rule Zion 2012 only - Sep 23 2:00 0 S +Rule Zion 2013 only - Sep 8 2:00 0 S +Rule Zion 2014 only - Sep 28 2:00 0 S +Rule Zion 2015 only - Sep 20 2:00 0 S +Rule Zion 2016 only - Apr 1 2:00 1:00 D +Rule Zion 2016 only - Oct 9 2:00 0 S +Rule Zion 2017 2021 - Mar Fri>=26 2:00 1:00 D +Rule Zion 2017 only - Sep 24 2:00 0 S +Rule Zion 2018 only - Sep 16 2:00 0 S +Rule Zion 2019 only - Oct 6 2:00 0 S +Rule Zion 2020 only - Sep 27 2:00 0 S +Rule Zion 2021 only - Sep 12 2:00 0 S +Rule Zion 2022 only - Apr 1 2:00 1:00 D +Rule Zion 2022 only - Oct 2 2:00 0 S +Rule Zion 2023 2032 - Mar Fri>=26 2:00 1:00 D +Rule Zion 2023 only - Sep 24 2:00 0 S +Rule Zion 2024 only - Oct 6 2:00 0 S +Rule Zion 2025 only - Sep 28 2:00 0 S +Rule Zion 2026 only - Sep 20 2:00 0 S +Rule Zion 2027 only - Oct 10 2:00 0 S +Rule Zion 2028 only - Sep 24 2:00 0 S +Rule Zion 2029 only - Sep 16 2:00 0 S +Rule Zion 2030 only - Oct 6 2:00 0 S +Rule Zion 2031 only - Sep 21 2:00 0 S +Rule Zion 2032 only - Sep 12 2:00 0 S +Rule Zion 2033 only - Apr 1 2:00 1:00 D +Rule Zion 2033 only - Oct 2 2:00 0 S +Rule Zion 2034 2037 - Mar Fri>=26 2:00 1:00 D +Rule Zion 2034 only - Sep 17 2:00 0 S +Rule Zion 2035 only - Oct 7 2:00 0 S +Rule Zion 2036 only - Sep 28 2:00 0 S +Rule Zion 2037 only - Sep 13 2:00 0 S # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Asia/Jerusalem 2:20:56 - LMT 1880 @@ -939,6 +927,13 @@ Zone Asia/Amman 2:23:44 - LMT 1931 # - Qyzylorda switched from +5:00 to +6:00 on 1992-01-19 02:00. # - Oral switched from +5:00 to +4:00 in spring 1989. # +# <a href="http://www.kazsociety.org.uk/news/2005/03/30.htm"> +# From Kazakhstan Embassy's News Bulletin #11 (2005-03-21): +# </a> +# The Government of Kazakhstan passed a resolution March 15 abolishing +# daylight saving time citing lack of economic benefits and health +# complications coupled with a decrease in productivity. +# # # Zone NAME GMTOFF RULES FORMAT [UNTIL] # @@ -947,7 +942,8 @@ Zone Asia/Almaty 5:07:48 - LMT 1924 May 2 # or Alma-Ata 5:00 - ALMT 1930 Jun 21 # Alma-Ata Time 6:00 RussiaAsia ALM%sT 1991 6:00 - ALMT 1992 - 6:00 RussiaAsia ALM%sT + 6:00 RussiaAsia ALM%sT 2005 Mar 15 + 6:00 - ALMT # Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.) Zone Asia/Qyzylorda 4:21:52 - LMT 1924 May 2 4:00 - KIZT 1930 Jun 21 # Kizilorda Time @@ -957,7 +953,8 @@ Zone Asia/Qyzylorda 4:21:52 - LMT 1924 May 2 5:00 RussiaAsia KIZ%sT 1991 5:00 - KIZT 1991 Dec 16 # independence 5:00 - QYZT 1992 Jan 19 2:00 - 6:00 RussiaAsia QYZ%sT + 6:00 RussiaAsia QYZ%sT 2005 Mar 15 + 6:00 - QYZT # Aqtobe (aka Aktobe, formerly Akt'ubinsk) Zone Asia/Aqtobe 3:48:40 - LMT 1924 May 2 4:00 - AKTT 1930 Jun 21 # Aktyubinsk Time @@ -966,7 +963,8 @@ Zone Asia/Aqtobe 3:48:40 - LMT 1924 May 2 6:00 - AKTT 1982 Apr 1 5:00 RussiaAsia AKT%sT 1991 5:00 - AKTT 1991 Dec 16 # independence - 5:00 RussiaAsia AQT%sT # Aqtobe Time + 5:00 RussiaAsia AQT%sT 2005 Mar 15 # Aqtobe Time + 5:00 - AQTT # Mangghystau # Aqtau was not founded until 1963, but it represents an inhabited region, # so include time stamps before 1963. @@ -978,7 +976,8 @@ Zone Asia/Aqtau 3:21:04 - LMT 1924 May 2 5:00 RussiaAsia SHE%sT 1991 5:00 - SHET 1991 Dec 16 # independence 5:00 RussiaAsia AQT%sT 1995 Mar lastSun 2:00 # Aqtau Time - 4:00 RussiaAsia AQT%sT + 4:00 RussiaAsia AQT%sT 2005 Mar 15 + 4:00 - AQTT # West Kazakhstan Zone Asia/Oral 3:25:24 - LMT 1924 May 2 # or Ural'sk 4:00 - URAT 1930 Jun 21 # Ural'sk time @@ -988,7 +987,8 @@ Zone Asia/Oral 3:25:24 - LMT 1924 May 2 # or Ural'sk 5:00 RussiaAsia URA%sT 1989 Mar 26 2:00 4:00 RussiaAsia URA%sT 1991 4:00 - URAT 1991 Dec 16 # independence - 4:00 RussiaAsia ORA%sT # Oral Time + 4:00 RussiaAsia ORA%sT 2005 Mar 15 # Oral Time + 4:00 - ORAT # Kyrgyzstan (Kirgizstan) # Transitions through 1991 are from Shanks. diff --git a/timezone/australasia b/timezone/australasia index d8a8e36..41c7368 100644 --- a/timezone/australasia +++ b/timezone/australasia @@ -1,4 +1,4 @@ -# @(#)australasia 7.69 +# @(#)australasia 7.71 # This file also includes Pacific islands. # Notes are at the end of this file @@ -199,9 +199,11 @@ Zone Pacific/Rarotonga -10:39:04 - LMT 1901 # Avarua -10:00 Cook CK%sT # Cocos -# From USNO (1989): +# These islands were ruled by the Ross family from about 1830 to 1978. +# We don't know when standard time was introduced; for now, we guess 1900. # Zone NAME GMTOFF RULES FORMAT [UNTIL] -Zone Indian/Cocos 6:30 - CCT # Cocos Islands Time +Zone Indian/Cocos 6:27:40 - LMT 1900 + 6:30 - CCT # Cocos Islands Time # Fiji # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S @@ -381,11 +383,11 @@ Zone Pacific/Pago_Pago 12:37:12 - LMT 1879 Jul 5 -11:00 - BST 1983 Nov 30 # B=Bering -11:00 - SST # S=Samoa -# W Samoa +# Samoa Zone Pacific/Apia 12:33:04 - LMT 1879 Jul 5 -11:26:56 - LMT 1911 -11:30 - SAMT 1950 # Samoa Time - -11:00 - WST # W Samoa Time + -11:00 - WST # Samoa Time # Solomon Is # excludes Bougainville, for which see Papua New Guinea @@ -434,6 +436,17 @@ Zone Pacific/Johnston -10:00 - HST # uninhabited # Midway +# +# From Mark Brader (2005-01-23): +# [Fallacies and Fantasies of Air Transport History, by R.E.G. Davies, +# published 1994 by Paladwr Press, McLean, VA, USA; ISBN 0-9626483-5-3] +# reproduced a Pan American Airways timeables from 1936, for their weekly +# "Orient Express" flights between San Francisco and Manila, and connecting +# flights to Chicago and the US East Coast. As it uses some time zone +# designations that I've never seen before:.... +# Fri. 6:30A Lv. HONOLOLU (Pearl Harbor), H.I. H.L.T. Ar. 5:30P Sun. +# " 3:00P Ar. MIDWAY ISLAND . . . . . . . . . M.L.T. Lv. 6:00A " +# Zone Pacific/Midway -11:49:28 - LMT 1901 -11:00 - NST 1956 Jun 3 -11:00 1:00 NDT 1956 Sep 2 @@ -1336,3 +1349,11 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901 # places as late as fourteen hours later than UTC. And, since the IDL is not # an international standard, there are some places on the high seas where the # correct date is ambiguous. + +# From Paul Eggert, using references suggested by Oscar van Vlijmen +# (2005-03-20): +# +# The American Practical Navigator (2002) +# <http://pollux.nss.nima.mil/pubs/pubs_j_apn_sections.html?rid=187> +# talks only about the 180-degree meridian with respect to ships in +# international waters; it ignores the international date line. diff --git a/timezone/etcetera b/timezone/etcetera index f87a76e..431206e 100644 --- a/timezone/etcetera +++ b/timezone/etcetera @@ -1,10 +1,11 @@ -# @(#)etcetera 7.11 +# @(#)etcetera 7.12 # These entries are mostly present for historical reasons, so that # people in areas not otherwise covered by the tz files could "zic -l" # to a time zone that was right for their area. These days, the -# tz files cover almost all the inhabited world, so there's little -# need now for the entries that are not on UTC. +# tz files cover almost all the inhabited world, and the only practical +# need now for the entries that are not on UTC are for ships at sea +# that cannot use POSIX TZ settings. Zone Etc/GMT 0 - GMT Zone Etc/UTC 0 - UTC diff --git a/timezone/europe b/timezone/europe index 2da2df1..3bf1b1a 100644 --- a/timezone/europe +++ b/timezone/europe @@ -1,4 +1,4 @@ -# @(#)europe 7.91 +# @(#)europe 7.92 # 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 @@ -255,6 +255,35 @@ # "Timeball on the ballast office is down. Dunsink time." # -- James Joyce, Ulysses +# From Joseph S. Myers (2005-01-26): +# Irish laws are available online at www.irishstatutebook.ie. These include +# various relating to legal time, for example: +# +# ZZA13Y1923.html ZZA12Y1924.html ZZA8Y1925.html ZZSIV20PG1267.html +# +# ZZSI71Y1947.html ZZSI128Y1948.html ZZSI23Y1949.html ZZSI41Y1950.html +# ZZSI27Y1951.html ZZSI73Y1952.html +# +# ZZSI11Y1961.html ZZSI232Y1961.html ZZSI182Y1962.html +# ZZSI167Y1963.html ZZSI257Y1964.html ZZSI198Y1967.html +# ZZA23Y1968.html ZZA17Y1971.html +# +# ZZSI67Y1981.html ZZSI212Y1982.html ZZSI45Y1986.html +# ZZSI264Y1988.html ZZSI52Y1990.html ZZSI371Y1992.html +# ZZSI395Y1994.html ZZSI484Y1997.html ZZSI506Y2001.html +# +# [These are all relative to the root, e.g., the first is +# <http://www.irishstatutebook.ie/ZZA13Y1923.html>.] +# +# (These are those I found, but there could be more. In any case these +# should allow various updates to the comments in the europe file to cover +# the laws applicable in Ireland.) +# +# (Note that the time in the Republic of Ireland since 1968 has been defined +# in terms of standard time being GMT+1 with a period of winter time when it +# is GMT, rather than standard time being GMT with a period of summer time +# being GMT+1.) + # From Paul Eggert (1999-03-28): # Clive Feather (<news:859845706.26043.0@office.demon.net>, 1997-03-31) # reports that Folkestone (Cheriton) Shuttle Terminal uses Concession Time diff --git a/timezone/iso3166.tab b/timezone/iso3166.tab index b17843a..dad0d9d 100644 --- a/timezone/iso3166.tab +++ b/timezone/iso3166.tab @@ -1,6 +1,6 @@ # ISO 3166 alpha-2 country codes # -# @(#)iso3166.tab 1.15 +# @(#)iso3166.tab 1.16 # # From Paul Eggert <eggert@twinsun.com> (2004-06-14): # @@ -255,7 +255,7 @@ VI Virgin Islands (US) VN Vietnam VU Vanuatu WF Wallis & Futuna -WS Samoa (Western) +WS Samoa (western) YE Yemen YT Mayotte ZA South Africa diff --git a/timezone/leapseconds b/timezone/leapseconds index 385ee66..2966e76 100644 --- a/timezone/leapseconds +++ b/timezone/leapseconds @@ -1,4 +1,4 @@ -# @(#)leapseconds 7.18 +# @(#)leapseconds 7.19 # Allowance for leapseconds added to each timezone file. @@ -44,37 +44,37 @@ Leap 1995 Dec 31 23:59:60 + S Leap 1997 Jun 30 23:59:60 + S Leap 1998 Dec 31 23:59:60 + S -# INTERNATIONAL EARTH ROTATION AND REFERENCE SYSTEMS SERVICE (IERS) +# INTERNATIONAL EARTH ROTATION AND REFERENCE SYSTEMS SERVICE (IERS) # SERVICE INTERNATIONAL DE LA ROTATION TERRESTRE ET DES SYSTEMES DE REFERENCE -# +# # SERVICE DE LA ROTATION TERRESTRE # OBSERVATOIRE DE PARIS # 61, Av. de l'Observatoire 75014 PARIS (France) # Tel. : 33 (0) 1 40 51 22 26 # FAX : 33 (0) 1 40 51 22 91 # Internet : services.iers@obspm.fr -# -# Paris, 21 July 2004 -# -# -# Bulletin C 28 -# -# To authorities responsible -# for the measurement and -# distribution of time -# -# INFORMATION ON UTC - TAI -# +# +# Paris, 21 July 2004 +# +# +# Bulletin C 28 +# +# To authorities responsible +# for the measurement and +# distribution of time +# +# INFORMATION ON UTC - TAI +# # NO positive leap second will be introduced at the end of December 2004. # The difference between UTC and the International Atomic Time TAI is: -# -# from 1999 January 1, 0h UTC, until further notice : UTC-TAI = -32 s -# +# +# from 1999 January 1, 0h UTC, until further notice : UTC-TAI = -32 s +# # Leap seconds can be introduced in UTC at the end of the months of December # or June, depending on the evolution of UT1-TAI. Bulletin C is mailed every # six months, either to announce a time step in UTC, or to confirm that there # will be no time step at the next possible date. -# -# Daniel GAMBIS -# Director -# Earth Orientation Center of IERS +# +# Daniel GAMBIS +# Director +# Earth Orientation Center of IERS diff --git a/timezone/northamerica b/timezone/northamerica index f9d2f6a..2a58c95 100644 --- a/timezone/northamerica +++ b/timezone/northamerica @@ -1,4 +1,4 @@ -# @(#)northamerica 7.71 +# @(#)northamerica 7.72 # also includes Central America and the Caribbean # This data is by no means authoritative; if you think you know better, @@ -445,7 +445,7 @@ Link America/Denver America/Shiprock # Lemhi, Lincoln, Madison, Minidoka, Oneida, Owyhee, Payette, Power, # Teton, Twin Falls, Valley, Washington counties) 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 diff --git a/timezone/scheck.c b/timezone/scheck.c index 39feeba..fd115f9 100644 --- a/timezone/scheck.c +++ b/timezone/scheck.c @@ -1,6 +1,6 @@ #ifndef lint #ifndef NOID -static char elsieid[] = "@(#)scheck.c 8.15"; +static char elsieid[] = "@(#)scheck.c 8.16"; #endif /* !defined lint */ #endif /* !defined NOID */ diff --git a/timezone/southamerica b/timezone/southamerica index 2e9faf4..6f3b081 100644 --- a/timezone/southamerica +++ b/timezone/southamerica @@ -1,4 +1,4 @@ -# @(#)southamerica 7.57 +# @(#)southamerica 7.59 # 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 @@ -964,7 +964,7 @@ Zone America/Asuncion -3:50:40 - LMT 1890 # # <a href="news:xrGmb.39935$gA1.13896113@news4.srv.hcvlny.cv.net"> # From Evelyn C. Leeper via Mark Brader (2003-10-26):</a> -# When we were in Peru in 1985-1986, they apparently switched over +# When we were in Peru in 1985-1986, they apparently switched over # sometime between December 29 and January 3 while we were on the Amazon. # # From Paul Eggert (2003-11-02): @@ -1063,8 +1063,12 @@ Rule Uruguay 1993 only - Feb 28 0:00 0 - # From Eduardo Cota (2004-09-20): # The uruguayan government has decreed a change in the local time.... # http://www.presidencia.gub.uy/decretos/2004091502.htm -Rule Uruguay 2004 only - Sep Sun>=15 0:00 1:00 S -Rule Uruguay 2005 only - Mar Sun>=8 0:00 0 - +Rule Uruguay 2004 only - Sep 19 0:00 1:00 S +# From Steffen Thorsen (2005-03-11): +# Uruguay's DST was scheduled to end on Sunday, 2005-03-13, but in order to +# save energy ... it was postponed two weeks.... +# http://www.presidencia.gub.uy/_Web/noticias/2005/03/2005031005.htm +Rule Uruguay 2005 only - Mar 27 2:00 0 - # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone America/Montevideo -3:44:44 - LMT 1898 Jun 28 -3:44:44 - MMT 1920 May 1 # Montevideo MT diff --git a/timezone/tzfile.h b/timezone/tzfile.h index 0e9966a..2dad932 100644 --- a/timezone/tzfile.h +++ b/timezone/tzfile.h @@ -21,7 +21,7 @@ #ifndef lint #ifndef NOID -static char tzfilehid[] = "@(#)tzfile.h 7.16"; +static char tzfilehid[] = "@(#)tzfile.h 7.17"; #endif /* !defined NOID */ #endif /* !defined lint */ @@ -48,7 +48,7 @@ static char tzfilehid[] = "@(#)tzfile.h 7.16"; #define TZ_MAGIC "TZif" struct tzhead { - char tzh_magic[4]; /* TZ_MAGIC */ + char tzh_magic[4]; /* TZ_MAGIC */ char tzh_reserved[16]; /* reserved for future use */ char tzh_ttisgmtcnt[4]; /* coded number of trans. time flags */ char tzh_ttisstdcnt[4]; /* coded number of trans. time flags */ @@ -172,26 +172,4 @@ struct tzhead { #define isleap_sum(a, b) isleap((a) % 400 + (b) % 400) -#ifndef USG - -/* -** Use of the underscored variants may cause problems if you move your code to -** certain System-V-based systems; for maximum portability, use the -** underscore-free variants. The underscored variants are provided for -** backward compatibility only; they may disappear from future versions of -** this file. -*/ - -#define SECS_PER_MIN SECSPERMIN -#define MINS_PER_HOUR MINSPERHOUR -#define HOURS_PER_DAY HOURSPERDAY -#define DAYS_PER_WEEK DAYSPERWEEK -#define DAYS_PER_NYEAR DAYSPERNYEAR -#define DAYS_PER_LYEAR DAYSPERLYEAR -#define SECS_PER_HOUR SECSPERHOUR -#define SECS_PER_DAY SECSPERDAY -#define MONS_PER_YEAR MONSPERYEAR - -#endif /* !defined USG */ - #endif /* !defined TZFILE_H */ diff --git a/timezone/zdump.c b/timezone/zdump.c index bd71326..2fcce38 100644 --- a/timezone/zdump.c +++ b/timezone/zdump.c @@ -1,4 +1,4 @@ -static char elsieid[] = "@(#)zdump.c 7.61"; +static char elsieid[] = "@(#)zdump.c 7.64"; /* ** This code has been made independent of the rest of the time @@ -175,12 +175,13 @@ time_t * tp; (void) fprintf(stderr, "\n%s: ", progname); (void) fprintf(stderr, tformat(), *tp); (void) fprintf(stderr, " ->"); - (void) fprintf(stderr, " sec %d", tmp->tm_sec); - (void) fprintf(stderr, " min %d", tmp->tm_min); - (void) fprintf(stderr, " hour %d", tmp->tm_hour); - (void) fprintf(stderr, " mday %d", tmp->tm_mday); - (void) fprintf(stderr, " mon %d", tmp->tm_mon); - (void) fprintf(stderr, " year %d", tmp->tm_year); + (void) fprintf(stderr, " year=%d", tmp->tm_year); + (void) fprintf(stderr, " mon=%d", tmp->tm_mon); + (void) fprintf(stderr, " mday=%d", tmp->tm_mday); + (void) fprintf(stderr, " hour=%d", tmp->tm_hour); + (void) fprintf(stderr, " min=%d", tmp->tm_min); + (void) fprintf(stderr, " sec=%d", tmp->tm_sec); + (void) fprintf(stderr, " isdst=%d", tmp->tm_isdst); (void) fprintf(stderr, " -> "); (void) fprintf(stderr, tformat(), t); (void) fprintf(stderr, "\n"); @@ -318,7 +319,7 @@ _("%s: usage is %s [ --version ] [ -v ] [ -c [loyear,]hiyear ] zonename ...\n"), newtmp = localtime(&newt); if (newtmp != NULL) newtm = *newtmp; - if ((tmp == NULL || newtmp == NULL) ? (tmp != newtmp) : + if ((tmp == NULL || newtmp == NULL) ? (tmp != newtmp) : (delta(&newtm, &tm) != (newt - t) || newtm.tm_isdst != tm.tm_isdst || strcmp(abbr(&newtm), buf) != 0)) { diff --git a/timezone/zic.c b/timezone/zic.c index d855475..fb86fc6 100644 --- a/timezone/zic.c +++ b/timezone/zic.c @@ -1,4 +1,4 @@ -static char elsieid[] = "@(#)zic.c 7.118"; +static char elsieid[] = "@(#)zic.c 7.122"; /* ** Regardless of the type of time_t, we do our work using this type. @@ -21,7 +21,7 @@ typedef int zic_t; /* ** On some ancient hosts, predicates like `isspace(C)' are defined -** only if isascii(C) || C == EOF. Modern hosts obey the C Standard, +** only if isascii(C) || C == EOF. Modern hosts obey the C Standard, ** which says they are defined only if C == ((unsigned char) C) || C == EOF. ** Neither the C Standard nor Posix require that `isascii' exist. ** For portability, we check both ancient and modern requirements. @@ -138,9 +138,9 @@ static void usage P((void)); static void writezone P((const char * name)); static int yearistype P((int year, const char * type)); -#if !(HAVE_STRERROR - 0) +#if !HAVE_STRERROR static char * strerror P((int)); -#endif /* !(HAVE_STRERROR - 0) */ +#endif /* !HAVE_STRERROR */ static int charcnt; static int errors; @@ -380,7 +380,7 @@ char * const ptr; ** Error handling. */ -#if !(HAVE_STRERROR - 0) +#if !HAVE_STRERROR static char * strerror(errnum) int errnum; @@ -391,7 +391,7 @@ int errnum; return (errnum > 0 && errnum <= sys_nerr) ? sys_errlist[errnum] : _("Unknown system error"); } -#endif /* !(HAVE_STRERROR - 0) */ +#endif /* !HAVE_STRERROR */ static void eats(name, num, rname, rnum) @@ -448,7 +448,9 @@ const char * const string; static void usage P((void)) { - (void) fprintf(stderr, _("%s: usage is %s [ --version ] [ -s ] [ -v ] [ -l localtime ] [ -p posixrules ] \\\n\t[ -d directory ] [ -L leapseconds ] [ -y yearistype ] [ filename ... ]\n"), + (void) fprintf(stderr, _("%s: usage is %s \ +[ --version ] [ -s ] [ -v ] [ -l localtime ] [ -p posixrules ] \\\n\ +\t[ -d directory ] [ -L leapseconds ] [ -y yearistype ] [ filename ... ]\n"), progname, progname); (void) exit(EXIT_FAILURE); } @@ -472,14 +474,14 @@ char * argv[]; #ifdef unix (void) umask(umask(S_IWGRP | S_IWOTH) | (S_IWGRP | S_IWOTH)); #endif /* defined unix */ -#if HAVE_GETTEXT - 0 +#if HAVE_GETTEXT (void) setlocale(LC_CTYPE, ""); (void) setlocale(LC_MESSAGES, ""); #ifdef TZ_DOMAINDIR (void) bindtextdomain(TZ_DOMAIN, TZ_DOMAINDIR); #endif /* defined TEXTDOMAINDIR */ (void) textdomain(TZ_DOMAIN); -#endif /* HAVE_GETTEXT - 0 */ +#endif /* HAVE_GETTEXT */ progname = argv[0]; for (i = 1; i < argc; ++i) if (strcmp(argv[i], "--version") == 0) { @@ -580,6 +582,11 @@ _("%s: More than one -L option specified\n"), for (i = 0; i < nlinks; ++i) { eat(links[i].l_filename, links[i].l_linenum); dolink(links[i].l_from, links[i].l_to); + if (noise) + for (j = 0; j < nlinks; ++j) + if (strcmp(links[i].l_to, + links[j].l_from) == 0) + warning(_("link to link")); } if (lcltime != NULL) { eat("command line", 1); @@ -627,32 +634,27 @@ const char * const tofile; (void) exit(EXIT_FAILURE); result = link(fromname, toname); -#if (HAVE_SYMLINK - 0) +#if HAVE_SYMLINK if (result != 0 && - access(fromname, F_OK) == 0 && - !itsdir(fromname)) { - const char *s = tofile; - register char * symlinkcontents = NULL; - while ((s = strchr(s+1, '/')) != NULL) - symlinkcontents = ecatalloc(symlinkcontents, "../"); - symlinkcontents = ecatalloc(symlinkcontents, fromfile); - - result = unlink(toname); - if (result != 0 && errno != ENOENT) { - const char *e = strerror(errno); - - (void) fprintf(stderr, - _("%s: Can't unlink %s: %s\n"), - progname, toname, e); - (void) exit(EXIT_FAILURE); - } - - result = symlink(symlinkcontents, toname); - if (result == 0) + access(fromname, F_OK) == 0 && + !itsdir(fromname)) { + const char *s = tofile; + register char * symlinkcontents = NULL; + + while ((s = strchr(s+1, '/')) != NULL) + symlinkcontents = + ecatalloc(symlinkcontents, + "../"); + symlinkcontents = + ecatalloc(symlinkcontents, + fromfile); + result = symlink(symlinkcontents, + toname); + if (result == 0) warning(_("hard link failed, symbolic link used")); - ifree(symlinkcontents); + ifree(symlinkcontents); } -#endif +#endif /* HAVE_SYMLINK */ if (result != 0) { const char *e = strerror(errno); @@ -810,7 +812,7 @@ associate P((void)) */ eat(zp->z_filename, zp->z_linenum); zp->z_stdoff = gethms(zp->z_rule, _("unruly zone"), - TRUE); + TRUE); /* ** Note, though, that if there's no rule, ** a '%s' in the format is a bad thing. @@ -1113,7 +1115,9 @@ const int iscont; zones[nzones - 1].z_untiltime > min_time && zones[nzones - 1].z_untiltime < max_time && zones[nzones - 1].z_untiltime >= z.z_untiltime) { - error(_("Zone continuation line end time is not after end time of previous line")); + error(_( +"Zone continuation line end time is not after end time of previous line" + )); return FALSE; } } @@ -1146,11 +1150,11 @@ const int nfields; dayoff = 0; cp = fields[LP_YEAR]; if (sscanf(cp, scheck(cp, "%d"), &year) != 1) { - /* - * Leapin' Lizards! - */ - error(_("invalid leaping year")); - return; + /* + ** Leapin' Lizards! + */ + error(_("invalid leaping year")); + return; } j = EPOCH_YEAR; while (j != year) { @@ -1217,7 +1221,9 @@ const int nfields; return; } if ((lp = byword(fields[LP_ROLL], leap_types)) == NULL) { - error(_("illegal Rolling/Stationary field on Leap line")); + error(_( + "illegal Rolling/Stationary field on Leap line" + )); return; } leapadd(tadd(t, tod), positive, lp->l_value, count); @@ -1479,14 +1485,13 @@ const char * const name; while (fromi < timecnt && attypes[fromi].type == 0) ++fromi; /* handled by default rule */ for ( ; fromi < timecnt; ++fromi) { - if (toi != 0 - && ((attypes[fromi].at - + gmtoffs[attypes[toi - 1].type]) - <= (attypes[toi - 1].at - + gmtoffs[toi == 1 ? 0 - : attypes[toi - 2].type]))) { - attypes[toi - 1].type = attypes[fromi].type; - continue; + if (toi != 0 && ((attypes[fromi].at + + gmtoffs[attypes[toi - 1].type]) <= + (attypes[toi - 1].at + gmtoffs[toi == 1 ? 0 + : attypes[toi - 2].type]))) { + attypes[toi - 1].type = + attypes[fromi].type; + continue; } if (toi == 0 || attypes[toi - 1].type != attypes[fromi].type) @@ -1532,7 +1537,8 @@ const char * const name; convert(eitol(typecnt), tzh.tzh_typecnt); convert(eitol(charcnt), tzh.tzh_charcnt); (void) strncpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); -#define DO(field) (void) fwrite((void *) tzh.field, (size_t) sizeof tzh.field, (size_t) 1, fp) +#define DO(field) (void) fwrite((void *) tzh.field, \ + (size_t) sizeof tzh.field, (size_t) 1, fp) DO(tzh_magic); DO(tzh_reserved); DO(tzh_ttisgmtcnt); @@ -1751,12 +1757,13 @@ const int zonecount; continue; } if (*startbuf == '\0' && - startoff == oadd(zp->z_gmtoff, - stdoff)) { - doabbr(startbuf, zp->z_format, - rp->r_abbrvar, - rp->r_stdoff != 0); - } + startoff == oadd(zp->z_gmtoff, + stdoff)) + doabbr(startbuf, + zp->z_format, + rp->r_abbrvar, + rp->r_stdoff != + 0); } eats(zp->z_filename, zp->z_linenum, rp->r_filename, rp->r_linenum); @@ -2047,7 +2054,9 @@ register char * cp; else while ((*dp = *cp++) != '"') if (*dp != '\0') ++dp; - else error(_("Odd number of quotation marks")); + else error(_( + "Odd number of quotation marks" + )); } while (*cp != '\0' && *cp != '#' && (!isascii(*cp) || !isspace((unsigned char) *cp))); if (isascii(*cp) && isspace((unsigned char) *cp)) @@ -2168,7 +2177,8 @@ register const int wantedy; } if (i < 0 || i >= len_months[isleap(y)][m]) { if (noise) - warning(_("rule goes past start/end of month--will not work with pre-2004 versions of zic")); + warning(_("rule goes past start/end of month--\ +will not work with pre-2004 versions of zic")); } } if (dayoff < 0 && !TYPE_SIGNED(zic_t)) |