diff --git a/data/brkitr/brklocal.mk b/data/brkitr/brklocal.mk
deleted file mode 100644
index 84b5e85..0000000
--- a/data/brkitr/brklocal.mk
+++ /dev/null
@@ -1,46 +0,0 @@
-# *   Copyright (C) 1998-2007, International Business Machines
-# *   Corporation and others.  All Rights Reserved.
-BRK_RES_CLDR_VERSION = 1.5
-# A list of txt's to build
-# Note: 
-#
-#   If you are thinking of modifying this file, READ THIS. 
-#
-# Instead of changing this file [unless you want to check it back in],
-# you should consider creating a 'brklocal.mk' file in this same directory.
-# Then, you can have your local changes remain even if you upgrade or
-# reconfigure ICU.
-#
-# Example 'brklocal.mk' files:
-#
-#  * To add an additional locale to the list: 
-#    _____________________________________________________
-#    |  BRK_RES_SOURCE_LOCAL =   myLocale.txt ...
-#
-#  * To REPLACE the default list and only build with a few
-#     locale:
-#    _____________________________________________________
-#    |  BRK_RES_SOURCE = ar.txt ar_AE.txt en.txt de.txt zh.txt
-#
-#
-# Generated by LDML2ICUConverter, from LDML source files. 
-
-# Aliases which do not have a corresponding xx.xml file (see icu-config.xml & build.xml)
-BRK_RES_SYNTHETIC_ALIAS =
-
-
-# All aliases (to not be included under 'installed'), but not including root.
-BRK_RES_ALIAS_SOURCE = $(BRK_RES_SYNTHETIC_ALIAS)
-
-
-# List of compact trie dictionary files (ctd).
-BRK_CTD_SOURCE = 
-
-
-# List of break iterator files (brk).
-BRK_SOURCE = char.txt word.txt line.txt sent.txt title.txt
-
-
-# Ordinary resources
-BRK_RES_SOURCE = en.txt en_US.txt en_US_POSIX.txt
-
diff --git a/data/coll/collocal.mk b/data/coll/collocal.mk
deleted file mode 100644
index 7a8736f..0000000
--- a/data/coll/collocal.mk
+++ /dev/null
@@ -1,55 +0,0 @@
-# *   Copyright (C) 1998-2007, International Business Machines
-# *   Corporation and others.  All Rights Reserved.
-COLLATION_CLDR_VERSION = 1.5
-# A list of txt's to build
-# Note: 
-#
-#   If you are thinking of modifying this file, READ THIS. 
-#
-# Instead of changing this file [unless you want to check it back in],
-# you should consider creating a 'collocal.mk' file in this same directory.
-# Then, you can have your local changes remain even if you upgrade or
-# reconfigure ICU.
-#
-# Example 'collocal.mk' files:
-#
-#  * To add an additional locale to the list: 
-#    _____________________________________________________
-#    |  COLLATION_SOURCE_LOCAL =   myLocale.txt ...
-#
-#  * To REPLACE the default list and only build with a few
-#     locale:
-#    _____________________________________________________
-#    |  COLLATION_SOURCE = ar.txt ar_AE.txt en.txt de.txt zh.txt
-#
-#
-# Generated by LDML2ICUConverter, from LDML source files. 
-
-# Aliases which do not have a corresponding xx.xml file (see icu-config.xml & build.xml)
-COLLATION_SYNTHETIC_ALIAS = de_.txt de__PHONEBOOK.txt es_.txt es__TRADITIONAL.txt
-
-
-# All aliases (to not be included under 'installed'), but not including root.
-COLLATION_ALIAS_SOURCE = $(COLLATION_SYNTHETIC_ALIAS)
-
-
-# Empty locales, used for validSubLocale fallback.
-COLLATION_EMPTY_SOURCE = \
- de_AT.txt de_BE.txt de_CH.txt de_DE.txt de_LU.txt\
- en_AU.txt en_BW.txt en_CA.txt en_GB.txt en_HK.txt\
- en_IE.txt en_IN.txt en_MT.txt en_NZ.txt en_PH.txt\
- en_SG.txt en_US.txt en_US_POSIX.txt en_VI.txt en_ZA.txt\
- en_ZW.txt\
- es_AR.txt es_BO.txt es_CL.txt es_CO.txt\
- es_CR.txt es_DO.txt es_EC.txt es_ES.txt es_GT.txt\
- es_HN.txt es_MX.txt es_NI.txt es_PA.txt es_PE.txt\
- es_PR.txt es_PY.txt es_SV.txt es_US.txt es_UY.txt\
- es_VE.txt\
- fr_BE.txt fr_CA.txt fr_CH.txt fr_FR.txt fr_LU.txt\
- it_CH.txt it_IT.txt
-
-
-# Ordinary resources
-COLLATION_SOURCE = $(COLLATION_EMPTY_SOURCE)\
- de.txt en.txt en_BE.txt es.txt fr.txt it.txt
-
diff --git a/data/locales/reslocal.mk b/data/locales/reslocal.mk
deleted file mode 100644
index 2150a1d..0000000
--- a/data/locales/reslocal.mk
+++ /dev/null
@@ -1,51 +0,0 @@
-# *   Copyright (C) 1998-2007, International Business Machines
-# *   Corporation and others.  All Rights Reserved.
-GENRB_CLDR_VERSION = 1.5
-# A list of txt's to build
-# Note: 
-#
-#   If you are thinking of modifying this file, READ THIS. 
-#
-# Instead of changing this file [unless you want to check it back in],
-# you should consider creating a 'reslocal.mk' file in this same directory.
-# Then, you can have your local changes remain even if you upgrade or
-# reconfigure ICU.
-#
-# Example 'reslocal.mk' files:
-#
-#  * To add an additional locale to the list: 
-#    _____________________________________________________
-#    |  GENRB_SOURCE_LOCAL =   myLocale.txt ...
-#
-#  * To REPLACE the default list and only build with a few
-#     locale:
-#    _____________________________________________________
-#    |  GENRB_SOURCE = ar.txt ar_AE.txt en.txt de.txt zh.txt
-#
-#
-# Generated by LDML2ICUConverter, from LDML source files. 
-
-# Aliases which do not have a corresponding xx.xml file (see icu-config.xml & build.xml)
-GENRB_SYNTHETIC_ALIAS = en_RH.txt
-
-
-# All aliases (to not be included under 'installed'), but not including root.
-GENRB_ALIAS_SOURCE = $(GENRB_SYNTHETIC_ALIAS)
-
-
-# Ordinary resources
-GENRB_SOURCE = de.txt de_AT.txt de_BE.txt de_CH.txt\
- de_DE.txt de_LI.txt de_LU.txt\
- en.txt en_AU.txt en_BE.txt en_BW.txt\
- en_BZ.txt en_CA.txt en_GB.txt en_HK.txt en_IE.txt\
- en_IN.txt en_JM.txt en_MH.txt en_MT.txt en_NA.txt\
- en_NZ.txt en_PH.txt en_PK.txt en_SG.txt en_TT.txt\
- en_US.txt en_US_POSIX.txt en_VI.txt en_ZA.txt en_ZW.txt\
- es.txt es_AR.txt es_BO.txt es_CL.txt\
- es_CO.txt es_CR.txt es_DO.txt es_EC.txt es_ES.txt\
- es_GT.txt es_HN.txt es_MX.txt es_NI.txt es_PA.txt\
- es_PE.txt es_PR.txt es_PY.txt es_SV.txt es_US.txt\
- es_UY.txt es_VE.txt\
- fr.txt fr_BE.txt\
- fr_CA.txt fr_CH.txt fr_FR.txt fr_LU.txt fr_MC.txt\
- it.txt it_CH.txt it_IT.txt
diff --git a/data/rbnf/rbnflocal.mk b/data/rbnf/rbnflocal.mk
deleted file mode 100644
index 68ecb4c..0000000
--- a/data/rbnf/rbnflocal.mk
+++ /dev/null
@@ -1,34 +0,0 @@
-# *   Copyright (C) 1997-2005, International Business Machines
-# *   Corporation and others.  All Rights Reserved.
-# A list of txt's to build
-# Note: 
-#
-#   If you are thinking of modifying this file, READ THIS. 
-#
-# Instead of changing this file [unless you want to check it back in],
-# you should consider creating a 'reslocal.mk' file in this same directory.
-# Then, you can have your local changes remain even if you upgrade or
-# reconfigure ICU.
-#
-# Example 'rbnflocal.mk' files:
-#
-#  * To add an additional locale to the list: 
-#    _____________________________________________________
-#    |  RBNF_SOURCE_LOCAL =   myLocale.txt ...
-#
-#  * To REPLACE the default list and only build with a few
-#     locale:
-#    _____________________________________________________
-#    |  RBNF_SOURCE = ar.txt ar_AE.txt en.txt de.txt zh.txt
-#
-#
-
-
-# This is the list of locales that are built, but not considered installed in ICU.
-# These are usually aliased locales or the root locale.
-RBNF_ALIAS_SOURCE = 
-
-
-# Please try to keep this list in alphabetical order
-RBNF_SOURCE = de.txt en.txt es.txt\
-fr.txt fr_BE.txt fr_CH.txt it.txt
diff --git a/data/translit/trnslocal.mk b/data/translit/trnslocal.mk
deleted file mode 100644
index 2175d2c..0000000
--- a/data/translit/trnslocal.mk
+++ /dev/null
@@ -1,26 +0,0 @@
-# *   Copyright (C) 1997-2006, International Business Machines
-# *   Corporation and others.  All Rights Reserved.
-# A list of txt's to build
-# Note: 
-#
-#   If you are thinking of modifying this file, READ THIS. 
-#
-# Instead of changing this file [unless you want to check it back in],
-# you should consider creating a 'trnslocal.mk' file in this same directory.
-# Then, you can have your local changes remain even if you upgrade or re
-# configure the ICU.
-#
-# Example 'trnslocal.mk' files:
-#
-#  * To add an additional transliterators to the list: 
-#    _____________________________________________________
-#    |  TRANSLIT_SOURCE_LOCAL =   myTranslitRules.txt ...
-#
-#  * To REPLACE the default list and only build with a few
-#     transliterators:
-#    _____________________________________________________
-#    |  TRANLIST_SOURCE = el.txt th.txt
-#
-#
-
-TRANSLIT_SOURCE=root.txt en.txt
diff --git a/stubdata/readme.txt b/stubdata/readme.txt
index e6d9fdd..c10c824 100644
--- a/stubdata/readme.txt
+++ b/stubdata/readme.txt
@@ -6,14 +6,14 @@
    For example:
      ./icu_dat_generator.py  4.2
 
