diff options
Diffstat (limited to 'util/local_database/cldr2qtimezone.py')
-rw-r--r--[-rwxr-xr-x] | util/local_database/cldr2qtimezone.py | 227 |
1 files changed, 115 insertions, 112 deletions
diff --git a/util/local_database/cldr2qtimezone.py b/util/local_database/cldr2qtimezone.py index b48f7dc43f..6c0195e984 100755..100644 --- a/util/local_database/cldr2qtimezone.py +++ b/util/local_database/cldr2qtimezone.py @@ -1,41 +1,33 @@ #!/usr/bin/env python ############################################################################# ## -## Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). -## Contact: http://www.qt-project.org/legal +## Copyright (C) 2015 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ ## ## This file is part of the test suite of the Qt Toolkit. ## -## $QT_BEGIN_LICENSE:LGPL$ +## $QT_BEGIN_LICENSE:LGPL21$ ## Commercial License Usage ## Licensees holding valid commercial Qt licenses may use this file in ## accordance with the commercial license agreement provided with the ## Software or, alternatively, in accordance with the terms contained in -## a written agreement between you and Digia. For licensing terms and -## conditions see http://qt.digia.com/licensing. For further information -## use the contact form at http://qt.digia.com/contact-us. +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see http://www.qt.io/terms-conditions. For further +## information use the contact form at http://www.qt.io/contact-us. ## ## GNU Lesser General Public License Usage ## Alternatively, this file may be used under the terms of the GNU Lesser -## General Public License version 2.1 as published by the Free Software -## Foundation and appearing in the file LICENSE.LGPL included in the -## packaging of this file. Please review the following information to -## ensure the GNU Lesser General Public License version 2.1 requirements -## will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## General Public License version 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ## -## In addition, as a special exception, Digia gives you certain additional -## rights. These rights are described in the Digia Qt LGPL Exception +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception ## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ## -## GNU General Public License Usage -## Alternatively, this file may be used under the terms of the GNU -## General Public License version 3.0 as published by the Free Software -## Foundation and appearing in the file LICENSE.GPL included in the -## packaging of this file. Please review the following information to -## ensure the GNU General Public License version 3.0 requirements will be -## met: http://www.gnu.org/copyleft/gpl.html. -## -## ## $QT_END_LICENSE$ ## ############################################################################# @@ -104,101 +96,106 @@ windowsIdList = { 3 : [ u'Arab Standard Time', 10800 ], 4 : [ u'Arabian Standard Time', 14400 ], 5 : [ u'Arabic Standard Time', 10800 ], - 6 : [ u'Argentina Standard Time', 10800 ], + 6 : [ u'Argentina Standard Time', -10800 ], 7 : [ u'Atlantic Standard Time', -14400 ], 8 : [ u'AUS Central Standard Time', 34200 ], 9 : [ u'AUS Eastern Standard Time', 36000 ], 10 : [ u'Azerbaijan Standard Time', 14400 ], 11 : [ u'Azores Standard Time', -3600 ], - 12 : [ u'Bahia Standard Time', 10800 ], + 12 : [ u'Bahia Standard Time', -10800 ], 13 : [ u'Bangladesh Standard Time', 21600 ], - 14 : [ u'Canada Central Standard Time', -21600 ], - 15 : [ u'Cape Verde Standard Time', -3600 ], - 16 : [ u'Caucasus Standard Time', 14400 ], - 17 : [ u'Cen. Australia Standard Time', 34200 ], - 18 : [ u'Central America Standard Time', -21600 ], - 19 : [ u'Central Asia Standard Time', 21600 ], - 20 : [ u'Central Brazilian Standard Time', -14400 ], - 21 : [ u'Central Europe Standard Time', 3600 ], - 22 : [ u'Central European Standard Time', 3600 ], - 23 : [ u'Central Pacific Standard Time', 39600 ], - 24 : [ u'Central Standard Time (Mexico)', -21600 ], - 25 : [ u'Central Standard Time', -21600 ], - 26 : [ u'China Standard Time', 28800 ], - 27 : [ u'Dateline Standard Time', -43200 ], - 28 : [ u'E. Africa Standard Time', 10800 ], - 29 : [ u'E. Australia Standard Time', 36000 ], - 30 : [ u'E. Europe Standard Time', 7200 ], + 14 : [ u'Belarus Standard Time', 10800 ], + 15 : [ u'Canada Central Standard Time', -21600 ], + 16 : [ u'Cape Verde Standard Time', -3600 ], + 17 : [ u'Caucasus Standard Time', 14400 ], + 18 : [ u'Cen. Australia Standard Time', 34200 ], + 19 : [ u'Central America Standard Time', -21600 ], + 20 : [ u'Central Asia Standard Time', 21600 ], + 21 : [ u'Central Brazilian Standard Time', -14400 ], + 22 : [ u'Central Europe Standard Time', 3600 ], + 23 : [ u'Central European Standard Time', 3600 ], + 24 : [ u'Central Pacific Standard Time', 39600 ], + 25 : [ u'Central Standard Time (Mexico)', -21600 ], + 26 : [ u'Central Standard Time', -21600 ], + 27 : [ u'China Standard Time', 28800 ], + 28 : [ u'Dateline Standard Time', -43200 ], + 29 : [ u'E. Africa Standard Time', 10800 ], + 30 : [ u'E. Australia Standard Time', 36000 ], 31 : [ u'E. South America Standard Time', -10800 ], 32 : [ u'Eastern Standard Time', -18000 ], - 33 : [ u'Egypt Standard Time', 7200 ], - 34 : [ u'Ekaterinburg Standard Time', 21600 ], - 35 : [ u'Fiji Standard Time', 43200 ], - 36 : [ u'FLE Standard Time', 7200 ], - 37 : [ u'Georgian Standard Time', 14400 ], - 38 : [ u'GMT Standard Time', 0 ], - 39 : [ u'Greenland Standard Time', 10800 ], - 40 : [ u'Greenwich Standard Time', 0 ], - 41 : [ u'GTB Standard Time', 7200 ], - 42 : [ u'Hawaiian Standard Time', -36000 ], - 43 : [ u'India Standard Time', 19800 ], - 44 : [ u'Iran Standard Time', 12600 ], - 45 : [ u'Israel Standard Time', 7200 ], - 46 : [ u'Jordan Standard Time', 7200 ], - 47 : [ u'Kaliningrad Standard Time', 10800 ], - 48 : [ u'Korea Standard Time', 32400 ], - 49 : [ u'Magadan Standard Time', 43200 ], - 50 : [ u'Mauritius Standard Time', 14400 ], - 51 : [ u'Middle East Standard Time', 7200 ], - 52 : [ u'Montevideo Standard Time', 10800 ], - 53 : [ u'Morocco Standard Time', 0 ], - 54 : [ u'Mountain Standard Time (Mexico)', -25200 ], - 55 : [ u'Mountain Standard Time', -25200 ], - 56 : [ u'Myanmar Standard Time', 23400 ], - 57 : [ u'N. Central Asia Standard Time', 23400 ], - 58 : [ u'Namibia Standard Time', 3600 ], - 59 : [ u'Nepal Standard Time', 20700 ], - 60 : [ u'New Zealand Standard Time', 43200 ], - 61 : [ u'Newfoundland Standard Time', -12600 ], - 62 : [ u'North Asia East Standard Time', 32400 ], - 63 : [ u'North Asia Standard Time', 28800 ], - 64 : [ u'Pacific SA Standard Time', -14400 ], - 65 : [ u'Pacific Standard Time (Mexico)', -28800 ], - 66 : [ u'Pacific Standard Time', -28800 ], - 67 : [ u'Pakistan Standard Time', 18000 ], - 68 : [ u'Paraguay Standard Time', -14400 ], - 69 : [ u'Romance Standard Time', 3600 ], - 70 : [ u'Russian Standard Time', 14400 ], - 71 : [ u'SA Eastern Standard Time', 10800 ], - 72 : [ u'SA Pacific Standard Time', -18000 ], - 73 : [ u'SA Western Standard Time', -14400 ], - 74 : [ u'Samoa Standard Time', 46800 ], - 75 : [ u'SE Asia Standard Time', 23400 ], - 76 : [ u'Singapore Standard Time', 28800 ], - 77 : [ u'South Africa Standard Time', 7200 ], - 78 : [ u'Sri Lanka Standard Time', 19800 ], - 79 : [ u'Syria Standard Time', 7200 ], - 80 : [ u'Taipei Standard Time', 28800 ], - 81 : [ u'Tasmania Standard Time', 36000 ], - 82 : [ u'Tokyo Standard Time', 32400 ], - 83 : [ u'Tonga Standard Time', 46800 ], - 84 : [ u'Turkey Standard Time', 7200 ], - 85 : [ u'Ulaanbaatar Standard Time', 28800 ], - 86 : [ u'US Eastern Standard Time', -18000 ], - 87 : [ u'US Mountain Standard Time', -25200 ], - 88 : [ u'UTC-02', -7200 ], - 89 : [ u'UTC-11', -39600 ], - 90 : [ u'UTC', 0 ], - 91 : [ u'UTC+12', 43200 ], - 92 : [ u'Venezuela Standard Time', -16200 ], - 93 : [ u'Vladivostok Standard Time', 39600 ], - 94 : [ u'W. Australia Standard Time', 28800 ], - 95 : [ u'W. Central Africa Standard Time', 3600 ], - 96 : [ u'W. Europe Standard Time', 3600 ], - 97 : [ u'West Asia Standard Time', 18000 ], - 98 : [ u'West Pacific Standard Time', 36000 ], - 99 : [ u'Yakutsk Standard Time', 36000 ], - 100: [ u'Libya Standard Time', 3600 ] + 33 : [ u'Eastern Standard Time (Mexico)', -18000 ], + 34 : [ u'Egypt Standard Time', 7200 ], + 35 : [ u'Ekaterinburg Standard Time', 18000 ], + 36 : [ u'Fiji Standard Time', 43200 ], + 37 : [ u'FLE Standard Time', 7200 ], + 38 : [ u'Georgian Standard Time', 14400 ], + 39 : [ u'GMT Standard Time', 0 ], + 40 : [ u'Greenland Standard Time', -10800 ], + 41 : [ u'Greenwich Standard Time', 0 ], + 42 : [ u'GTB Standard Time', 7200 ], + 43 : [ u'Hawaiian Standard Time', -36000 ], + 44 : [ u'India Standard Time', 19800 ], + 45 : [ u'Iran Standard Time', 12600 ], + 46 : [ u'Israel Standard Time', 7200 ], + 47 : [ u'Jordan Standard Time', 7200 ], + 48 : [ u'Kaliningrad Standard Time', 7200 ], + 49 : [ u'Korea Standard Time', 32400 ], + 50 : [ u'Libya Standard Time', 7200 ], + 51 : [ u'Line Islands Standard Time', 50400 ], + 52 : [ u'Magadan Standard Time', 36000 ], + 53 : [ u'Mauritius Standard Time', 14400 ], + 54 : [ u'Middle East Standard Time', 7200 ], + 55 : [ u'Montevideo Standard Time', -10800 ], + 56 : [ u'Morocco Standard Time', 0 ], + 57 : [ u'Mountain Standard Time (Mexico)', -25200 ], + 58 : [ u'Mountain Standard Time', -25200 ], + 59 : [ u'Myanmar Standard Time', 23400 ], + 60 : [ u'N. Central Asia Standard Time', 21600 ], + 61 : [ u'Namibia Standard Time', 3600 ], + 62 : [ u'Nepal Standard Time', 20700 ], + 63 : [ u'New Zealand Standard Time', 43200 ], + 64 : [ u'Newfoundland Standard Time', -12600 ], + 65 : [ u'North Asia East Standard Time', 28800 ], + 66 : [ u'North Asia Standard Time', 25200 ], + 67 : [ u'Pacific SA Standard Time', -10800 ], + 68 : [ u'Pacific Standard Time (Mexico)', -28800 ], + 69 : [ u'Pacific Standard Time', -28800 ], + 70 : [ u'Pakistan Standard Time', 18000 ], + 71 : [ u'Paraguay Standard Time', -14400 ], + 72 : [ u'Romance Standard Time', 3600 ], + 73 : [ u'Russia Time Zone 3', 14400 ], + 74 : [ u'Russia Time Zone 10', 39600 ], + 75 : [ u'Russia Time Zone 11', 43200 ], + 76 : [ u'Russian Standard Time', 10800 ], + 77 : [ u'SA Eastern Standard Time', -10800 ], + 78 : [ u'SA Pacific Standard Time', -18000 ], + 79 : [ u'SA Western Standard Time', -14400 ], + 80 : [ u'Samoa Standard Time', 46800 ], + 81 : [ u'SE Asia Standard Time', 25200 ], + 82 : [ u'Singapore Standard Time', 28800 ], + 83 : [ u'South Africa Standard Time', 7200 ], + 84 : [ u'Sri Lanka Standard Time', 19800 ], + 85 : [ u'Syria Standard Time', 7200 ], + 86 : [ u'Taipei Standard Time', 28800 ], + 87 : [ u'Tasmania Standard Time', 36000 ], + 88 : [ u'Tokyo Standard Time', 32400 ], + 89 : [ u'Tonga Standard Time', 46800 ], + 90 : [ u'Turkey Standard Time', 7200 ], + 91 : [ u'Ulaanbaatar Standard Time', 28800 ], + 92 : [ u'US Eastern Standard Time', -18000 ], + 93 : [ u'US Mountain Standard Time', -25200 ], + 94 : [ u'UTC-02', -7200 ], + 95 : [ u'UTC-11', -39600 ], + 96 : [ u'UTC', 0 ], + 97 : [ u'UTC+12', 43200 ], + 98 : [ u'Venezuela Standard Time', -16200 ], + 99 : [ u'Vladivostok Standard Time', 36000 ], + 100: [ u'W. Australia Standard Time', 28800 ], + 101: [ u'W. Central Africa Standard Time', 3600 ], + 102: [ u'W. Europe Standard Time', 3600 ], + 103: [ u'West Asia Standard Time', 18000 ], + 104: [ u'West Pacific Standard Time', 36000 ], + 105: [ u'Yakutsk Standard Time', 32400 ] } def windowsIdToKey(windowsId): @@ -266,7 +263,7 @@ if not os.path.isdir(cldrPath) or not os.path.isdir(qtPath): usage() windowsZonesPath = cldrPath + "/supplemental/windowsZones.xml" -tempFileDir = qtPath + "/src/corelib/tools" +tempFileDir = qtPath dataFilePath = qtPath + "/src/corelib/tools/qtimezoneprivate_data_p.h" if not os.path.isfile(windowsZonesPath): @@ -275,6 +272,12 @@ if not os.path.isfile(windowsZonesPath): if not os.path.isfile(dataFilePath): usage() +cldr_version = 'unknown' +ldml = open(cldrPath + "/dtd/ldml.dtd", "r") +for line in ldml: + if 'version cldrVersion CDATA #FIXED' in line: + cldr_version = line.split('"')[1] + # [[u'version', [(u'number', u'$Revision: 7825 $')]]] versionNumber = findTagsInFile(windowsZonesPath, "version")[0][1][0][1] @@ -334,13 +337,13 @@ newTempFile.write(GENERATED_BLOCK_START) newTempFile.write("\n\ /*\n\ This part of the file was generated on %s from the\n\ - Common Locale Data Repository supplemental/windowsZones.xml file\n\ + Common Locale Data Repository v%s supplemental/windowsZones.xml file\n\ %s %s\n\ \n\ http://www.unicode.org/cldr/\n\ \n\ Do not change this data, only generate it using cldr2qtimezone.py.\n\ -*/\n\n" % (str(datetime.date.today()), versionNumber, generationDate) ) +*/\n\n" % (str(datetime.date.today()), cldr_version, versionNumber, generationDate) ) windowsIdData = ByteArrayData() ianaIdData = ByteArrayData() |