summaryrefslogtreecommitdiff
path: root/src/timezone/tznames
diff options
context:
space:
mode:
authorTom Lane2006-07-25 03:51:23 +0000
committerTom Lane2006-07-25 03:51:23 +0000
commitd8b5c95ca8a2ce7cd4062d4a12710ca977bac87c (patch)
treea22dd25471942e3a24edcc2319e03319bed0482b /src/timezone/tznames
parent631ea6188366ee1b9818fed88d8fadd495246fd7 (diff)
Remove hard-wired lists of timezone abbreviations in favor of providing
configuration files that can be altered by a DBA. The australian_timezones GUC setting disappears, replaced by a timezone_abbreviations setting (set this to 'Australia' to get the effect of australian_timezones). The list of zone names defined by default has undergone a bit of cleanup, too. Documentation still needs some work --- in particular, should we fix Table B-4, or just get rid of it? Joachim Wieland, with some editorializing by moi.
Diffstat (limited to 'src/timezone/tznames')
-rw-r--r--src/timezone/tznames/Africa.txt168
-rw-r--r--src/timezone/tznames/America.txt291
-rw-r--r--src/timezone/tznames/Antarctica.txt37
-rw-r--r--src/timezone/tznames/Asia.txt236
-rw-r--r--src/timezone/tznames/Atlantic.txt92
-rw-r--r--src/timezone/tznames/Australia33
-rw-r--r--src/timezone/tznames/Australia.txt59
-rw-r--r--src/timezone/tznames/Default702
-rw-r--r--src/timezone/tznames/Etc.txt33
-rw-r--r--src/timezone/tznames/Europe.txt207
-rw-r--r--src/timezone/tznames/India12
-rw-r--r--src/timezone/tznames/Indian.txt35
-rw-r--r--src/timezone/tznames/Makefile30
-rw-r--r--src/timezone/tznames/Pacific.txt100
-rw-r--r--src/timezone/tznames/README18
15 files changed, 2053 insertions, 0 deletions
diff --git a/src/timezone/tznames/Africa.txt b/src/timezone/tznames/Africa.txt
new file mode 100644
index 00000000000..ccbced3465b
--- /dev/null
+++ b/src/timezone/tznames/Africa.txt
@@ -0,0 +1,168 @@
+#
+# NOTE:
+# This file is NOT loaded by the PostgreSQL database. It just serves as
+# a template for timezones you could need. See the `Date/Time Support'
+# appendix in the PostgreSQL documentation for more information.
+#
+
+CAT 7200 # Central Africa Time
+ # (Africa/Blantyre)
+ # (Africa/Bujumbura)
+ # (Africa/Gaborone)
+ # (Africa/Harare)
+ # (Africa/Kigali)
+ # (Africa/Lubumbashi)
+ # (Africa/Lusaka)
+ # (Africa/Maputo)
+CEST 7200 D # Central Europe Summer Time
+ # (Africa/Ceuta)
+ # (Europe/Amsterdam)
+ # (Europe/Andorra)
+ # (Europe/Belgrade)
+ # (Europe/Berlin)
+ # (Europe/Brussels)
+ # (Europe/Budapest)
+ # (Europe/Copenhagen)
+ # (Europe/Gibraltar)
+ # (Europe/Luxembourg)
+ # (Europe/Madrid)
+ # (Europe/Malta)
+ # (Europe/Monaco)
+ # (Europe/Oslo)
+ # (Europe/Paris)
+ # (Europe/Prague)
+ # (Europe/Rome)
+ # (Europe/Stockholm)
+ # (Europe/Tirane)
+ # (Europe/Vaduz)
+ # (Europe/Vienna)
+ # (Europe/Warsaw)
+ # (Europe/Zurich)
+CET 3600 # Central Europe Time
+ # (Africa/Algiers)
+ # (Africa/Ceuta)
+ # (Europe/Amsterdam)
+ # (Europe/Andorra)
+ # (Europe/Belgrade)
+ # (Europe/Berlin)
+ # (Europe/Brussels)
+ # (Europe/Budapest)
+ # (Europe/Copenhagen)
+ # (Europe/Gibraltar)
+ # (Europe/Luxembourg)
+ # (Europe/Madrid)
+ # (Europe/Malta)
+ # (Europe/Monaco)
+ # (Europe/Oslo)
+ # (Europe/Paris)
+ # (Europe/Prague)
+ # (Europe/Rome)
+ # (Europe/Stockholm)
+ # (Europe/Tirane)
+ # (Europe/Vaduz)
+ # (Europe/Vienna)
+ # (Europe/Warsaw)
+ # (Europe/Zurich)
+EAT 10800 # East Africa Time
+ # (Africa/Addis_Ababa)
+ # (Africa/Asmera)
+ # (Africa/Dar_es_Salaam)
+ # (Africa/Djibouti)
+ # (Africa/Kampala)
+ # (Africa/Khartoum)
+ # (Africa/Mogadishu)
+ # (Africa/Nairobi)
+ # (Indian/Antananarivo)
+ # (Indian/Comoro)
+ # (Indian/Mayotte)
+EEST 10800 D # East-Egypt Summer Time
+ # Eastern Europe Summer Time
+ # (Africa/Cairo)
+ # (Asia/Amman)
+ # (Asia/Beirut)
+ # (Asia/Damascus)
+ # (Asia/Gaza)
+ # (Asia/Nicosia)
+ # (Europe/Athens)
+ # (Europe/Bucharest)
+ # (Europe/Chisinau)
+ # (Europe/Helsinki)
+ # (Europe/Istanbul)
+ # (Europe/Kaliningrad)
+ # (Europe/Kiev)
+ # (Europe/Minsk)
+ # (Europe/Riga)
+ # (Europe/Simferopol)
+ # (Europe/Sofia)
+ # (Europe/Tallinn)
+ # (Europe/Uzhgorod)
+ # (Europe/Vilnius)
+ # (Europe/Zaporozhye)
+EET 7200 # East-Egypt Time
+ # Eastern Europe Time
+ # (Africa/Cairo)
+ # (Africa/Tripoli)
+ # (Asia/Amman)
+ # (Asia/Beirut)
+ # (Asia/Damascus)
+ # (Asia/Gaza)
+ # (Asia/Nicosia)
+ # (Europe/Athens)
+ # (Europe/Bucharest)
+ # (Europe/Chisinau)
+ # (Europe/Helsinki)
+ # (Europe/Istanbul)
+ # (Europe/Kaliningrad)
+ # (Europe/Kiev)
+ # (Europe/Minsk)
+ # (Europe/Riga)
+ # (Europe/Simferopol)
+ # (Europe/Sofia)
+ # (Europe/Tallinn)
+ # (Europe/Uzhgorod)
+ # (Europe/Vilnius)
+ # (Europe/Zaporozhye)
+GMT 0 # Greenwich Mean Time
+ # (Africa/Abidjan)
+ # (Africa/Bamako)
+ # (Africa/Banjul)
+ # (Africa/Bissau)
+ # (Africa/Conakry)
+ # (Africa/Dakar)
+ # (Africa/Lome)
+ # (Africa/Monrovia)
+ # (Africa/Nouakchott)
+ # (Africa/Ouagadougou)
+ # (Africa/Sao_Tome)
+ # (America/Danmarkshavn)
+ # (Atlantic/Reykjavik)
+ # (Atlantic/St_Helena)
+ # (Etc/GMT)
+ # (Europe/Dublin)
+ # (Europe/London)
+SAST 7200 # South Africa Standard Time
+ # Australian South Standard Time
+ # (Africa/Maseru)
+ # (Africa/Mbabane)
+WAST 7200 D # West Africa Summer Time
+ # (Africa/Windhoek)
+WAT 3600 # West Africa Time
+ # (Africa/Bangui)
+ # (Africa/Brazzaville)
+ # (Africa/Douala)
+ # (Africa/Kinshasa)
+ # (Africa/Lagos)
+ # (Africa/Libreville)
+ # (Africa/Luanda)
+ # (Africa/Malabo)
+ # (Africa/Ndjamena)
+ # (Africa/Niamey)
+ # (Africa/Porto-Novo)
+ # (Africa/Windhoek)
+WET 0 # Western Europe Time
+ # (Africa/Casablanca)
+ # (Africa/El_Aaiun)
+ # (Atlantic/Canary)
+ # (Atlantic/Faeroe)
+ # (Atlantic/Madeira)
+ # (Europe/Lisbon)
diff --git a/src/timezone/tznames/America.txt b/src/timezone/tznames/America.txt
new file mode 100644
index 00000000000..4a27df425a2
--- /dev/null
+++ b/src/timezone/tznames/America.txt
@@ -0,0 +1,291 @@
+#
+# NOTE:
+# This file is NOT loaded by the PostgreSQL database. It just serves as
+# a template for timezones you could need. See the `Date/Time Support'
+# appendix in the PostgreSQL documentation for more information.
+#
+
+# Acre time is sometimes called Acre Standard Time (AST) which leads to a
+# conflict with AST (see below at AST)
+ACT -18000 # Acre Time
+ # (America/Eirunepe)
+ # (America/Rio_Branco)
+# CONFLICT! ACST is not unique
+# Other timezones:
+# - ACST: Central Australia Standard Time (Australia)
+ACST -14400 D # Acre Summer Time (not in zic)
+ # (America/Eirunepe)
+ # (America/Rio_Branco)
+# CONFLICT! ADT is not unique
+# Other timezones:
+# - ADT: Arabic Daylight Time (Asia)
+ADT -10800 D # Atlantic Daylight Time
+ # (America/Glace_Bay)
+ # (America/Goose_Bay)
+ # (America/Halifax)
+ # (America/Thule)
+ # (Atlantic/Bermuda)
+AKDT -28800 D # Alaska Daylight Time
+ # (America/Anchorage)
+ # (America/Juneau)
+ # (America/Nome)
+ # (America/Yakutat)
+AKST -32400 # Alaska Standard Time
+ # (America/Anchorage)
+ # (America/Juneau)
+ # (America/Nome)
+ # (America/Yakutat)
+# CONFLICT! AMST is not unique
+# Other timezones:
+# - AMST: Armenia Summer Time (Asia)
+AMST -10800 D # Amazon Summer Time
+ # (America/Campo_Grande)
+ # (America/Cuiaba)
+# CONFLICT! AMT is not unique
+# Other timezones:
+# - AMT: Armenia Time (Asia)
+AMT -14400 # Amazon Time
+ # (America/Boa_Vista)
+ # (America/Campo_Grande)
+ # (America/Cuiaba)
+ # (America/Manaus)
+ # (America/Porto_Velho)
+ART -10800 # Argentina Time (not in zic)
+# CONFLICT! AST is not unique
+# Other timezones:
+# - AST: Arabic Standard Time (Asia)
+# - AST: Al Manamah Standard Time (Asia) same offset as Arabia Standard Time
+# - AST/ACT: Acre Standard Time (America) listed as ACT
+# - AST: Anguilla Standard Time (America) same offset
+# - AST: Antigua Standard Time (America) same offset
+# - AST: Antilles Standard Time (America) same offset
+AST -14400 # Atlantic Standard Time
+ # (America/Anguilla)
+ # (America/Antigua)
+ # (America/Aruba)
+ # (America/Curacao)
+ # (America/Dominica)
+ # (America/Glace_Bay)
+ # (America/Goose_Bay)
+ # (America/Grenada)
+ # (America/Guadeloupe)
+ # (America/Halifax)
+ # (America/Martinique)
+ # (America/Montserrat)
+ # (America/Port_of_Spain)
+ # (America/Puerto_Rico)
+ # (America/Santo_Domingo)
+ # (America/St_Kitts)
+ # (America/St_Lucia)
+ # (America/St_Thomas)
+ # (America/St_Vincent)
+ # (America/Thule)
+ # (America/Tortola)
+ # (Atlantic/Bermuda)
+BOT -14400 # Bolivia Time
+ # (America/La_Paz)
+BRA -10800 # Brazil Time (not in zic)
+BRST -7200 D # Brasil Summer Time
+ # (America/Sao_Paulo)
+BRT -10800 # Brasil Time
+ # (America/Araguaina)
+ # (America/Bahia)
+ # (America/Belem)
+ # (America/Fortaleza)
+ # (America/Maceio)
+ # (America/Recife)
+ # (America/Sao_Paulo)
+# CONFLICT! CDT is not unique
+# Other timezones:
+# - CDT: Central Daylight Time (America)
+# - CDT: Mexico Central Daylight Time (America)
+# - CDT: Canada Central Daylight Time (America)
+CDT -14400 D # Cuba Central Daylight Time
+ # (America/Havana)
+# CONFLICT! CDT is not unique
+# Other timezones:
+# - CDT: Mexico Central Daylight Time (America)
+# - CDT: Cuba Central Daylight Time (America)
+# - CDT: Canada Central Daylight Time (America)
+CDT -18000 D # Central Daylight Time
+ # (America/Cancun)
+ # (America/Chicago)
+ # (America/Menominee)
+ # (America/Merida)
+ # (America/Mexico_City)
+ # (America/Monterrey)
+ # (America/North_Dakota/Center)
+ # (America/Rainy_River)
+ # (America/Rankin_Inlet)
+ # (America/Winnipeg)
+CLST -10800 D # Chile Summer Time
+ # (America/Santiago)
+ # (Antarctica/Palmer)
+CLT -14400 # Chile Time
+ # (America/Santiago)
+ # (Antarctica/Palmer)
+COT -18000 # Columbia Time (not in zic)
+# CONFLICT! CST is not unique
+# Other timezones:
+# - CST: Central Standard Time (Australia)
+# - CST: Central Standard Time (America)
+CST -18000 # Cuba Central Standard Time (America)
+ # (America/Havana)
+# CONFLICT! CST is not unique
+# Other timezones:
+# - CST: Central Standard Time (Australia)
+# - CST: Cuba Central Standard Time (America)
+CST -21600 # Central Standard Time (America)
+ # (America/Cancun)
+ # (America/Chicago)
+ # (America/Menominee)
+ # (America/Merida)
+ # (America/Mexico_City)
+ # (America/Monterrey)
+ # (America/North_Dakota/Center)
+ # (America/Rainy_River)
+ # (America/Rankin_Inlet)
+ # (America/Regina)
+ # (America/Swift_Current)
+ # (America/Winnipeg)
+ECT -18000 # Ecuador Time
+ # Eastern Caribbean Time
+ # (America/Guayaquil)
+EDT -14400 D # Eastern Daylight Saving Time
+ # (America/Detroit)
+ # (America/Grand_Turk)
+ # (America/Indiana/Indianapolis)
+ # (America/Indiana/Knox)
+ # (America/Indiana/Marengo)
+ # (America/Indiana/Vevay)
+ # (America/Iqaluit)
+ # (America/Kentucky/Louisville)
+ # (America/Kentucky/Monticello)
+ # (America/Montreal)
+ # (America/Nassau)
+ # (America/New_York)
+ # (America/Nipigon)
+ # (America/Pangnirtung)
+ # (America/Thunder_Bay)
+ # (America/Toronto)
+EGST 0 D # East Greenland Summer Time
+ # (America/Scoresbysund)
+EGT -3600 # East Greenland Time (Svalbard & Jan Mayen)
+ # (America/Scoresbysund)
+# CONFLICT! EST is not unique
+# Other timezones:
+# - EST: Eastern Standard Time (Australia)
+EST -18000 # Eastern Standard Time (America)
+ # (America/Cayman)
+ # (America/Coral_Harbour)
+ # (America/Detroit)
+ # (America/Grand_Turk)
+ # (America/Indiana/Indianapolis)
+ # (America/Indiana/Knox)
+ # (America/Indiana/Marengo)
+ # (America/Indiana/Vevay)
+ # (America/Iqaluit)
+ # (America/Jamaica)
+ # (America/Kentucky/Louisville)
+ # (America/Kentucky/Monticello)
+ # (America/Montreal)
+ # (America/Nassau)
+ # (America/New_York)
+ # (America/Nipigon)
+ # (America/Panama)
+ # (America/Pangnirtung)
+ # (America/Thunder_Bay)
+ # (America/Toronto)
+FNT -7200 # Fernando de Noronha Time
+ # (America/Noronha)
+FNST -3600 D # Fernando de Noronha Summer Time (not in zic)
+ # (America/Noronha)
+GFT -10800 # French Guiana Time
+ # (America/Cayenne)
+GMT 0 # Greenwich Mean Time
+ # (Africa/Abidjan)
+ # (Africa/Bamako)
+ # (Africa/Banjul)
+ # (Africa/Bissau)
+ # (Africa/Conakry)
+ # (Africa/Dakar)
+ # (Africa/Lome)
+ # (Africa/Monrovia)
+ # (Africa/Nouakchott)
+ # (Africa/Ouagadougou)
+ # (Africa/Sao_Tome)
+ # (America/Danmarkshavn)
+ # (Atlantic/Reykjavik)
+ # (Atlantic/St_Helena)
+ # (Etc/GMT)
+ # (Europe/Dublin)
+ # (Europe/London)
+GYT -14400 # Guyana Time
+ # (America/Guyana)
+HADT -32400 D # Hawaii-Aleutain Daylight Time
+ # (America/Adak)
+HAST -36000 # Hawaii-Aleutain Standard Time
+ # (America/Adak)
+MDT -21600 D # Mexico Mountain Daylight Time
+ # Mountain Daylight Time
+ # (America/Boise)
+ # (America/Cambridge_Bay)
+ # (America/Chihuahua)
+ # (America/Denver)
+ # (America/Edmonton)
+ # (America/Inuvik)
+ # (America/Mazatlan)
+ # (America/Yellowknife)
+MST -25200 # Mexico Mountain Standard Time
+ # Mountain Standard Time
+ # (America/Boise)
+ # (America/Cambridge_Bay)
+ # (America/Chihuahua)
+ # (America/Dawson_Creek)
+ # (America/Denver)
+ # (America/Edmonton)
+ # (America/Hermosillo)
+ # (America/Inuvik)
+ # (America/Mazatlan)
+ # (America/Phoenix)
+ # (America/Yellowknife)
+NDT -9000 D # Newfoundland Daylight Time
+ # (America/St_Johns)
+# CONFLICT! NFT is not unique
+# Other timezones:
+# - NFT: Norfolk Time (Pacific)
+NFT -12600 # Newfoundland Time (not in zic)
+NST -12600 # Newfoundland Standard Time
+ # (America/St_Johns)
+PDT -25200 D # Pacific Daylight Time
+ # (America/Dawson)
+ # (America/Los_Angeles)
+ # (America/Tijuana)
+ # (America/Vancouver)
+ # (America/Whitehorse)
+PET -18000 # Peru Time (not in zic)
+PMDT -7200 D # Pierre & Miquelon Daylight Time
+ # (America/Miquelon)
+PMST -10800 # Pierre & Miquelon Standard Time
+ # (America/Miquelon)
+PST -28800 # Pacific Standard Time
+ # (America/Dawson)
+ # (America/Los_Angeles)
+ # (America/Tijuana)
+ # (America/Vancouver)
+ # (America/Whitehorse)
+ # (Pacific/Pitcairn)
+PYST -10800 D # Paraguay Summer Time
+ # (America/Asuncion)
+PYT -14400 # Paraguay Time
+ # (America/Asuncion)
+SRT -10800 # Suriname Time
+ # (America/Paramaribo)
+UYST -7200 D # Uruguay Summer Time (not in zic)
+UYT -10800 # Uruguay Time (not in zic)
+VET -14400 # Venezuela Time
+ # (America/Caracas)
+WGST -7200 D # Western Greenland Summer Time
+ # (America/Godthab)
+WGT -10800 # West Greenland Time
+ # (America/Godthab)
diff --git a/src/timezone/tznames/Antarctica.txt b/src/timezone/tznames/Antarctica.txt
new file mode 100644
index 00000000000..6f3069f1b3e
--- /dev/null
+++ b/src/timezone/tznames/Antarctica.txt
@@ -0,0 +1,37 @@
+#
+# NOTE:
+# This file is NOT loaded by the PostgreSQL database. It just serves as
+# a template for timezones you could need. See the `Date/Time Support'
+# appendix in the PostgreSQL documentation for more information.
+#
+
+CLST -10800 D # Chile Summer Time
+ # (America/Santiago)
+ # (Antarctica/Palmer)
+CLT -14400 # Chile Time
+ # (America/Santiago)
+ # (Antarctica/Palmer)
+DAVT 25200 # Davis Time (Antarctica)
+ # (Antarctica/Davis)
+DDUT 36000 # Dumont-d`Urville Time (Antarctica)
+ # (Antarctica/DumontDUrville)
+MAWT 21600 # Mawson Time (Antarctica)
+ # (Antarctica/Mawson)
+NZDT 46800 D # New Zealand Daylight Time
+ # (Antarctica/McMurdo)
+ # (Pacific/Auckland)
+NZST 43200 # New Zealand Standard Time
+ # (Antarctica/McMurdo)
+ # (Pacific/Auckland)
+ROTT -10800 # Rothera Time
+ # (Antarctica/Rothera)
+SYOT 10800 # Syowa Time
+ # (Antarctica/Syowa)
+VOST 21600 # Vostok time
+ # (Antarctica/Vostok)
+# CONFLICT! WST is not unique
+# Other timezones:
+# - WST: West Samoa Time
+WST 28800 # Western Standard Time (Australia)
+ # (Antarctica/Casey)
+ # (Australia/Perth)
diff --git a/src/timezone/tznames/Asia.txt b/src/timezone/tznames/Asia.txt
new file mode 100644
index 00000000000..70c3a2e28ea
--- /dev/null
+++ b/src/timezone/tznames/Asia.txt
@@ -0,0 +1,236 @@
+#
+# NOTE:
+# This file is NOT loaded by the PostgreSQL database. It just serves as
+# a template for timezones you could need. See the `Date/Time Support'
+# appendix in the PostgreSQL documentation for more information.
+#
+
+# CONFLICT! ADT is not unique
+# Other timezones:
+# - ADT: Atlantic Daylight Time (America)
+ADT 14400 D # Arabia Daylight Time
+ # (Asia/Baghdad)
+AFT 16200 # Afghanistan Time
+ # (Asia/Kabul)
+ALMST 25200 D # Alma-Ata Summer Time
+ # (Asia/Almaty)
+ALMT 21600 # Alma-Ata Time
+ # (Asia/Almaty)
+# CONFLICT! AMST is not unique
+# Other timezones:
+# - AMST: Amazon Summer Time (America)
+AMST 18000 D # Armenia Summer Time
+ # (Asia/Yerevan)
+# CONFLICT! AMT is not unique
+# Other timezones:
+# - AMT: Amazon Time (America)
+AMT 14400 # Armenia Time
+ # (Asia/Yerevan)
+ANAST 46800 D # Anadyr Summer Time
+ # (Asia/Anadyr)
+ANAT 43200 # Anadyr Time
+ # (Asia/Anadyr)
+AQTT 18000 # Aqtau Time
+ # Aqtobe Time
+ # (Asia/Aqtau)
+ # (Asia/Aqtobe)
+# CONFLICT! AST is not unique
+# Other timezones:
+# - AST: Atlantic Standard Time (America)
+# - AST/ACT: Acre Standard Time (America) listed as ACT
+# - AST: Anguilla Standard Time (America) same offset as Atlantic Standard Time
+# - AST: Antigua Standard Time (America) same offset as Atlantic Standard Time
+# - AST: Antilles Standard Time (America) same offset as Atlantic Standard Time
+# - AST: Al Manamah Standard Time (Asia) same offset as Arabia Standard Time
+AST 10800 # Arabia Standard Time
+ # (Asia/Aden)
+ # (Asia/Baghdad)
+ # (Asia/Bahrain)
+ # (Asia/Kuwait)
+ # (Asia/Qatar)
+ # (Asia/Riyadh)
+AZST 18000 D # Azerbaijan Summer Time
+ # (Asia/Baku)
+AZT 14400 # Azerbaijan Time
+ # (Asia/Baku)
+BDT 21600 # Bangladesh Time
+ # (Asia/Dhaka)
+BNT 28800 # Brunei Darussalam Time
+ # (Asia/Brunei)
+BORT 28800 # Borneo Time (Indonesia) (not in zic)
+BTT 21600 # Bhutan Time
+ # (Asia/Thimphu)
+CCT 28800 # China Coastal Time (not in zic)
+CHOST 36000 D # Choibalsan Summer Time
+ # (Asia/Choibalsan)
+CHOT 32400 # Choibalsan Time
+ # (Asia/Choibalsan)
+CIT 28800 # Central Indonesia Time
+ # (Asia/Makassar)
+EEST 10800 D # East-Egypt Summer Time
+ # Eastern Europe Summer Time
+ # (Africa/Cairo)
+ # (Asia/Amman)
+ # (Asia/Beirut)
+ # (Asia/Damascus)
+ # (Asia/Gaza)
+ # (Asia/Nicosia)
+ # (Europe/Athens)
+ # (Europe/Bucharest)
+ # (Europe/Chisinau)
+ # (Europe/Helsinki)
+ # (Europe/Istanbul)
+ # (Europe/Kaliningrad)
+ # (Europe/Kiev)
+ # (Europe/Minsk)
+ # (Europe/Riga)
+ # (Europe/Simferopol)
+ # (Europe/Sofia)
+ # (Europe/Tallinn)
+ # (Europe/Uzhgorod)
+ # (Europe/Vilnius)
+ # (Europe/Zaporozhye)
+EET 7200 # East-Egypt Time
+ # Eastern Europe Time
+ # (Africa/Cairo)
+ # (Africa/Tripoli)
+ # (Asia/Amman)
+ # (Asia/Beirut)
+ # (Asia/Damascus)
+ # (Asia/Gaza)
+ # (Asia/Nicosia)
+ # (Europe/Athens)
+ # (Europe/Bucharest)
+ # (Europe/Chisinau)
+ # (Europe/Helsinki)
+ # (Europe/Istanbul)
+ # (Europe/Kaliningrad)
+ # (Europe/Kiev)
+ # (Europe/Minsk)
+ # (Europe/Riga)
+ # (Europe/Simferopol)
+ # (Europe/Sofia)
+ # (Europe/Tallinn)
+ # (Europe/Uzhgorod)
+ # (Europe/Vilnius)
+ # (Europe/Zaporozhye)
+EIT 32400 # East Indonesia Time
+ # (Asia/Jayapura)
+GEST 14400 D # Georgia Summer Time (there was a timezone change in 2004)
+ # (Asia/Tbilisi)
+GET 10800 # Georgia Time (there was a timezone change in 2004)
+ # (Asia/Tbilisi)
+# CONFLICT! GST is not unique
+# Other timezones:
+# - GST: South Georgia Time (Atlantic)
+GST 14400 # Gulf Standard Time
+ # (Asia/Dubai)
+ # (Asia/Muscat)
+HKT 28800 # Hong Kong Time (not in zic)
+HOVST 28800 D # Hovd Summer Time
+ # (Asia/Hovd)
+HOVT 25200 # Hovd Time
+ # (Asia/Hovd)
+ICT 25200 # Indochina Time
+ # (Asia/Bangkok)
+ # (Asia/Phnom_Penh)
+ # (Asia/Saigon)
+ # (Asia/Vientiane)
+IRKST 32400 D # Irkutsk Summer Time
+ # (Asia/Irkutsk)
+IRKT 28800 # Irkutsk Time
+ # (Asia/Irkutsk)
+IRT 12600 # Iran Time (not in zic)
+# CONFLICT! IST is not unique
+# Other timezones:
+# - IST: Irish Summer Time (Europe)
+# - IST: Israel Standard Time (Asia)
+IST 19800 # Indian Standard Time
+ # (Asia/Calcutta)
+# CONFLICT! IST is not unique
+# Other timezones:
+# - IST: Irish Summer Time (Europe)
+# - IST: Indian Standard Time (Asia)
+IST 7200 # Israel Standard Time
+ # (this time zone is not contained in the ZIC database)
+JAYT 32400 # Jayapura Time (Indonesia) (not in zic)
+KDT 36000 D # Korean Daylight Time (not in zic)
+KGST 21600 D # Kyrgyzstan Summer Time
+ # (Asia/Bishkek)
+KGT 18000 # Kyrgyzstan Time
+ # (Asia/Bishkek)
+KRAST 28800 D # Krasnoyarsk Summer Time
+ # (Asia/Krasnoyarsk)
+KRAT 25200 # Krasnoyarsk Time
+ # (Asia/Krasnoyarsk)
+KST 32400 # Korean Standard Time
+ # (Asia/Pyongyang)
+LKT 21600 # Lanka Time
+ # (Asia/Colombo)
+MAGST 43200 D # Magadan Summer Time
+ # (Asia/Magadan)
+MAGT 39600 # Magadan Time
+ # (Asia/Magadan)
+MMT 23400 # Myanmar Time
+ # (Asia/Rangoon)
+MYT 28800 # Malaysia Time
+ # (Asia/Kuala_Lumpur)
+ # (Asia/Kuching)
+NOVST 25200 D # Novosibirsk Summer Time
+ # (Asia/Novosibirsk)
+NOVT 21600 # Novosibirsk Time
+ # (Asia/Novosibirsk)
+NPT 20700 # Nepal Time
+ # (Asia/Katmandu)
+OMSST 25200 D # Omsk Summer Time
+ # (Asia/Omsk)
+OMST 21600 # Omsk Time
+ # (Asia/Omsk)
+ORAT 18000 # Oral Time
+ # (Asia/Oral)
+PETST 46800 D # Petropavlovsk-Kamchatski Summer Time
+ # (Asia/Kamchatka)
+PETT 43200 # Petropavlovsk-Kamchatski Time
+ # (Asia/Kamchatka)
+PHT 28800 # Phillipine Time (not in zic)
+PKT 18000 # Pakistan Time (not in zic)
+QYZT 21600 # Kizilorda Time
+ # (Asia/Qyzylorda)
+SAKST 39600 D # Sakhalin Summer Time
+ # (Asia/Sakhalin)
+SAKT 36000 # Sakhalin Time
+ # (Asia/Sakhalin)
+SGT 28800 # Singapore Time
+ # (Asia/Singapore)
+TJT 18000 # Tajikistan Time
+ # (Asia/Dushanbe)
+TLT 32400 # East Timor Time
+ # (Asia/Dili)
+TMT 18000 # Turkmenistan Time
+ # (Asia/Ashgabat)
+ULAST 32400 D # Ulan Bator Summer Time
+ # (Asia/Ulaanbaatar)
+ULAT 28800 # Ulan Bator Time
+ # (Asia/Ulaanbaatar)
+UZST 21600 D # Uzbekistan Summer Time
+ # (Asia/Samarkand)
+ # (Asia/Tashkent)
+UZT 18000 # Uzbekistan Time
+ # (Asia/Samarkand)
+ # (Asia/Tashkent)
+VLAST 39600 D # Vladivostok Summer Time
+ # (Asia/Vladivostok)
+VLAT 36000 # Vladivostok Time
+ # (Asia/Vladivostok)
+WIT 25200 # Waktu Indonesia Timur
+ # West Indonesia Time
+ # (Asia/Jakarta)
+ # (Asia/Pontianak)
+YAKST 36000 D # Yakutsk Summer Time
+ # (Asia/Yakutsk)
+YAKT 32400 # Yakutsk Time
+ # (Asia/Yakutsk)
+YEKST 21600 D # Yekaterinburg Summer Time
+ # (Asia/Yekaterinburg)
+YEKT 18000 # Yekaterinburg Time
+ # (Asia/Yekaterinburg)
diff --git a/src/timezone/tznames/Atlantic.txt b/src/timezone/tznames/Atlantic.txt
new file mode 100644
index 00000000000..5c447d9c92e
--- /dev/null
+++ b/src/timezone/tznames/Atlantic.txt
@@ -0,0 +1,92 @@
+#
+# NOTE:
+# This file is NOT loaded by the PostgreSQL database. It just serves as
+# a template for timezones you could need. See the `Date/Time Support'
+# appendix in the PostgreSQL documentation for more information.
+#
+
+# CONFLICT! ADT is not unique
+# Other timezones:
+# - ADT: Arabic Daylight Time (Asia)
+ADT -10800 D # Atlantic Daylight Time
+ # (America/Glace_Bay)
+ # (America/Goose_Bay)
+ # (America/Halifax)
+ # (America/Thule)
+ # (Atlantic/Bermuda)
+# CONFLICT! AST is not unique
+# Other timezones:
+# - AST: Arabic Standard Time (Asia)
+# - AST: Al Manamah Standard Time (Asia) same offset as Arabia Standard Time
+# - AST/ACT: Acre Standard Time (America) listed as ACT
+# - AST: Anguilla Standard Time (America) same offset
+# - AST: Antigua Standard Time (America) same offset
+# - AST: Antilles Standard Time (America) same offset
+AST -14400 # Atlantic Standard Time
+ # (America/Anguilla)
+ # (America/Antigua)
+ # (America/Aruba)
+ # (America/Curacao)
+ # (America/Dominica)
+ # (America/Glace_Bay)
+ # (America/Goose_Bay)
+ # (America/Grenada)
+ # (America/Guadeloupe)
+ # (America/Halifax)
+ # (America/Martinique)
+ # (America/Montserrat)
+ # (America/Port_of_Spain)
+ # (America/Puerto_Rico)
+ # (America/Santo_Domingo)
+ # (America/St_Kitts)
+ # (America/St_Lucia)
+ # (America/St_Thomas)
+ # (America/St_Vincent)
+ # (America/Thule)
+ # (America/Tortola)
+ # (Atlantic/Bermuda)
+AZOST 0 D # Azores Summer Time
+ # (Atlantic/Azores)
+AZOT -3600 # Azores Time
+ # (Atlantic/Azores)
+CVT -3600 # Cape Verde Time
+ # (Atlantic/Cape_Verde)
+FKST -10800 D # Falkland Islands Summer Time
+ # (Atlantic/Stanley)
+FKT -14400 # Falkland Islands Time
+ # (Atlantic/Stanley)
+GMT 0 # Greenwich Mean Time
+ # (Africa/Abidjan)
+ # (Africa/Bamako)
+ # (Africa/Banjul)
+ # (Africa/Bissau)
+ # (Africa/Conakry)
+ # (Africa/Dakar)
+ # (Africa/Lome)
+ # (Africa/Monrovia)
+ # (Africa/Nouakchott)
+ # (Africa/Ouagadougou)
+ # (Africa/Sao_Tome)
+ # (America/Danmarkshavn)
+ # (Atlantic/Reykjavik)
+ # (Atlantic/St_Helena)
+ # (Etc/GMT)
+ # (Europe/Dublin)
+ # (Europe/London)
+# CONFLICT! GST is not unique
+# Other timezones:
+# - GST: Gulf Standard Time (Asia)
+GST -7200 # South Georgia Time (Atlantic)
+ # (Atlantic/South_Georgia)
+WEST 3600 D # Western Europe Summer Time
+ # (Atlantic/Canary)
+ # (Atlantic/Faeroe)
+ # (Atlantic/Madeira)
+ # (Europe/Lisbon)
+WET 0 # Western Europe Time
+ # (Africa/Casablanca)
+ # (Africa/El_Aaiun)
+ # (Atlantic/Canary)
+ # (Atlantic/Faeroe)
+ # (Atlantic/Madeira)
+ # (Europe/Lisbon)
diff --git a/src/timezone/tznames/Australia b/src/timezone/tznames/Australia
new file mode 100644
index 00000000000..a47d5d33868
--- /dev/null
+++ b/src/timezone/tznames/Australia
@@ -0,0 +1,33 @@
+# Time zone configuration file for set "Australia"
+
+# In order to use this file, you need to set the run-time parameter
+# timezone_abbreviations to 'Australia'. See the `Date/Time Support'
+# appendix in the PostgreSQL documentation for more information.
+
+
+# include the default set
+@INCLUDE Default
+
+# most timezones are already defined in the default set. With the OVERRIDE
+# option, PostgreSQL will use the new definitions instead of throwing an error
+# in case of a conflict.
+@OVERRIDE
+
+ACST 34200 # Central Australia Standard Time (not in zic)
+CST 34200 # Central Standard Time (Australia)
+ # (Australia/Adelaide)
+ # (Australia/Broken_Hill)
+EAST 36000 # East Australian Standard Time (Australia) (not in zic)
+EST 36000 # Eastern Standard Time (Australia)
+ # (Australia/Currie)
+ # (Australia/Hobart)
+ # (Australia/Melbourne)
+ # (Australia/Sydney)
+ # (Australia/Currie)
+ # (Australia/Hobart)
+ # (Australia/Melbourne)
+ # (Australia/Sydney)
+SAT 34200 # South Australian Standard Time (not in zic)
+WST 28800 # Western Standard Time (Australia)
+ # (Antarctica/Casey)
+ # (Australia/Perth)
diff --git a/src/timezone/tznames/Australia.txt b/src/timezone/tznames/Australia.txt
new file mode 100644
index 00000000000..0fdad5d1c9e
--- /dev/null
+++ b/src/timezone/tznames/Australia.txt
@@ -0,0 +1,59 @@
+#
+# NOTE:
+# This file is NOT loaded by the PostgreSQL database. It just serves as
+# a template for timezones you could need. See the `Date/Time Support'
+# appendix in the PostgreSQL documentation for more information.
+#
+
+ACSST 37800 D # Central Australia (not in zic)
+# CONFLICT! ACST is not unique
+# Other timezones:
+# - ACST: Acre Summer Time (America)
+ACST 34200 # Central Australia Standard Time (not in zic)
+AESST 39600 D # Australia Eastern Summer Standard Time (not in zic)
+AEST 36000 # Australia Eastern Standard Time (not in zic)
+AWSST 32400 D # Australia Western Summer Standard Time (not in zic)
+AWST 28800 # Australia Western Standard Time (not in zic)
+CADT 37800 D # Central Australia Daylight-Saving Time (not in zic)
+CAST 34200 # Central Australia Standard Time (not in zic)
+# CONFLICT! CST is not unique
+# Other timezones:
+# - CST: Central Standard Time (America)
+# - CST: Cuba Central Standard Time (America)
+CST 34200 # Central Standard Time (Australia)
+ # (Australia/Adelaide)
+ # (Australia/Broken_Hill)
+# CONFLICT! EAST is not unique
+# Other timezones:
+# - EAST: Easter Island Time (Chile) (Pacific)
+EAST 36000 # East Australian Standard Time (not in zic)
+# CONFLICT! EST is not unique
+# Other timezones:
+# - EST: Eastern Standard Time (America)
+EST 36000 # Eastern Standard Time (Australia)
+ # (Australia/Currie)
+ # (Australia/Hobart)
+ # (Australia/Melbourne)
+ # (Australia/Sydney)
+ # (Australia/Currie)
+ # (Australia/Hobart)
+ # (Australia/Melbourne)
+ # (Australia/Sydney)
+LHDT 39600 D # Lord Howe Daylight Time, Australia (not in zic)
+LHST 37800 # Lord Howe Standard Time (Australia)
+ # (Australia/Lord_Howe)
+LIGT 36000 # Melbourne, Australia (not in zic)
+NZT 43200 # New Zealand Time (not in zic)
+SADT 37800 D # South Australian Daylight-Saving Time (not in zic)
+SAST 34200 # South Australian Standard Time (not in zic)
+SAT 34200 # South Australian Standard Time (not in zic)
+WADT 28800 D # West Australian Daylight-Saving Time (not in zic)
+WAST 25200 # West Australian Standard Time (not in zic)
+WDT 32400 D # West Australian Daylight-Saving Time (not in zic)
+# CONFLICT! WST is not unique
+# Other timezones:
+# - WST: West Samoa Time
+WST 28800 # Western Standard Time (Australia)
+ # (Antarctica/Casey)
+ # (Australia/Perth)
+
diff --git a/src/timezone/tznames/Default b/src/timezone/tznames/Default
new file mode 100644
index 00000000000..dfadd22af13
--- /dev/null
+++ b/src/timezone/tznames/Default
@@ -0,0 +1,702 @@
+# Time zone configuration file for set "Default"
+
+# In order to use this file, you need to set the run-time parameter
+# timezone_abbreviations to 'Default'. See the `Date/Time Support'
+# appendix in the PostgreSQL documentation for more information.
+
+
+#################### AFRICA ####################
+
+EAT 10800 # East Africa Time
+ # (Africa/Addis_Ababa)
+ # (Africa/Asmera)
+ # (Africa/Dar_es_Salaam)
+ # (Africa/Djibouti)
+ # (Africa/Kampala)
+ # (Africa/Khartoum)
+ # (Africa/Mogadishu)
+ # (Africa/Nairobi)
+ # (Indian/Antananarivo)
+ # (Indian/Comoro)
+ # (Indian/Mayotte)
+WAT 3600 # West Africa Time
+ # (Africa/Bangui)
+ # (Africa/Brazzaville)
+ # (Africa/Douala)
+ # (Africa/Kinshasa)
+ # (Africa/Lagos)
+ # (Africa/Libreville)
+ # (Africa/Luanda)
+ # (Africa/Malabo)
+ # (Africa/Ndjamena)
+ # (Africa/Niamey)
+ # (Africa/Porto-Novo)
+ # (Africa/Windhoek)
+
+#################### AMERICA ####################
+
+# Acre time is sometimes called Acre Standard Time (AST) which leads to a
+# conflict with AST (see below at AST)
+ACT -18000 # Acre Time
+ # (America/Eirunepe)
+ # (America/Rio_Branco)
+ACST -14400 D # Acre Summer Time
+ # (America/Eirunepe)
+ # (America/Rio_Branco)
+AKDT -28800 D # Alaska Daylight Time
+ # (America/Anchorage)
+ # (America/Juneau)
+ # (America/Nome)
+ # (America/Yakutat)
+AKST -32400 # Alaska Standard Time
+ # (America/Anchorage)
+ # (America/Juneau)
+ # (America/Nome)
+ # (America/Yakutat)
+ART -10800 # Argentina Time (not in zic)
+BOT -14400 # Bolivia Time
+ # (America/La_Paz)
+BRA -10800 # Brazil Time (not in zic)
+BRST -7200 D # Brasil Summer Time
+ # (America/Sao_Paulo)
+BRT -10800 # Brasil Time
+ # (America/Araguaina)
+ # (America/Bahia)
+ # (America/Belem)
+ # (America/Fortaleza)
+ # (America/Maceio)
+ # (America/Recife)
+ # (America/Sao_Paulo)
+COT -18000 # Columbia Time (not in zic)
+# CONFLICT! CDT is not unique
+# Other timezones:
+# - CDT: Mexico Central Daylight Time (America)
+# - CDT: Cuba Central Daylight Time (America)
+# - CDT: Canada Central Daylight Time (America)
+CDT -18000 D # Central Daylight Time
+ # (America/Cancun)
+ # (America/Chicago)
+ # (America/Menominee)
+ # (America/Merida)
+ # (America/Mexico_City)
+ # (America/Monterrey)
+ # (America/North_Dakota/Center)
+ # (America/Rainy_River)
+ # (America/Rankin_Inlet)
+ # (America/Winnipeg)
+CLST -10800 D # Chile Summer Time
+ # (America/Santiago)
+ # (Antarctica/Palmer)
+CLT -14400 # Chile Time
+ # (America/Santiago)
+ # (Antarctica/Palmer)
+# CONFLICT! CST is not unique
+# Other timezones:
+# - CST: Central Standard Time (Australia)
+# - CST: Cuba Central Standard Time (America)
+CST -21600 # Central Standard Time (America)
+ # (America/Cancun)
+ # (America/Chicago)
+ # (America/Menominee)
+ # (America/Merida)
+ # (America/Mexico_City)
+ # (America/Monterrey)
+ # (America/North_Dakota/Center)
+ # (America/Rainy_River)
+ # (America/Rankin_Inlet)
+ # (America/Regina)
+ # (America/Swift_Current)
+ # (America/Winnipeg)
+EDT -14400 D # Eastern Daylight Saving Time
+ # (America/Detroit)
+ # (America/Grand_Turk)
+ # (America/Indiana/Indianapolis)
+ # (America/Indiana/Knox)
+ # (America/Indiana/Marengo)
+ # (America/Indiana/Vevay)
+ # (America/Iqaluit)
+ # (America/Kentucky/Louisville)
+ # (America/Kentucky/Monticello)
+ # (America/Montreal)
+ # (America/Nassau)
+ # (America/New_York)
+ # (America/Nipigon)
+ # (America/Pangnirtung)
+ # (America/Thunder_Bay)
+ # (America/Toronto)
+EGST 0 D # East Greenland Summer Time
+ # (America/Scoresbysund)
+EGT -3600 # East Greenland Time (Svalbard & Jan Mayen)
+ # (America/Scoresbysund)
+# CONFLICT! EST is not unique
+# Other timezones:
+# - EST: Eastern Standard Time (Australia)
+EST -18000 # Eastern Standard Time (America)
+ # (America/Cayman)
+ # (America/Coral_Harbour)
+ # (America/Detroit)
+ # (America/Grand_Turk)
+ # (America/Indiana/Indianapolis)
+ # (America/Indiana/Knox)
+ # (America/Indiana/Marengo)
+ # (America/Indiana/Vevay)
+ # (America/Iqaluit)
+ # (America/Jamaica)
+ # (America/Kentucky/Louisville)
+ # (America/Kentucky/Monticello)
+ # (America/Montreal)
+ # (America/Nassau)
+ # (America/New_York)
+ # (America/Nipigon)
+ # (America/Panama)
+ # (America/Pangnirtung)
+ # (America/Thunder_Bay)
+ # (America/Toronto)
+FNT -7200 # Fernando de Noronha Time
+ # (America/Noronha)
+FNST -3600 D # Fernando de Noronha Summer Time (not in zic)
+ # (America/Noronha)
+GFT -10800 # French Guiana Time
+ # (America/Cayenne)
+GYT -14400 # Guyana Time
+ # (America/Guyana)
+MDT -21600 D # Mexico Mountain Daylight Time
+ # Mountain Daylight Time
+ # (America/Boise)
+ # (America/Cambridge_Bay)
+ # (America/Chihuahua)
+ # (America/Denver)
+ # (America/Edmonton)
+ # (America/Inuvik)
+ # (America/Mazatlan)
+ # (America/Yellowknife)
+MST -25200 # Mexico Mountain Standard Time
+ # Mountain Standard Time
+ # (America/Boise)
+ # (America/Cambridge_Bay)
+ # (America/Chihuahua)
+ # (America/Dawson_Creek)
+ # (America/Denver)
+ # (America/Edmonton)
+ # (America/Hermosillo)
+ # (America/Inuvik)
+ # (America/Mazatlan)
+ # (America/Phoenix)
+ # (America/Yellowknife)
+NDT -9000 D # Newfoundland Daylight Time
+ # (America/St_Johns)
+NST -12600 # Newfoundland Standard Time
+ # (America/St_Johns)
+PET -18000 # Peru Time (not in zic)
+PDT -25200 D # Pacific Daylight Time
+ # (America/Dawson)
+ # (America/Los_Angeles)
+ # (America/Tijuana)
+ # (America/Vancouver)
+ # (America/Whitehorse)
+PMDT -7200 D # Pierre & Miquelon Daylight Time
+ # (America/Miquelon)
+PMST -10800 # Pierre & Miquelon Standard Time
+ # (America/Miquelon)
+PST -28800 # Pacific Standard Time
+ # (America/Dawson)
+ # (America/Los_Angeles)
+ # (America/Tijuana)
+ # (America/Vancouver)
+ # (America/Whitehorse)
+ # (Pacific/Pitcairn)
+PYST -10800 D # Paraguay Summer Time
+ # (America/Asuncion)
+PYT -14400 # Paraguay Time
+ # (America/Asuncion)
+UYST -7200 D # Uruguay Summer Time (not in zic)
+UYT -10800 # Uruguay Time (not in zic)
+VET -14400 # Venezuela Time
+ # (America/Caracas)
+WGST -7200 D # Western Greenland Summer Time
+ # (America/Godthab)
+WGT -10800 # West Greenland Time
+ # (America/Godthab)
+
+#################### ANTARCTICA ####################
+
+DAVT 25200 # Davis Time (Antarctica)
+ # (Antarctica/Davis)
+DDUT 36000 # Dumont-d'Urville Time (Antarctica)
+ # (Antarctica/DumontDUrville)
+ # (Antarctica/Palmer)
+ # (America/Santiago)
+MAWT 21600 # Mawson Time (Antarctica)
+ # (Antarctica/Mawson)
+
+#################### ASIA ####################
+
+AFT 16200 # Afghanistan Time
+ # (Asia/Kabul)
+ALMT 21600 # Alma-Ata Time
+ # (Asia/Almaty)
+ALMST 25200 D # Alma-Ata Summer Time
+ # (Asia/Almaty)
+AMST 18000 D # Armenia Summer Time
+ # (Asia/Yerevan)
+# CONFLICT! AMT is not unique
+# Other timezones:
+# - AMT: Amazon Time (America)
+AMT 14400 # Armenia Time
+ # (Asia/Yerevan)
+ANAST 46800 D # Anadyr Summer Time
+ # (Asia/Anadyr)
+ANAT 43200 # Anadyr Time
+ # (Asia/Anadyr)
+AZST 18000 D # Azerbaijan Summer Time
+ # (Asia/Baku)
+AZT 14400 # Azerbaijan Time
+ # (Asia/Baku)
+BDT 21600 # Bangladesh Time
+ # (Asia/Dhaka)
+BNT 28800 # Brunei Darussalam Time
+ # (Asia/Brunei)
+BORT 28800 # Borneo Time (Indonesia) (not in zic)
+BTT 21600 # Bhutan Time
+ # (Asia/Thimphu)
+CCT 28800 # China Coastal Time (not in zic)
+GEST 14400 D # Georgia Summer Time (there was a timezone change in 2004)
+ # (Asia/Tbilisi)
+GET 10800 # Georgia Time (there was a timezone change in 2004)
+ # (Asia/Tbilisi)
+HKT 28800 # Hong Kong Time (not in zic)
+ICT 25200 # Indochina Time
+ # (Asia/Bangkok)
+ # (Asia/Phnom_Penh)
+ # (Asia/Saigon)
+ # (Asia/Vientiane)
+IRKST 32400 D # Irkutsk Summer Time
+ # (Asia/Irkutsk)
+IRKT 28800 # Irkutsk Time
+ # (Asia/Irkutsk)
+IRT 12600 # Iran Time (not in zic)
+# CONFLICT! IST is not unique
+# Other timezones:
+# - IST: Irish Summer Time (Europe)
+# - IST: Indian Standard Time (Asia)
+IST 7200 # Israel Standard Time (not in zic)
+JAYT 32400 # Jayapura Time (Indonesia) (not in zic)
+KDT 36000 D # Korean Daylight Time (not in zic)
+KGST 21600 D # Kyrgyzstan Summer Time
+ # (Asia/Bishkek)
+KGT 18000 # Kyrgyzstan Time
+ # (Asia/Bishkek)
+KRAST 28800 D # Krasnoyarsk Summer Time
+ # (Asia/Krasnoyarsk)
+KRAT 25200 # Krasnoyarsk Time
+ # (Asia/Krasnoyarsk)
+KST 32400 # Korean Standard Time
+ # (Asia/Pyongyang)
+LKT 21600 # Lanka Time
+ # (Asia/Colombo)
+MAGST 43200 D # Magadan Summer Time
+ # (Asia/Magadan)
+MAGT 39600 # Magadan Time
+ # (Asia/Magadan)
+MMT 23400 # Myanmar Time
+ # (Asia/Rangoon)
+MYT 28800 # Malaysia Time
+ # (Asia/Kuala_Lumpur)
+ # (Asia/Kuching)
+NOVST 25200 D # Novosibirsk Summer Time
+ # (Asia/Novosibirsk)
+NOVT 21600 # Novosibirsk Time
+ # (Asia/Novosibirsk)
+NPT 20700 # Nepal Time
+ # (Asia/Katmandu)
+OMSST 25200 D # Omsk Summer Time
+ # (Asia/Omsk)
+OMST 21600 # Omsk Time
+ # (Asia/Omsk)
+PETST 46800 D # Petropavlovsk-Kamchatski Summer Time
+ # (Asia/Kamchatka)
+PETT 43200 # Petropavlovsk-Kamchatski Time
+ # (Asia/Kamchatka)
+PHT 28800 # Phillipine Time (not in zic)
+PKT 18000 # Pakistan Time (not in zic)
+TJT 18000 # Tajikistan Time
+ # (Asia/Dushanbe)
+TMT 18000 # Turkmenistan Time
+ # (Asia/Ashgabat)
+ULAST 32400 D # Ulan Bator Summer Time
+ # (Asia/Ulaanbaatar)
+ULAT 28800 # Ulan Bator Time
+ # (Asia/Ulaanbaatar)
+UZST 21600 D # Uzbekistan Summer Time
+ # (Asia/Samarkand)
+ # (Asia/Tashkent)
+UZT 18000 # Uzbekistan Time
+ # (Asia/Samarkand)
+ # (Asia/Tashkent)
+VLAST 39600 D # Vladivostok Summer Time
+ # (Asia/Vladivostok)
+VLAT 36000 # Vladivostok Time
+ # (Asia/Vladivostok)
+YAKST 36000 D # Yakutsk Summer Time
+ # (Asia/Yakutsk)
+YAKT 32400 # Yakutsk Time
+ # (Asia/Yakutsk)
+YEKST 21600 D # Yekaterinburg Summer Time
+ # (Asia/Yekaterinburg)
+YEKT 18000 # Yekaterinburg Time
+ # (Asia/Yekaterinburg)
+
+#################### ATLANTIC ####################
+
+# CONFLICT! ADT is not unique
+# Other timezones:
+# - ADT: Arabic Daylight Time (Asia)
+ADT -10800 D # Atlantic Daylight Time
+ # (America/Glace_Bay)
+ # (America/Goose_Bay)
+ # (America/Halifax)
+ # (America/Thule)
+ # (Atlantic/Bermuda)
+# CONFLICT! AST is not unique
+# Other timezones:
+# - AST: Arabic Standard Time (Asia)
+# - AST: Al Manamah Standard Time (Asia) same offset as Arabia Standard Time
+# - AST/ACT: Acre Standard Time (America) listed as ACT
+# - AST: Anguilla Standard Time (America) same offset
+# - AST: Antigua Standard Time (America) same offset
+# - AST: Antilles Standard Time (America) same offset
+AST -14400 # Atlantic Standard Time
+ # (America/Anguilla)
+ # (America/Antigua)
+ # (America/Aruba)
+ # (America/Curacao)
+ # (America/Dominica)
+ # (America/Glace_Bay)
+ # (America/Goose_Bay)
+ # (America/Grenada)
+ # (America/Guadeloupe)
+ # (America/Halifax)
+ # (America/Martinique)
+ # (America/Montserrat)
+ # (America/Port_of_Spain)
+ # (America/Puerto_Rico)
+ # (America/Santo_Domingo)
+ # (America/St_Kitts)
+ # (America/St_Lucia)
+ # (America/St_Thomas)
+ # (America/St_Vincent)
+ # (America/Thule)
+ # (America/Tortola)
+ # (Atlantic/Bermuda)
+AZOST 0 D # Azores Summer Time
+ # (Atlantic/Azores)
+AZOT -3600 # Azores Time
+ # (Atlantic/Azores)
+FKST -10800 D # Falkland Islands Summer Time
+ # (Atlantic/Stanley)
+FKT -14400 # Falkland Islands Time
+ # (Atlantic/Stanley)
+
+#################### AUSTRALIA ####################
+
+ACSST 37800 D # Central Australia (not in zic)
+AESST 39600 D # Australia Eastern Summer Standard Time (not in zic)
+AEST 36000 # Australia Eastern Standard Time (not in zic)
+AWSST 32400 D # Australia Western Summer Standard Time (not in zic)
+AWST 28800 # Australia Western Standard Time (not in zic)
+CADT 37800 D # Central Australia Daylight-Saving Time (not in zic)
+CAST 34200 # Central Australia Standard Time (not in zic)
+LHDT 39600 D # Lord Howe Daylight Time, Australia (not in zic)
+LHST 37800 # Lord Howe Standard Time (Australia)
+ # (Australia/Lord_Howe)
+LIGT 36000 # Melbourne, Australia (not in zic)
+NZT 43200 # New Zealand Time (not in zic)
+SADT 37800 D # South Australian Daylight-Saving Time (not in zic)
+SAST 34200 # South Australian Standard Time (not in zic)
+WADT 28800 D # West Australian Daylight-Saving Time (not in zic)
+WAST 25200 # West Australian Standard Time (not in zic)
+WDT 32400 D # West Australian Daylight-Saving Time (not in zic)
+
+#################### ETC ####################
+
+GMT 0 # Greenwich Mean Time
+ # (Africa/Abidjan)
+ # (Africa/Bamako)
+ # (Africa/Banjul)
+ # (Africa/Bissau)
+ # (Africa/Conakry)
+ # (Africa/Dakar)
+ # (Africa/Lome)
+ # (Africa/Monrovia)
+ # (Africa/Nouakchott)
+ # (Africa/Ouagadougou)
+ # (Africa/Sao_Tome)
+ # (America/Danmarkshavn)
+ # (Atlantic/Reykjavik)
+ # (Atlantic/St_Helena)
+ # (Etc/GMT)
+ # (Europe/Dublin)
+ # (Europe/London)
+UCT 0 # Universal Coordinated Time
+ # (Etc/UCT)
+UT 0 # Universal Time (not in zic)
+UTC 0 # Coordinated Universal Time
+Z 0 # Zulu
+ZULU 0 # Zulu
+
+#################### EUROPE ####################
+
+BST 3600 D # British Summer Time
+ # Brazil Standard Time
+ # Bering Summer Time
+ # (Europe/London)
+BDST 7200 D # British Double Summer Time
+CEST 7200 D # Central Europe Summer Time
+ # (Africa/Ceuta)
+ # (Europe/Amsterdam)
+ # (Europe/Andorra)
+ # (Europe/Belgrade)
+ # (Europe/Berlin)
+ # (Europe/Brussels)
+ # (Europe/Budapest)
+ # (Europe/Copenhagen)
+ # (Europe/Gibraltar)
+ # (Europe/Luxembourg)
+ # (Europe/Madrid)
+ # (Europe/Malta)
+ # (Europe/Monaco)
+ # (Europe/Oslo)
+ # (Europe/Paris)
+ # (Europe/Prague)
+ # (Europe/Rome)
+ # (Europe/Stockholm)
+ # (Europe/Tirane)
+ # (Europe/Vaduz)
+ # (Europe/Vienna)
+ # (Europe/Warsaw)
+ # (Europe/Zurich)
+CET 3600 # Central Europe Time
+ # (Africa/Algiers)
+ # (Africa/Ceuta)
+ # (Europe/Amsterdam)
+ # (Europe/Andorra)
+ # (Europe/Belgrade)
+ # (Europe/Berlin)
+ # (Europe/Brussels)
+ # (Europe/Budapest)
+ # (Europe/Copenhagen)
+ # (Europe/Gibraltar)
+ # (Europe/Luxembourg)
+ # (Europe/Madrid)
+ # (Europe/Malta)
+ # (Europe/Monaco)
+ # (Europe/Oslo)
+ # (Europe/Paris)
+ # (Europe/Prague)
+ # (Europe/Rome)
+ # (Europe/Stockholm)
+ # (Europe/Tirane)
+ # (Europe/Vaduz)
+ # (Europe/Vienna)
+ # (Europe/Warsaw)
+ # (Europe/Zurich)
+CETDST 7200 D # Central Europe Summer Time
+ # (Africa/Ceuta)
+ # (Europe/Amsterdam)
+ # (Europe/Andorra)
+ # (Europe/Belgrade)
+ # (Europe/Berlin)
+ # (Europe/Brussels)
+ # (Europe/Budapest)
+ # (Europe/Copenhagen)
+ # (Europe/Gibraltar)
+ # (Europe/Luxembourg)
+ # (Europe/Madrid)
+ # (Europe/Malta)
+ # (Europe/Monaco)
+ # (Europe/Oslo)
+ # (Europe/Paris)
+ # (Europe/Prague)
+ # (Europe/Rome)
+ # (Europe/Stockholm)
+ # (Europe/Tirane)
+ # (Europe/Vaduz)
+ # (Europe/Vienna)
+ # (Europe/Warsaw)
+ # (Europe/Zurich)
+EEST 10800 D # East-Egypt Summertime
+ # Eastern Europe Summer Time
+ # (Africa/Cairo)
+ # (Asia/Amman)
+ # (Asia/Beirut)
+ # (Asia/Damascus)
+ # (Asia/Gaza)
+ # (Asia/Nicosia)
+ # (Europe/Athens)
+ # (Europe/Bucharest)
+ # (Europe/Chisinau)
+ # (Europe/Helsinki)
+ # (Europe/Istanbul)
+ # (Europe/Kaliningrad)
+ # (Europe/Kiev)
+ # (Europe/Minsk)
+ # (Europe/Riga)
+ # (Europe/Simferopol)
+ # (Europe/Sofia)
+ # (Europe/Tallinn)
+ # (Europe/Uzhgorod)
+ # (Europe/Vilnius)
+ # (Europe/Zaporozhye)
+EET 7200 # East-Egypt Time
+ # Eastern Europe Time
+ # (Africa/Cairo)
+ # (Africa/Tripoli)
+ # (Asia/Amman)
+ # (Asia/Beirut)
+ # (Asia/Damascus)
+ # (Asia/Gaza)
+ # (Asia/Nicosia)
+ # (Europe/Athens)
+ # (Europe/Bucharest)
+ # (Europe/Chisinau)
+ # (Europe/Helsinki)
+ # (Europe/Istanbul)
+ # (Europe/Kaliningrad)
+ # (Europe/Kiev)
+ # (Europe/Minsk)
+ # (Europe/Riga)
+ # (Europe/Simferopol)
+ # (Europe/Sofia)
+ # (Europe/Tallinn)
+ # (Europe/Uzhgorod)
+ # (Europe/Vilnius)
+ # (Europe/Zaporozhye)
+EETDST 10800 D # East-Egypt Summertime
+ # Eastern Europe Summer Time
+ # (Africa/Cairo)
+ # (Asia/Amman)
+ # (Asia/Beirut)
+ # (Asia/Damascus)
+ # (Asia/Gaza)
+ # (Asia/Nicosia)
+ # (Europe/Athens)
+ # (Europe/Bucharest)
+ # (Europe/Chisinau)
+ # (Europe/Helsinki)
+ # (Europe/Istanbul)
+ # (Europe/Kaliningrad)
+ # (Europe/Kiev)
+ # (Europe/Minsk)
+ # (Europe/Riga)
+ # (Europe/Simferopol)
+ # (Europe/Sofia)
+ # (Europe/Tallinn)
+ # (Europe/Uzhgorod)
+ # (Europe/Vilnius)
+ # (Europe/Zaporozhye)
+MEST 7200 D # Middle Europe Summer Time (not in zic)
+MET 3600 # Middle Europe Time (not in zic)
+METDST 7200 D # Middle Europe Summer Time (not in zic)
+MEZ 3600 # Mitteleuropaeische Zeit (German) (not in zic)
+MSD 14400 D # Moscow Daylight Time
+ # (Europe/Moscow)
+MSK 10800 # Moscow Time
+ # (Europe/Moscow)
+WET 0 # Western Europe Time
+ # (Africa/Casablanca)
+ # (Africa/El_Aaiun)
+ # (Atlantic/Canary)
+ # (Atlantic/Faeroe)
+ # (Atlantic/Madeira)
+ # (Europe/Lisbon)
+WETDST 3600 D # Western Europe Summer Time
+ # (Atlantic/Canary)
+ # (Atlantic/Faeroe)
+ # (Atlantic/Madeira)
+ # (Europe/Lisbon)
+
+#################### INDIAN ####################
+
+CXT 25200 # Christmas Island Time (Indian Ocean)
+ # (Indian/Christmas)
+IOT 21600 # British Indian Ocean Territory (Chagos) (there was a timezone change recently in 1996)
+ # (Indian/Chagos)
+MUT 14400 # Mauritius Island Time
+ # (Indian/Mauritius)
+MVT 18000 # Maldives Island Time
+ # (Indian/Maldives)
+RET 14400 # Reunion Time
+ # (Indian/Reunion)
+SCT 14400 # Seychelles Time
+ # (Indian/Mahe)
+TFT 18000 # Kerguelen Time
+ # (Indian/Kerguelen)
+
+#################### PACIFIC ####################
+
+CHADT 49500 D # Chatham Daylight Time (New Zealand)
+ # (Pacific/Chatham)
+CHAST 45900 # Chatham Standard Time (New Zealand)
+ # (Pacific/Chatham)
+CKT 43200 # Cook Islands Time (not in zic)
+EASST -18000 D # Easter Island Summer Time (Chile)
+ # (Pacific/Easter)
+EAST -21600 # Easter Island Time (Chile)
+ # (Pacific/Easter)
+FJST -46800 D # Fiji Summer Time (not in zic)
+FJT -43200 # Fiji Time (not in zic)
+GALT -21600 # Galapagos Time
+ # (Pacific/Galapagos)
+GAMT -32400 # Gambier Time
+ # (Pacific/Gambier)
+GILT 43200 # Gilbert Islands Time
+ # (Pacific/Tarawa)
+HST -36000 # Hawaiian Standard Time
+ # (Pacific/Honolulu)
+ # (Pacific/Johnston)
+KOST 39600 # Kosrae Time
+ # (Pacific/Kosrae)
+LINT 50400 # Line Islands Time (Kiribati)
+ # (Pacific/Kiritimati)
+MART -34200 # Marquesas Time
+ # (Pacific/Marquesas)
+MHT 43200 # Kwajalein Time
+ # (Pacific/Kwajalein)
+ # (Pacific/Majuro)
+MPT 36000 # North Mariana Islands Time (not in zic)
+# CONFLICT! NFT is not unique
+# Other timezones:
+# - NFT: Norfolk Time (Pacific)
+NFT -12600 # Newfoundland Time (not in zic)
+NUT -39600 # Niue Time
+ # (Pacific/Niue)
+NZDT 46800 D # New Zealand Daylight Time
+ # (Antarctica/McMurdo)
+ # (Pacific/Auckland)
+NZST 43200 # New Zealand Standard Time
+ # (Antarctica/McMurdo)
+ # (Pacific/Auckland)
+PGT 36000 # Papua New Guinea Time
+ # (Pacific/Port_Moresby)
+PHOT 46800 # Phoenix Islands Time (Kiribati)
+ # (Pacific/Enderbury)
+PONT 39600 # Ponape Time (Micronesia)
+ # (Pacific/Ponape)
+PWT 32400 # Palau Time
+ # (Pacific/Palau)
+TAHT -36000 # Tahiti Time (zic says "TAHT", other sources "THAT")
+ # (Pacific/Tahiti)
+TKT -36000 # Tokelau Time
+ # (Pacific/Fakaofo)
+TOT 46800 # Tonga Time (not in zic)
+TRUT 36000 # Truk Time (zic says "TRUT", other souces say "TRUK")
+ # (Pacific/Truk)
+TVT 43200 # Tuvalu Time
+ # (Pacific/Funafuti)
+VUT 39600 # Vanuata Time (not in zic)
+WAKT 43200 # Wake Time
+ # (Pacific/Wake)
+WFT 43200 # Wallis and Futuna Time
+ # (Pacific/Wallis)
+YAPT 36000 # Yap Time (Micronesia) (not in zic)
+
diff --git a/src/timezone/tznames/Etc.txt b/src/timezone/tznames/Etc.txt
new file mode 100644
index 00000000000..9d8d15f055b
--- /dev/null
+++ b/src/timezone/tznames/Etc.txt
@@ -0,0 +1,33 @@
+#
+# NOTE:
+# This file is NOT loaded by the PostgreSQL database. It just serves as
+# a template for timezones you could need. See the `Date/Time Support'
+# appendix in the PostgreSQL documentation for more information.
+#
+
+GMT 0 # Greenwich Mean Time
+ # (Africa/Abidjan)
+ # (Africa/Bamako)
+ # (Africa/Banjul)
+ # (Africa/Bissau)
+ # (Africa/Conakry)
+ # (Africa/Dakar)
+ # (Africa/Lome)
+ # (Africa/Monrovia)
+ # (Africa/Nouakchott)
+ # (Africa/Ouagadougou)
+ # (Africa/Sao_Tome)
+ # (America/Danmarkshavn)
+ # (Atlantic/Reykjavik)
+ # (Atlantic/St_Helena)
+ # (Etc/GMT)
+ # (Europe/Dublin)
+ # (Europe/London)
+UCT 0 # Universal Coordinated Time
+ # (Etc/UCT)
+UT 0 # Universal Time (not in zic)
+UTC 0 # Coordinated Universal Time
+ # (Etc/UTC)
+Z 0 # Zulu
+ZULU 0 # Zulu
+
diff --git a/src/timezone/tznames/Europe.txt b/src/timezone/tznames/Europe.txt
new file mode 100644
index 00000000000..19839a69a01
--- /dev/null
+++ b/src/timezone/tznames/Europe.txt
@@ -0,0 +1,207 @@
+#
+# NOTE:
+# This file is NOT loaded by the PostgreSQL database. It just serves as
+# a template for timezones you could need. See the `Date/Time Support'
+# appendix in the PostgreSQL documentation for more information.
+#
+
+BST 3600 D # British Summer Time
+ # Brazil Standard Time
+ # Bering Summer Time
+ # (Europe/London)
+CEST 7200 D # Central Europe Summer Time
+ # (Africa/Ceuta)
+ # (Europe/Amsterdam)
+ # (Europe/Andorra)
+ # (Europe/Belgrade)
+ # (Europe/Berlin)
+ # (Europe/Brussels)
+ # (Europe/Budapest)
+ # (Europe/Copenhagen)
+ # (Europe/Gibraltar)
+ # (Europe/Luxembourg)
+ # (Europe/Madrid)
+ # (Europe/Malta)
+ # (Europe/Monaco)
+ # (Europe/Oslo)
+ # (Europe/Paris)
+ # (Europe/Prague)
+ # (Europe/Rome)
+ # (Europe/Stockholm)
+ # (Europe/Tirane)
+ # (Europe/Vaduz)
+ # (Europe/Vienna)
+ # (Europe/Warsaw)
+ # (Europe/Zurich)
+CET 3600 # Central Europe Time
+ # (Africa/Algiers)
+ # (Africa/Ceuta)
+ # (Europe/Amsterdam)
+ # (Europe/Andorra)
+ # (Europe/Belgrade)
+ # (Europe/Berlin)
+ # (Europe/Brussels)
+ # (Europe/Budapest)
+ # (Europe/Copenhagen)
+ # (Europe/Gibraltar)
+ # (Europe/Luxembourg)
+ # (Europe/Madrid)
+ # (Europe/Malta)
+ # (Europe/Monaco)
+ # (Europe/Oslo)
+ # (Europe/Paris)
+ # (Europe/Prague)
+ # (Europe/Rome)
+ # (Europe/Stockholm)
+ # (Europe/Tirane)
+ # (Europe/Vaduz)
+ # (Europe/Vienna)
+ # (Europe/Warsaw)
+ # (Europe/Zurich)
+CETDST 7200 D # Central Europe Summer Time
+ # (Africa/Ceuta)
+ # (Europe/Amsterdam)
+ # (Europe/Andorra)
+ # (Europe/Belgrade)
+ # (Europe/Berlin)
+ # (Europe/Brussels)
+ # (Europe/Budapest)
+ # (Europe/Copenhagen)
+ # (Europe/Gibraltar)
+ # (Europe/Luxembourg)
+ # (Europe/Madrid)
+ # (Europe/Malta)
+ # (Europe/Monaco)
+ # (Europe/Oslo)
+ # (Europe/Paris)
+ # (Europe/Prague)
+ # (Europe/Rome)
+ # (Europe/Stockholm)
+ # (Europe/Tirane)
+ # (Europe/Vaduz)
+ # (Europe/Vienna)
+ # (Europe/Warsaw)
+ # (Europe/Zurich)
+EEST 10800 D # East-Egypt Summertime
+ # Eastern Europe Summer Time
+ # (Africa/Cairo)
+ # (Asia/Amman)
+ # (Asia/Beirut)
+ # (Asia/Damascus)
+ # (Asia/Gaza)
+ # (Asia/Nicosia)
+ # (Europe/Athens)
+ # (Europe/Bucharest)
+ # (Europe/Chisinau)
+ # (Europe/Helsinki)
+ # (Europe/Istanbul)
+ # (Europe/Kaliningrad)
+ # (Europe/Kiev)
+ # (Europe/Minsk)
+ # (Europe/Riga)
+ # (Europe/Simferopol)
+ # (Europe/Sofia)
+ # (Europe/Tallinn)
+ # (Europe/Uzhgorod)
+ # (Europe/Vilnius)
+ # (Europe/Zaporozhye)
+EET 7200 # East-Egypt Time
+ # Eastern Europe Time
+ # (Africa/Cairo)
+ # (Africa/Tripoli)
+ # (Asia/Amman)
+ # (Asia/Beirut)
+ # (Asia/Damascus)
+ # (Asia/Gaza)
+ # (Asia/Nicosia)
+ # (Europe/Athens)
+ # (Europe/Bucharest)
+ # (Europe/Chisinau)
+ # (Europe/Helsinki)
+ # (Europe/Istanbul)
+ # (Europe/Kaliningrad)
+ # (Europe/Kiev)
+ # (Europe/Minsk)
+ # (Europe/Riga)
+ # (Europe/Simferopol)
+ # (Europe/Sofia)
+ # (Europe/Tallinn)
+ # (Europe/Uzhgorod)
+ # (Europe/Vilnius)
+ # (Europe/Zaporozhye)
+EETDST 10800 D # East-Egypt Summertime
+ # Eastern Europe Summer Time
+ # (Africa/Cairo)
+ # (Asia/Amman)
+ # (Asia/Beirut)
+ # (Asia/Damascus)
+ # (Asia/Gaza)
+ # (Asia/Nicosia)
+ # (Europe/Athens)
+ # (Europe/Bucharest)
+ # (Europe/Chisinau)
+ # (Europe/Helsinki)
+ # (Europe/Istanbul)
+ # (Europe/Kaliningrad)
+ # (Europe/Kiev)
+ # (Europe/Minsk)
+ # (Europe/Riga)
+ # (Europe/Simferopol)
+ # (Europe/Sofia)
+ # (Europe/Tallinn)
+ # (Europe/Uzhgorod)
+ # (Europe/Vilnius)
+ # (Europe/Zaporozhye)
+GMT 0 # Greenwich Mean Time
+ # (Africa/Abidjan)
+ # (Africa/Bamako)
+ # (Africa/Banjul)
+ # (Africa/Bissau)
+ # (Africa/Conakry)
+ # (Africa/Dakar)
+ # (Africa/Lome)
+ # (Africa/Monrovia)
+ # (Africa/Nouakchott)
+ # (Africa/Ouagadougou)
+ # (Africa/Sao_Tome)
+ # (America/Danmarkshavn)
+ # (Atlantic/Reykjavik)
+ # (Atlantic/St_Helena)
+ # (Etc/GMT)
+ # (Europe/Dublin)
+ # (Europe/London)
+# CONFLICT! IST is not unique
+# Other timezones:
+# - IST: Indian Standard Time (Asia)
+# - IST: Israel Standard Time (Asia)
+IST 3600 D # Irish Summer Time
+ # (Europe/Dublin)
+MEST 7200 D # Middle Europe Summer Time (not in zic)
+MET 3600 # Middle Europe Time (not in zic)
+METDST 7200 D # Middle Europe Summer Time (not in zic)
+MEZ 3600 # Mitteleuropäische Zeit (German) (not in zic)
+MSD 14400 D # Moscow Daylight Time
+ # (Europe/Moscow)
+MSK 10800 # Moscow Time
+ # (Europe/Moscow)
+SAMST 18000 D # Samara Summer Time
+ # (Europe/Samara)
+SAMT 14400 # Samara Time
+ # (Europe/Samara)
+WEST 3600 D # Western Europe Summer Time
+ # (Atlantic/Canary)
+ # (Atlantic/Faeroe)
+ # (Atlantic/Madeira)
+ # (Europe/Lisbon)
+WET 0 # Western Europe Time
+ # (Africa/Casablanca)
+ # (Africa/El_Aaiun)
+ # (Atlantic/Canary)
+ # (Atlantic/Faeroe)
+ # (Atlantic/Madeira)
+ # (Europe/Lisbon)
+WETDST 3600 D # Western Europe Summer Time
+ # (Atlantic/Canary)
+ # (Atlantic/Faeroe)
+ # (Atlantic/Madeira)
+ # (Europe/Lisbon)
diff --git a/src/timezone/tznames/India b/src/timezone/tznames/India
new file mode 100644
index 00000000000..11e4d126093
--- /dev/null
+++ b/src/timezone/tznames/India
@@ -0,0 +1,12 @@
+# Time zone configuration file for set "India"
+
+# In order to use this file, you need to set the run-time parameter
+# timezone_abbreviations to 'India'. See the `Date/Time Support'
+# appendix in the PostgreSQL documentation for more information.
+
+
+# include the default set
+@INCLUDE Default
+
+IST 19800 # Indian Standard Time
+ # (Asia/Calcutta)
diff --git a/src/timezone/tznames/Indian.txt b/src/timezone/tznames/Indian.txt
new file mode 100644
index 00000000000..06a880ecc98
--- /dev/null
+++ b/src/timezone/tznames/Indian.txt
@@ -0,0 +1,35 @@
+#
+# NOTE:
+# This file is NOT loaded by the PostgreSQL database. It just serves as
+# a template for timezones you could need. See the `Date/Time Support'
+# appendix in the PostgreSQL documentation for more information.
+#
+
+CCT 23400 # Cocos Islands Time (Indian Ocean)
+ # (Indian/Cocos)
+CXT 25200 # Christmas Island Time (Indian Ocean)
+ # (Indian/Christmas)
+EAT 10800 # East Africa Time
+ # (Africa/Addis_Ababa)
+ # (Africa/Asmera)
+ # (Africa/Dar_es_Salaam)
+ # (Africa/Djibouti)
+ # (Africa/Kampala)
+ # (Africa/Khartoum)
+ # (Africa/Mogadishu)
+ # (Africa/Nairobi)
+ # (Indian/Antananarivo)
+ # (Indian/Comoro)
+ # (Indian/Mayotte)
+IOT 21600 # British Indian Ocean Territory (Chagos) (there was a timezone change recently in 1996)
+ # (Indian/Chagos)
+MUT 14400 # Mauritius Island Time
+ # (Indian/Mauritius)
+MVT 18000 # Maldives Island Time
+ # (Indian/Maldives)
+RET 14400 # Reunion Time
+ # (Indian/Reunion)
+SCT 14400 # Seychelles Time
+ # (Indian/Mahe)
+TFT 18000 # Kerguelen Time
+ # (Indian/Kerguelen)
diff --git a/src/timezone/tznames/Makefile b/src/timezone/tznames/Makefile
new file mode 100644
index 00000000000..aca2c595963
--- /dev/null
+++ b/src/timezone/tznames/Makefile
@@ -0,0 +1,30 @@
+#-------------------------------------------------------------------------
+#
+# Makefile
+# Makefile for the timezone names
+
+# IDENTIFICATION
+# $PostgreSQL: pgsql/src/timezone/tznames/Makefile,v 1.1 2006/07/25 03:51:23 tgl Exp $
+#
+#-------------------------------------------------------------------------
+
+subdir = src/timezone/tznames
+top_builddir = ../../..
+include $(top_builddir)/src/Makefile.global
+
+TZNAMES_TEMPLATES := Africa.txt America.txt Antarctica.txt Asia.txt \
+ Atlantic.txt Australia.txt Etc.txt Europe.txt Indian.txt Pacific.txt
+TZNAMES_TEMPLATES_FILES := $(TZNAMES_TEMPLATES:%=$(srcdir)/%)
+
+TZNAMES_SETS := Default Australia India
+TZNAMES_SETS_FILES := $(TZNAMES_SETS:%=$(srcdir)/%)
+
+install: installdirs
+ $(INSTALL_DATA) $(TZNAMES_TEMPLATES_FILES) '$(DESTDIR)$(datadir)/timezonesets'
+ $(INSTALL_DATA) $(TZNAMES_SETS_FILES) '$(DESTDIR)$(datadir)/timezonesets'
+
+installdirs:
+ $(mkinstalldirs) '$(DESTDIR)$(datadir)/timezonesets'
+
+uninstall:
+ rm -rf '$(DESTDIR)$(datadir)/timezonesets'
diff --git a/src/timezone/tznames/Pacific.txt b/src/timezone/tznames/Pacific.txt
new file mode 100644
index 00000000000..1616b939f79
--- /dev/null
+++ b/src/timezone/tznames/Pacific.txt
@@ -0,0 +1,100 @@
+#
+# NOTE:
+# This file is NOT loaded by the PostgreSQL database. It just serves as
+# a template for timezones you could need. See the `Date/Time Support'
+# appendix in the PostgreSQL documentation for more information.
+#
+
+CHADT 49500 D # Chatham Daylight Time (New Zealand)
+ # (Pacific/Chatham)
+CHAST 45900 # Chatham Standard Time (New Zealand)
+ # (Pacific/Chatham)
+ChST 36000 # Chamorro Standard Time (lower case "h" is as in zic)
+ # (Pacific/Guam)
+ # (Pacific/Saipan)
+CKT 43200 # Cook Islands Time (not in zic)
+EASST -18000 D # Easter Island Summer Time (Chile)
+ # (Pacific/Easter)
+# CONFLICT! EAST is not unique
+# Other timezones:
+# - EAST: East Australian Standard Time (Australia)
+EAST -21600 # Easter Island Time (Chile)
+ # (Pacific/Easter)
+FJST -46800 D # Fiji Summer Time (not in zic)
+FJT -43200 # Fiji Time (not in zic)
+GALT -21600 # Galapagos Time
+ # (Pacific/Galapagos)
+GAMT -32400 # Gambier Time
+ # (Pacific/Gambier)
+GILT 43200 # Gilbert Islands Time
+ # (Pacific/Tarawa)
+HST -36000 # Hawaiian Standard Time
+ # (Pacific/Honolulu)
+ # (Pacific/Johnston)
+KOST 39600 # Kosrae Time
+ # (Pacific/Kosrae)
+LINT 50400 # Line Islands Time (Kiribati)
+ # (Pacific/Kiritimati)
+MART -34200 # Marquesas Time
+ # (Pacific/Marquesas)
+MHT 43200 # Kwajalein Time
+ # (Pacific/Kwajalein)
+ # (Pacific/Majuro)
+MPT 36000 # North Mariana Islands Time (not in zic)
+NCT 39600 # New Caledonia Time (not in zic)
+# CONFLICT! NFT is not unique
+# Other timezones:
+# - NFT: Newfoundland Time (America)
+NFT 41400 # Norfolk Time
+ # (Pacific/Norfolk)
+NRT 43200 # Nauru Time
+ # (Pacific/Nauru)
+NUT -39600 # Niue Time
+ # (Pacific/Niue)
+NZDT 46800 D # New Zealand Daylight Time
+ # (Antarctica/McMurdo)
+ # (Pacific/Auckland)
+NZST 43200 # New Zealand Standard Time
+ # (Antarctica/McMurdo)
+ # (Pacific/Auckland)
+PGT 36000 # Papua New Guinea Time
+ # (Pacific/Port_Moresby)
+PHOT 46800 # Phoenix Islands Time (Kiribati)
+ # (Pacific/Enderbury)
+PONT 39600 # Ponape Time (Micronesia)
+ # (Pacific/Ponape)
+PST -28800 # Pacific Standard Time
+ # (America/Dawson)
+ # (America/Los_Angeles)
+ # (America/Tijuana)
+ # (America/Vancouver)
+ # (America/Whitehorse)
+ # (Pacific/Pitcairn)
+PWT 32400 # Palau Time
+ # (Pacific/Palau)
+SBT 39600 # Solomon Islands Time
+ # (Pacific/Guadalcanal)
+SST -39600 # South Sumatran Time
+ # (Pacific/Midway)
+ # (Pacific/Pago_Pago)
+TAHT -36000 # Tahiti Time (zic says "TAHT", other sources "THAT")
+ # (Pacific/Tahiti)
+TKT -36000 # Tokelau Time
+ # (Pacific/Fakaofo)
+TOT 46800 # Tonga Time (not in zic)
+TRUT 36000 # Truk Time (zic says "TRUT", other souces say "TRUK")
+ # (Pacific/Truk)
+TVT 43200 # Tuvalu Time
+ # (Pacific/Funafuti)
+VUT 39600 # Vanuata Time (not in zic)
+WAKT 43200 # Wake Time
+ # (Pacific/Wake)
+WFT 43200 # Wallis and Futuna Time
+ # (Pacific/Wallis)
+# CONFLICT! WST is not unique
+# Other timezones:
+# - WST: Western Standard Time (Australia)
+WST -39600 # West Samoa Time
+ # (Pacific/Apia)
+YAPT 36000 # Yap Time (Micronesia) (not in zic)
+
diff --git a/src/timezone/tznames/README b/src/timezone/tznames/README
new file mode 100644
index 00000000000..ce4538873e2
--- /dev/null
+++ b/src/timezone/tznames/README
@@ -0,0 +1,18 @@
+This directory contains files with timezone sets for PostgreSQL. The problem
+is that time zone abbreviations are not unique throughout the world and you
+might find out that a time zone abbreviation in the `Default' set collides
+with the one you wanted to use. All other files except for `Default' are
+intended to override values from the `Default' set. So you might already have
+a file here that serves your needs. If not, you can create your own.
+
+In order to use one of these files, you need to set
+
+ timezone_abbreviations = 'xyz'
+
+in any of the usual ways for setting a parameter, where xyz is the filename
+that contains the desired time zone names.
+
+If you do not find an appropriate set of time zone names for your geographic
+location supplied here, please report this to <pgsql-hackers@postgresql.org>.
+Your set of time zone names can then be included in future releases.
+For the time being you can always add your own set.