OLD | NEW |
1 ********************************************************************** | 1 ********************************************************************** |
2 * Copyright (c) 2003-2007, International Business Machines | 2 * Copyright (c) 2003-2014, International Business Machines |
3 * Corporation and others. All Rights Reserved. | 3 * Corporation and others. All Rights Reserved. |
4 ********************************************************************** | 4 ********************************************************************** |
5 * Author: Alan Liu | 5 * Author: Alan Liu |
6 * Created: August 18 2003 | 6 * Created: August 18 2003 |
7 * Since: ICU 2.8 | 7 * Since: ICU 2.8 |
8 ********************************************************************** | 8 ********************************************************************** |
9 | 9 |
10 Note: this directory currently contains tzcode as of tzcode2006h.tar.gz | 10 Note: this directory currently contains tzcode as of tzcode2014b.tar.gz |
11 with localtime.c patches from tzcode2006i.tar.gz | 11 with localtime.c patches from tzcode2014b.tar.gz |
12 | 12 |
13 | 13 |
14 ---------------------------------------------------------------------- | 14 ---------------------------------------------------------------------- |
15 OVERVIEW | 15 OVERVIEW |
16 | 16 |
17 This file describes the tools in icu/source/tools/tzcode | 17 This file describes the tools in icu/source/tools/tzcode |
18 | 18 |
19 The purpose of these tools is to process the zoneinfo or "Olson" time | 19 The purpose of these tools is to process the zoneinfo or "Olson" time |
20 zone database into a form usable by ICU4C (release 2.8 and later). | 20 zone database into a form usable by ICU4C (release 2.8 and later). |
21 Unlike earlier releases, ICU4C 2.8 supports historical time zone | 21 Unlike earlier releases, ICU4C 2.8 supports historical time zone |
22 behavior, as well as the full set of Olson compatibility IDs. | 22 behavior, as well as the full set of Olson compatibility IDs. |
23 | 23 |
24 References: | 24 References: |
25 | 25 |
26 ICU4C: http://www.icu-project.org/ | 26 ICU4C: http://www.icu-project.org/ |
27 Olson: ftp://elsie.nci.nih.gov/pub/ | 27 Olson: ftp://ftp.iana.org/tz/releases/ |
28 | 28 |
29 ---------------------------------------------------------------------- | 29 ---------------------------------------------------------------------- |
30 ICU4C vs. ICU4J | 30 ICU4C vs. ICU4J |
31 | 31 |
32 For ICU releases >= 2.8, both ICU4C and ICU4J implement full | 32 For ICU releases >= 2.8, both ICU4C and ICU4J implement full |
33 historical time zones, based on Olson data. The implementations in C | 33 historical time zones, based on Olson data. The implementations in C |
34 and Java are somewhat different. The C implementation is a | 34 and Java are somewhat different. The C implementation is a |
35 self-contained implementation, whereas ICU4J uses the underlying JDK | 35 self-contained implementation, whereas ICU4J uses the underlying JDK |
36 1.3 or 1.4 time zone implementation. | 36 1.3 or 1.4 time zone implementation. |
37 | 37 |
38 Older versions of ICU (C and Java <= 2.6) implement a "present day | 38 Older versions of ICU (C and Java <= 2.6) implement a "present day |
39 snapshot". This only reflects current time zone behavior, without | 39 snapshot". This only reflects current time zone behavior, without |
40 historical variation. Furthermore, it lacks the full set of Olson | 40 historical variation. Furthermore, it lacks the full set of Olson |
41 compatibility IDs. | 41 compatibility IDs. |
42 | 42 |
43 ---------------------------------------------------------------------- | 43 ---------------------------------------------------------------------- |
44 BACKGROUND | 44 BACKGROUND |
45 | 45 |
46 The zoneinfo or "Olson" time zone package is used by various systems | 46 The zoneinfo or "Olson" time zone package is used by various systems |
47 to describe the behavior of time zones. The package consists of | 47 to describe the behavior of time zones. The package consists of |
48 several parts. E.g.: | 48 several parts. E.g.: |
49 | 49 |
50 Index of ftp://elsie.nci.nih.gov/pub/ | 50 Index of ftp://ftp.iana.org/tz/releases/ |
51 | 51 |
52 classictzcode.tar.gz 65 KB 12/10/1994 12:00:00 AM | 52 tzcode2014b.tar.gz 172 KB 3/25/2014 05:11:00 AM |
53 classictzdata.tar.gz 67 KB 12/10/1994 12:00:00 AM | 53 tzdata2014b.tar.gz 216 KB 3/25/2014 05:11:00 AM |
54 e5+57.tar.gz 2909 KB 3/22/1993 12:00:00 AM | |
55 iso8601.ps.gz 16 KB 7/27/1996 12:00:00 AM | |
56 leastsq.xls 49 KB 4/24/1997 12:00:00 AM | |
57 ltroff.tar.gz 36 KB 7/16/1993 12:00:00 AM | |
58 pi.shar.gz 4 KB 3/9/1994 12:00:00 AM | |
59 tzarchive.gz 3412 KB 8/18/2003 4:00:00 AM | |
60 tzcode2003a.tar.gz 98 KB 3/24/2003 2:32:00 PM | |
61 tzdata2003a.tar.gz 132 KB 3/24/2003 2:32:00 PM | |
62 | 54 |
63 ICU only uses the tzdataYYYYV.tar.gz files, | 55 ICU only uses the tzdataYYYYV.tar.gz files, |
64 where YYYY is the year and V is the version letter ('a'...'z'). | 56 where YYYY is the year and V is the version letter ('a'...'z'). |
65 | 57 |
66 This directory has partial contents of tzcode checked into ICU | 58 This directory has partial contents of tzcode checked into ICU |
67 | 59 |
68 ---------------------------------------------------------------------- | 60 ---------------------------------------------------------------------- |
69 HOWTO | 61 HOWTO |
70 | 62 |
71 0. Note, these instructions will only work on POSIX type systems. | 63 0. Note, these instructions will only work on POSIX type systems. |
72 | 64 |
73 1. Obtain the current versions of tzdataYYYYV.tar.gz (aka `tzdata') from | 65 1. Obtain the current versions of tzdataYYYYV.tar.gz (aka `tzdata') from |
74 the FTP site given above. Either manually download or use wget: | 66 the FTP site given above. Either manually download or use wget: |
75 | 67 |
76 $ cd {path_to}/icu/source/tools/tzcode | 68 $ cd {path_to}/icu/source/tools/tzcode |
77 $ wget "ftp://elsie.nci.nih.gov/pub/tzdata*.tar.gz" | 69 $ wget "ftp://ftp.iana.org/tz/releases/tzdata*.tar.gz" |
78 | 70 |
79 2. Copy only one tzdata*.tar.gz file into the icu/source/tools/tzcode/ | 71 2. Copy only one tzdata*.tar.gz file into the icu/source/tools/tzcode/ |
80 directory (this directory). | 72 directory (this directory). |
81 | 73 |
82 *** Make sure you only have ONE FILE named tzdata*.tar.gz in the | 74 *** Make sure you only have ONE FILE named tzdata*.tar.gz in the |
83 directory. | 75 directory. |
84 | 76 |
85 3. Build ICU normally. You will see a notice "updating zoneinfo.txt..." | 77 3. Build ICU normally. You will see a notice "updating zoneinfo.txt..." |
86 | 78 |
87 ### Following instructions for ICU maintainers only ### | 79 ### Following instructions for ICU maintainers only ### |
88 | 80 |
89 4. Obtain the current version of tzcodeYYYY.tar.gz from the FTP site to | 81 4. Obtain the current version of tzcodeYYYY.tar.gz from the FTP site to |
90 this directory. | 82 this directory. |
91 | 83 |
92 5. Run make target "check-dump". This target extract makes the original | 84 5. Run make target "check-dump". This target extract makes the original |
93 tzcode and compile the original tzdata with icu supplemental data | 85 tzcode and compile the original tzdata with icu supplemental data |
94 (icuzones). Then it makes zdump / icuzdump and dump all time | 86 (icuzones). Then it makes zdump / icuzdump and dump all time |
95 transitions for all ICU timezone to files under zdumpout / icuzdumpout | 87 transitions for all ICU timezone to files under zdumpout / icuzdumpout |
96 directory. When they produce different results, the target returns | 88 directory. When they produce different results, the target returns |
97 the error. | 89 the error. |
98 | 90 |
99 6. Don't forget to check in the new zoneinfo.txt (from its location at | 91 6. Don't forget to check in the new zoneinfo64.txt (from its location at |
100 {path_to}/icu/source/data/misc/zoneinfo.txt) into SVN. | 92 {path_to}/icu/source/data/misc/zoneinfo64.txt) into SVN. |
101 | 93 |
OLD | NEW |