• Home
Name Date Size #Lines LOC

..--

srcgen/03-May-2024-5,9553,714

Android.mkD03-May-2024672 202

README.androidD03-May-20241.5 KiB5235

ZoneCompactor.javaD03-May-20246 KiB193121

i18nutil.pyD03-May-2024605 2419

update-tzdata.pyD03-May-20245.9 KiB188135

updateicudata.pyD03-May-20243.6 KiB11871

README.android

1This directory contains tools for ICU updates.
2
3Data update tools
4=================
5
6update-tzdata.py
7  - downloads tzdata updates and regenerates the ICU and
8    libcore/bionic timezone data files.
9    There are sometimes code and metadata changes associated
10    with tzdata updates that should be applied at the same time.
11    e.g. see http://bugs.icu-project.org/trac/search?q=2015d
12
13    ICU and CTS tests for bionic / libcore should be run before
14    and after.
15
16updateicudata.py
17  - regerates the ICU data files.
18    ICU and CTS tests for libcore should be run before and
19    after.
20
21Source code updates
22===================
23
24The source code in android_icu4j is generated from the code in icu4j. Do not change the code
25in android_icu4j directly: instead you change the icu4j source or the rules used to generate
26android_icu4j.
27
28All changes made to icu4j should be accompanied by changes in android_icu4j and vice versa.
29
30Applying patches to ICU4J
31-------------------------
32
33After making changes to icu4j (e.g. after applying upstream patches):
34
35source build/envsetup.sh
36lunch
37
38cd external/icu/tools/srcgen
39./generate_android_icu4j.sh
40
41The code in android_icu4j will be regenerated and should contain the changes you made
42in icu4j. Confirm the diffs are what you intended. Commit both at the same time.
43
44Modifying the code gen
45----------------------
46
47android_icu4j is generated using a Java tool found in tools/srcgen.
48
49The "rules" that transform the source are configured in
50src/main/java/com/android/icu4j/srcgen/Icu4jTransform.java.
51
52