summaryrefslogtreecommitdiffstats
path: root/sql/gen_win_tzname_data.ps1
diff options
context:
space:
mode:
Diffstat (limited to 'sql/gen_win_tzname_data.ps1')
-rw-r--r--sql/gen_win_tzname_data.ps112
1 files changed, 12 insertions, 0 deletions
diff --git a/sql/gen_win_tzname_data.ps1 b/sql/gen_win_tzname_data.ps1
new file mode 100644
index 00000000..474ab889
--- /dev/null
+++ b/sql/gen_win_tzname_data.ps1
@@ -0,0 +1,12 @@
+# Generates a header file for converting between Windows timezone names to tzdb names
+# using CLDR data.
+# Usage: powershell -File gen_win_tzname_data.ps1 > win_tzname_data.h
+
+write-output "/* This file was generated using gen_win_tzname_data.ps1 */"
+$xdoc = new-object System.Xml.XmlDocument
+[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
+$xdoc.load("https://raw.githubusercontent.com/unicode-org/cldr/master/common/supplemental/windowsZones.xml")
+$nodes = $xdoc.SelectNodes("//mapZone[@territory='001']") # use default territory (001)
+foreach ($node in $nodes) {
+ write-output ('{L"'+ $node.other + '","'+ $node.type+'"},')
+}