blob: e5d5b83dffbfa5016824293300edf43bdfec24a0 [file] [log] [blame]
This directory contains tools for ICU updates.
Data update tools
=================
updateicudata.py
- regerates the ICU data files.
ICU and CTS tests for libcore should be run before and
after.
See $ANDROID_BUILD_TOP/system/timezone for tools related to time zone updates.
Source code updates
===================
The source code in android_icu4j is generated from the code in icu4j. Do not change the code
in android_icu4j directly: instead you change the icu4j source or the rules used to generate
android_icu4j.
All changes made to icu4j should be accompanied by changes in android_icu4j and vice versa.
Applying patches to ICU4J
-------------------------
After making changes to icu4j (e.g. after applying upstream patches):
source build/envsetup.sh
lunch
cd external/icu/tools/srcgen
./generate_android_icu4j.sh
The code in android_icu4j will be regenerated and should contain the changes you made
in icu4j. Confirm the diffs are what you intended. Commit both at the same time.
Modifying the code gen
----------------------
android_icu4j is generated using a Java tool found in tools/srcgen.
The "rules" that transform the source are configured in
src/main/java/com/android/icu4j/srcgen/Icu4jTransform.java.