-2. To add a new resource to existing ICU data file: insert an entry to
-   icudtxx-<tag name>.txt under external/icu4c/stubdata diretory then
+2. To add a resource to Android ICU data file: insert an entry to
+   icudtxx-<tag name>.txt under external/icu4c/stubdata directory then
    run the icu_dat_generator.py.
    For example, to add French sort to icudt42l-us.dat, you need to
    a. Add an entry, "coll/fr.res", into external/icu4c/stubdata/icudt42l-us.txt
    b. run "./icu_dat_generator.py 4.2".
 
-3. To add a new ICU data file: add the <tag name> to datlist[] in
+3. To add a new Adnroid ICU data file: add the <tag name> to datlist[] in
    icu_dat_generator.py and add corresponding resource list to
    icudtxxl<tag name>.txt. Then run the script icu_dat_generator.py to generate
    dat files.
@@ -22,8 +22,29 @@
    b. Make a new file icudt42l-latin.txt to include the resource list.
    c. run "./icu_dat_generator.py 4.2".
 
-Locale Resource Files:
+4. Add a new resource or modify existing ICU resource definition:
+   Note: This is a rare case. You should talk to ICU team first if it is a bug
+   in ICU resource or a feature enhancement before making such changes.
+   If you would like to add existing ICU resource to Android, please check #2.
+   a. Create or change the text format resource files under external/icu4c/data.
+   b. Make a temporary directory for ICU build.
+      i.e. mkdir external/icu4c/icuBuild
+   c. cd to ICU build directory.
+      i.e. cd external/icu4c/icuBuild
+   d. Run external/icu4c/runConfigureICU with "Linux" option to generate the
+      makefile.
+      i.e. $ANDROID_BUILD_TOP/external/icu4c/runConfigureICU Linux
+   e. make -j2
+   f. The new icudtxxl.dat is under data/out/tmp and the individual resources are
+      under data/out/build/icudtxxl
+      For example, you can find data/out/tmp/icudt42l.dat and data/out/build/icudt42l/*.res.
+   g. Copy the new icudtxxl.dat over $ANDROID_BUILD_TOP/external/icu4c/stubdata/icudtxxl-all.dat.
+      i.e. cp data/out/tmp/icudt42l.dat $ANDROID_BUILD_TOP/external/icu4c/stubdata/icudt42l-all.dat.
+   h. Check #1 or #2 to replace or add resource to ICU.
+   i. Clean up ICU build directory.
+   j. Discuss with icu-team how to include the change to public ICU.
 
+Locale Resource Files:
 - icudt42l-all.dat contains the resources in packed
   form. It includes everything that comes with
   a vanilla ICU 4.2. icu_dat_generator.py uses this file to generate
@@ -39,13 +60,36 @@
   - softbank-jisx-208-2007.cnv
   - softbank-shift_jis-2007.cnv
 
+- Text format ICU resource files are under external/icu4c/data directory.
+  Binary resource files are packaged in external/icu4c/stubdata/icudtxxl-all.dat.
+  If you have special need such as bug fxings or examining individual resource size,
+  you can run icupkg utility to extract icudtxxl-all.dat into a temporary directory.
+  For example:
+  cd $ANDROID_BUILD_TOP/external/icu4c/stubdata
+  cp icudt42l-all.dat icudt42l.dat
+  mkdir tempDir
+  $ANDROID_BUILD_TOP/prebuilt/linux-x86/icu-4.2/icupkg  icudt42l.dat -x "*" -d tempDir
+
+Run ICU tests:
+ICU tests are not part of Android build. If you change the ICU code or data,
+it is highly recommended to run ICU tests.
+ 1. Remove the flag "-R" in external/icu4c/data/Makefile.in.
+    "Reverse collation keys" tables are not included in ICU data on Android. To
+    pass ICU collation tests, you need to delete the flag "-R" in Makefile.in.
+    Search for " -R" under "### collation res" section in external/icu4c/data/Makefile.in,
+    delete all of them.
+ 2. Make a temporary directory for ICU build.
+    i.e. mkdir external/icu4c/icuBuild
+ 3. cd to ICU build directory.
+    i.e. cd external/icu4c/icuBuild
+ 4. Run external/icu4c/runConfigureICU with "Linux" option to generate the makefile.
+    i.e. $ANDROID_BUILD_TOP/external/icu4c/runConfigureICU Linux
+ 5. make -j2 check
+ 6. Check the result. Ignore the errors from tsconv.
+
 Note:
   1. The script assumes you have done
   envsetup.sh and choosecombo before, because
-  it relies on an enviroment variable pointing
+  it relies on an environment variable pointing
   to the prebuilt tools.
-  2. To add new charset conversion tables, the table
-  should be created with the "--small" option. So they
-  are built in compact mode and can be decompressed
-  when needed.
 
