Permalink
Switch branches/tags
tools-unicodetools tools-release-58 tools-release-57 tools-release-56 tools-release-55 tools-release-54 tools-release-53 tools-release-52 tools-release-51 tools-release-50 tools-release-49-1 tools-release-4-8 tools-release-4-6 tools-post-cvs2svn tools-post-cvs2svn-cleanedup tools-milestone-49-0-2 release-62-rc release-62-1 release-61-rc release-61-1 release-60-rc release-60-2 release-60-1 release-59-rc release-59-1 release-58-2 release-58-2-eclipse-20170118 release-58-1 release-57-1 release-56-1 release-55-1 release-54-1 release-54-1-1 release-53-1 release-52-1 release-52-1-1 release-51-2 release-50-1-2 milestone-60-0-1 milestone-59-0-1 latest last-svn-commit last-cvs-commit icu4j-worksOn1_2 icu4j-tz-patch-2-6 icu4j-tag-for-cldr14-util icu4j-stable-2005-04-01 icu4j-release-58-rc icu4j-release-58-1 icu4j-release-57-rc icu4j-release-57-1 icu4j-release-56-rc icu4j-release-56-1 icu4j-release-55-rc icu4j-release-55-1 icu4j-release-55-1-localespi-java8-20150610 icu4j-release-54-rc icu4j-release-54-1 icu4j-release-54-1-1 icu4j-release-54-1-1-localespi-java8-20150610 icu4j-release-53-rc icu4j-release-53-1 icu4j-release-53-1-localespi-java8-20150610 icu4j-release-52-rc icu4j-release-52-eclipse-20140218 icu4j-release-52-1 icu4j-release-52-1-1 icu4j-release-52-1-1-eclipse-20150113 icu4j-release-51-rc icu4j-release-51-2 icu4j-release-51-1 icu4j-release-50-rc icu4j-release-50-1 icu4j-release-50-1-eclipse-20121116 icu4j-release-50-1-1 icu4j-release-50-1-1-eclipse-20130412 icu4j-release-49-rc icu4j-release-49-1 icu4j-release-4-8 icu4j-release-4-8-rc1 icu4j-release-4-8-1 icu4j-release-4-8-1-eclipse38-20120202 icu4j-release-4-8-1-1 icu4j-release-4-6 icu4j-release-4-6-rc2 icu4j-release-4-6-rc1 icu4j-release-4-6-1 icu4j-release-4-6-1-1 icu4j-release-4-4 icu4j-release-4-4-rc1 icu4j-release-4-4-2 icu4j-release-4-4-2-eclipse37-20110831 icu4j-release-4-4-2-eclipse37-20110823 icu4j-release-4-4-2-eclipse37-20110208 icu4j-release-4-4-2-eclipse37-20110128 icu4j-release-4-4-2-eclipse37-20110115 icu4j-release-4-4-2-2 icu4j-release-4-4-2-1 icu4j-release-4-4-1 icu4j-release-4-4-1-1
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
96 lines (67 sloc) 3.54 KB
* Copyright (C) 2016 and later: Unicode, Inc. and others.
* License & terms of use: http://www.unicode.org/copyright.html
**********************************************************************
* Copyright (c) 2003-2014, International Business Machines
* Corporation and others. All Rights Reserved.
**********************************************************************
* Author: Alan Liu
* Created: August 18 2003
* Since: ICU 2.8
**********************************************************************
Note: this directory currently contains tzcode as of tzcode2014b.tar.gz
with localtime.c patches from tzcode2014b.tar.gz
----------------------------------------------------------------------
OVERVIEW
This file describes the tools in icu/source/tools/tzcode
The purpose of these tools is to process the zoneinfo or "Olson" time
zone database into a form usable by ICU4C (release 2.8 and later).
Unlike earlier releases, ICU4C 2.8 supports historical time zone
behavior, as well as the full set of Olson compatibility IDs.
References:
ICU4C: http://www.icu-project.org/
Olson: ftp://ftp.iana.org/tz/releases/
----------------------------------------------------------------------
ICU4C vs. ICU4J
For ICU releases >= 2.8, both ICU4C and ICU4J implement full
historical time zones, based on Olson data. The implementations in C
and Java are somewhat different. The C implementation is a
self-contained implementation, whereas ICU4J uses the underlying JDK
1.3 or 1.4 time zone implementation.
Older versions of ICU (C and Java <= 2.6) implement a "present day
snapshot". This only reflects current time zone behavior, without
historical variation. Furthermore, it lacks the full set of Olson
compatibility IDs.
----------------------------------------------------------------------
BACKGROUND
The zoneinfo or "Olson" time zone package is used by various systems
to describe the behavior of time zones. The package consists of
several parts. E.g.:
Index of ftp://ftp.iana.org/tz/releases/
tzcode2014b.tar.gz 172 KB 3/25/2014 05:11:00 AM
tzdata2014b.tar.gz 216 KB 3/25/2014 05:11:00 AM
ICU only uses the tzdataYYYYV.tar.gz files,
where YYYY is the year and V is the version letter ('a'...'z').
This directory has partial contents of tzcode checked into ICU
----------------------------------------------------------------------
HOWTO
0. Note, these instructions will only work on POSIX type systems.
1. Obtain the current versions of tzdataYYYYV.tar.gz (aka `tzdata') from
the FTP site given above. Either manually download or use wget:
$ cd {path_to}/icu/source/tools/tzcode
$ wget "ftp://ftp.iana.org/tz/releases/tzdata*.tar.gz"
2. Copy only one tzdata*.tar.gz file into the icu/source/tools/tzcode/
directory (this directory).
*** Make sure you only have ONE FILE named tzdata*.tar.gz in the
directory.
3. Build ICU normally. You will see a notice "updating zoneinfo.txt..."
### Following instructions for ICU maintainers only ###
4. Obtain the current version of tzcodeYYYY.tar.gz from the FTP site to
this directory.
5. Run make target "check-dump". This target extract makes the original
tzcode and compile the original tzdata with icu supplemental data
(icuzones). Then it makes zdump / icuzdump and dump all time
transitions for all ICU timezone to files under zdumpout / icuzdumpout
directory. When they produce different results, the target returns
the error.
6. Don't forget to check in the new zoneinfo64.txt (from its location at
{path_to}/icu/source/data/misc/zoneinfo64.txt) into SVN.