ICU-6866 merge r25983(#6909) and r25985/r25987(#4790 - fix for uconfig issue in spoof detection code)

X-SVN-Rev: 25988
diff --git a/source/data/misc/likelySubtags.txt b/source/data/misc/likelySubtags.txt
index 155db2d..afd2236 100644
--- a/source/data/misc/likelySubtags.txt
+++ b/source/data/misc/likelySubtags.txt
@@ -20,7 +20,6 @@
     ay{"ay_Latn_BO"}

     az{"az_Latn_AZ"}

     az_Arab{"az_Arab_IR"}

-    az_Cyrl{"az_Cyrl_AZ"}

     az_IR{"az_Arab_IR"}

     ba{"ba_Cyrl_RU"}

     be{"be_Cyrl_BY"}

@@ -59,10 +58,12 @@
     fy{"fy_Latn_NL"}

     ga{"ga_Latn_IE"}

     gaa{"gaa_Latn_GH"}

+    gag{"gag_Latn_MD"}

     gd{"gd_Latn_GB"}

     gil{"gil_Latn_KI"}

     gl{"gl_Latn_ES"}

     gn{"gn_Latn_PY"}

+    gsw{"gsw_Latn_CH"}

     gu{"gu_Gujr_IN"}

     ha{"ha_Latn_NG"}

     ha_Arab{"ha_Arab_SD"}

@@ -78,7 +79,7 @@
     hy{"hy_Armn_AM"}

     id{"id_Latn_ID"}

     ig{"ig_Latn_NG"}

-    ii{"ii_Latn_CN"}

+    ii{"ii_Yiii_CN"}

     ilo{"ilo_Latn_PH"}

     inh{"inh_Cyrl_RU"}

     is{"is_Latn_IS"}

@@ -142,6 +143,7 @@
     nr{"nr_Latn_ZA"}

     nso{"nso_Latn_ZA"}

     ny{"ny_Latn_MW"}

+    oc{"oc_Latn_FR"}

     om{"om_Latn_ET"}

     or{"or_Orya_IN"}

     os{"os_Cyrl_GE"}

@@ -163,7 +165,7 @@
     rw{"rw_Latn_RW"}

     sa{"sa_Deva_IN"}

     sah{"sah_Cyrl_RU"}

-    sat{"sat_Beng_IN"}

+    sat{"sat_Latn_IN"}

     sd{"sd_Arab_IN"}

     se{"se_Latn_NO"}

     sg{"sg_Latn_CF"}

@@ -172,10 +174,10 @@
     sk{"sk_Latn_SK"}

     sl{"sl_Latn_SI"}

     sm{"sm_Latn_WS"}

-    sn{"sn_Latn_ZW"}

     so{"so_Latn_SO"}

     sq{"sq_Latn_AL"}

     sr{"sr_Cyrl_RS"}

+    sr_ME{"sr_Latn_ME"}

     ss{"ss_Latn_ZA"}

     st{"st_Latn_ZA"}

     su{"su_Latn_ID"}

@@ -246,9 +248,9 @@
     und_BT{"dz_Tibt_BT"}

     und_BY{"be_Cyrl_BY"}

     und_Beng{"bn_Beng_BD"}

-    und_CD{"fr_Latn_CD"}

-    und_CF{"sg_Latn_CF"}

-    und_CG{"ln_Latn_CG"}

+    und_CD{"sw_Latn_CD"}

+    und_CF{"fr_Latn_CF"}

+    und_CG{"fr_Latn_CG"}

     und_CH{"de_Latn_CH"}

     und_CI{"fr_Latn_CI"}

     und_CL{"es_Latn_CL"}

@@ -260,7 +262,7 @@
     und_CV{"pt_Latn_CV"}

     und_CY{"el_Grek_CY"}

     und_CZ{"cs_Latn_CZ"}

-    und_Cans{"cwd_Cans_CA"}

+    und_Cans{"crk_Cans_CA"}

     und_Cyrl{"ru_Cyrl_RU"}

     und_Cyrl_BA{"sr_Cyrl_BA"}

     und_Cyrl_GE{"ab_Cyrl_GE"}

@@ -276,7 +278,6 @@
     und_EH{"ar_Arab_EH"}

     und_ER{"ti_Ethi_ER"}

     und_ES{"es_Latn_ES"}

-    und_ET{"am_Ethi_ET"}

     und_Ethi{"am_Ethi_ET"}

     und_FI{"fi_Latn_FI"}

     und_FJ{"fj_Latn_FJ"}

@@ -293,7 +294,6 @@
     und_GQ{"fr_Latn_GQ"}

     und_GR{"el_Grek_GR"}

     und_GT{"es_Latn_GT"}

-    und_GU{"ch_Latn_GU"}

     und_GW{"pt_Latn_GW"}

     und_Geor{"ka_Geor_GE"}

     und_Grek{"el_Grek_GR"}

@@ -338,20 +338,19 @@
     und_LV{"lv_Latn_LV"}

     und_LY{"ar_Arab_LY"}

     und_Laoo{"lo_Laoo_LA"}

-    und_Latn_CN{"ii_Latn_CN"}

+    und_Latn_CN{"za_Latn_CN"}

     und_Latn_CY{"tr_Latn_CY"}

     und_Latn_DZ{"fr_Latn_DZ"}

-    und_Latn_ET{"om_Latn_ET"}

+    und_Latn_ER{"aa_Latn_ER"}

     und_Latn_KM{"fr_Latn_KM"}

     und_Latn_MA{"fr_Latn_MA"}

     und_Latn_MK{"sq_Latn_MK"}

     und_Latn_SY{"fr_Latn_SY"}

-    und_Latn_TD{"fr_Latn_TD"}

     und_Latn_TN{"fr_Latn_TN"}

     und_MA{"ar_Arab_MA"}

     und_MC{"fr_Latn_MC"}

     und_MD{"ro_Latn_MD"}

-    und_ME{"sr_Cyrl_ME"}

+    und_ME{"sr_Latn_ME"}

     und_MF{"fr_Latn_MF"}

     und_MG{"mg_Latn_MG"}

     und_MH{"mh_Latn_MH"}

@@ -373,18 +372,16 @@
     und_Mymr{"my_Mymr_MM"}

     und_NC{"fr_Latn_NC"}

     und_NE{"ha_Latn_NE"}

-    und_NG{"ha_Latn_NG"}

     und_NI{"es_Latn_NI"}

     und_NL{"nl_Latn_NL"}

     und_NO{"nb_Latn_NO"}

     und_NP{"ne_Deva_NP"}

-    und_NR{"na_Latn_NR"}

     und_NU{"niu_Latn_NU"}

     und_OM{"ar_Arab_OM"}

     und_Orya{"or_Orya_IN"}

     und_PA{"es_Latn_PA"}

     und_PE{"es_Latn_PE"}

-    und_PF{"ty_Latn_PF"}

+    und_PF{"fr_Latn_PF"}

     und_PG{"tpi_Latn_PG"}

     und_PH{"fil_Latn_PH"}

     und_PK{"ur_Arab_PK"}

@@ -415,35 +412,36 @@
     und_SV{"es_Latn_SV"}

     und_SY{"ar_Arab_SY"}

     und_Sinh{"si_Sinh_LK"}

-    und_TD{"ar_Arab_TD"}

-    und_TG{"ee_Latn_TG"}

+    und_TD{"fr_Latn_TD"}

+    und_TG{"fr_Latn_TG"}

     und_TH{"th_Thai_TH"}

     und_TJ{"tg_Cyrl_TJ"}

-    und_TK{"tkl_Latn_TK"}

-    und_TL{"tet_Latn_TL"}

+    und_TL{"pt_Latn_TL"}

     und_TM{"tk_Latn_TM"}

     und_TN{"ar_Arab_TN"}

     und_TO{"to_Latn_TO"}

     und_TR{"tr_Latn_TR"}

     und_TV{"tvl_Latn_TV"}

     und_TW{"zh_Hant_TW"}

+    und_TZ{"sw_Latn_TZ"}

     und_Taml{"ta_Taml_IN"}

     und_Telu{"te_Telu_IN"}

     und_Thaa{"dv_Thaa_MV"}

     und_Thai{"th_Thai_TH"}

     und_Tibt{"bo_Tibt_CN"}

     und_UA{"uk_Cyrl_UA"}

+    und_UG{"sw_Latn_UG"}

     und_UY{"es_Latn_UY"}

     und_UZ{"uz_Cyrl_UZ"}

     und_VA{"la_Latn_VA"}

     und_VE{"es_Latn_VE"}

     und_VN{"vi_Latn_VN"}

-    und_VU{"fr_Latn_VU"}

+    und_VU{"bi_Latn_VU"}

     und_WF{"fr_Latn_WF"}

     und_WS{"sm_Latn_WS"}

     und_YE{"ar_Arab_YE"}

     und_YT{"fr_Latn_YT"}

-    und_ZW{"sn_Latn_ZW"}

+    und_Yiii{"ii_Yiii_CN"}

     ur{"ur_Arab_PK"}

     uz{"uz_Cyrl_UZ"}

     uz_AF{"uz_Arab_AF"}

@@ -456,7 +454,7 @@
     xh{"xh_Latn_ZA"}

     yap{"yap_Latn_FM"}

     yo{"yo_Latn_NG"}

-    za{"za_Hans_CN"}

+    za{"za_Latn_CN"}

     zh{"zh_Hans_CN"}

     zh_HK{"zh_Hant_HK"}

     zh_Hani{"zh_Hans_CN"}

diff --git a/source/data/misc/supplementalData.txt b/source/data/misc/supplementalData.txt
index 58cd7ad..baf3fb0 100644
--- a/source/data/misc/supplementalData.txt
+++ b/source/data/misc/supplementalData.txt
@@ -5640,6 +5640,13 @@
                 }
             }
         }
+        bci{
+            secondary{
+                territories{
+                    "CI",
+                }
+            }
+        }
         bcl{
             secondary{
                 territories{
@@ -5872,7 +5879,6 @@
             secondary{
                 territories{
                     "CN",
-                    "IN",
                 }
             }
         }
@@ -6180,7 +6186,7 @@
             }
         }
         cpe{
-            primary{
+            secondary{
                 scripts{
                     "Latn",
                 }
@@ -6213,6 +6219,13 @@
                 }
             }
         }
+        crs{
+            secondary{
+                territories{
+                    "SC",
+                }
+            }
+        }
         cs{
             primary{
                 scripts{
@@ -6546,6 +6559,7 @@
                     "LC",
                     "LR",
                     "LS",
+                    "MG",
                     "MH",
                     "MP",
                     "MS",
@@ -6598,6 +6612,7 @@
                     "BE",
                     "DE",
                     "ES",
+                    "ET",
                     "FR",
                     "IN",
                     "IT",
@@ -6888,6 +6903,13 @@
                 }
             }
         }
+        fuq{
+            secondary{
+                territories{
+                    "NE",
+                }
+            }
+        }
         fur{
             primary{
                 scripts{
@@ -7666,6 +7688,13 @@
                 }
             }
         }
+        kea{
+            secondary{
+                territories{
+                    "CV",
+                }
+            }
+        }
         kfo{
             primary{
                 scripts{
@@ -8600,13 +8629,6 @@
                 }
             }
         }
-        mo{
-            primary{
-                scripts{
-                    "Latn",
-                }
-            }
-        }
         moh{
             primary{
                 scripts{
@@ -9717,7 +9739,7 @@
             }
         }
         son{
-            primary{
+            secondary{
                 scripts{
                     "Latn",
                 }
@@ -10068,6 +10090,11 @@
                     "Ethi",
                 }
             }
+            secondary{
+                territories{
+                    "ER",
+                }
+            }
         }
         tiv{
             primary{
diff --git a/source/i18n/bms.cpp b/source/i18n/bms.cpp
index cbcdb38..d86a984 100644
--- a/source/i18n/bms.cpp
+++ b/source/i18n/bms.cpp
@@ -10,6 +10,10 @@
 #include "unicode/colldata.h"
 #include "unicode/bmsearch.h"
 
+
+#if !UCONFIG_NO_COLLATION
+
+
 //#define USE_SAFE_CASTS
 #ifdef USE_SAFE_CASTS
 #define STATIC_CAST(type,value) static_cast<type>(value)
@@ -143,3 +147,5 @@
 
     bms->bms->setTargetString(bms->targetString, *status);
 }
+
+#endif
diff --git a/source/i18n/unicode/bms.h b/source/i18n/unicode/bms.h
index 3e299fb..0f6f7ec 100644
--- a/source/i18n/unicode/bms.h
+++ b/source/i18n/unicode/bms.h
@@ -13,6 +13,9 @@
 #define _BMS_H
 
 #include "unicode/utypes.h"
+
+#if !UCONFIG_NO_COLLATION
+
 #include "unicode/ucol.h"
 
 /**
@@ -265,4 +268,6 @@
 U_CAPI void U_EXPORT2
 bms_setTargetString(BMS *bms, const UChar *target, int32_t targetLength, UErrorCode *status);
 
+#endif
+
 #endif /* _BMS_H */
diff --git a/source/i18n/unicode/tmunit.h b/source/i18n/unicode/tmunit.h
index 1b733db..0a78d0b 100644
--- a/source/i18n/unicode/tmunit.h
+++ b/source/i18n/unicode/tmunit.h
@@ -1,6 +1,6 @@
 /*
  *******************************************************************************
- * Copyright (C) 2008, Google, International Business Machines Corporation and *
+ * Copyright (C) 2009, Google, International Business Machines Corporation and *
  * others. All Rights Reserved.                                                *
  *******************************************************************************
  */
@@ -15,10 +15,10 @@
  */
 
 
-#if !UCONFIG_NO_FORMATTING
-
 #include "unicode/measunit.h"
 
+#if !UCONFIG_NO_FORMATTING
+
 U_NAMESPACE_BEGIN
 
 /**
diff --git a/source/i18n/unicode/tmutamt.h b/source/i18n/unicode/tmutamt.h
index f4d3cb5..5014f88 100644
--- a/source/i18n/unicode/tmutamt.h
+++ b/source/i18n/unicode/tmutamt.h
@@ -1,6 +1,6 @@
 /*
  *******************************************************************************
- * Copyright (C) 2008, Google, International Business Machines Corporation and *
+ * Copyright (C) 2009, Google, International Business Machines Corporation and *
  * others. All Rights Reserved.                                                *
  *******************************************************************************
  */ 
@@ -14,11 +14,11 @@
  * \brief C++ API: time unit amount object.
  */
 
-#if !UCONFIG_NO_FORMATTING
-
 #include "unicode/measure.h"
 #include "unicode/tmunit.h"
 
+#if !UCONFIG_NO_FORMATTING
+
 U_NAMESPACE_BEGIN
 
 
diff --git a/source/i18n/unicode/uspoof.h b/source/i18n/unicode/uspoof.h
index 7183857..279c0a6 100644
--- a/source/i18n/unicode/uspoof.h
+++ b/source/i18n/unicode/uspoof.h
@@ -26,6 +26,10 @@
 #include "unicode/uset.h"
 #include "unicode/parseerr.h"
 
+
+#if !UCONFIG_NO_NORMALIZATION
+
+
 #ifdef XP_CPLUSPLUS
 #include "unicode/unistr.h"
 #include "unicode/uniset.h"
@@ -851,4 +855,6 @@
                  UErrorCode *status);
 
 
+#endif
+
 #endif   /* USPOOF_H */
diff --git a/source/i18n/uspoof.cpp b/source/i18n/uspoof.cpp
index 5a53dd9..1673a94 100644
--- a/source/i18n/uspoof.cpp
+++ b/source/i18n/uspoof.cpp
@@ -21,6 +21,10 @@
 #include "uspoof_impl.h"
 #include "uassert.h"
 
+
+#if !UCONFIG_NO_NORMALIZATION
+
+
 #include <stdio.h>      // debug
 
 U_NAMESPACE_USE
@@ -819,3 +823,4 @@
     return dataSize;
 }
 
+#endif
diff --git a/source/i18n/uspoof_build.cpp b/source/i18n/uspoof_build.cpp
index 0da4af8..a96006f 100644
--- a/source/i18n/uspoof_build.cpp
+++ b/source/i18n/uspoof_build.cpp
@@ -37,6 +37,8 @@
 #include "uspoof_buildconf.h"
 #include "uspoof_buildwsconf.h"
 
+#if !UCONFIG_NO_NORMALIZATION
+
 U_NAMESPACE_USE
 
 
@@ -80,3 +82,4 @@
 #endif // UCONFIG_NO_REGULAR_EXPRESSIONS 
 }
 
+#endif
diff --git a/source/i18n/uspoof_buildconf.cpp b/source/i18n/uspoof_buildconf.cpp
index 57cc7b3..4b95c32 100644
--- a/source/i18n/uspoof_buildconf.cpp
+++ b/source/i18n/uspoof_buildconf.cpp
@@ -19,6 +19,8 @@
 #include "unicode/utypes.h"
 #include "unicode/uspoof.h"
 #if !UCONFIG_NO_REGULAR_EXPRESSIONS 
+#if !UCONFIG_NO_NORMALIZATION
+
 #include "unicode/unorm.h"
 #include "unicode/uregex.h"
 #include "unicode/ustring.h"
@@ -591,5 +593,6 @@
     return UnicodeString();
 }
 
+#endif
 #endif // !UCONFIG_NO_REGULAR_EXPRESSIONS 
 
diff --git a/source/i18n/uspoof_buildconf.h b/source/i18n/uspoof_buildconf.h
index 12b1014..9f3b003 100644
--- a/source/i18n/uspoof_buildconf.h
+++ b/source/i18n/uspoof_buildconf.h
@@ -19,6 +19,8 @@
 #ifndef __USPOOF_BUILDCONF_H__
 #define __USPOOF_BUILDCONF_H__
 
+#if !UCONFIG_NO_NORMALIZATION
+
 #if !UCONFIG_NO_REGULAR_EXPRESSIONS 
 
 #include "uspoof_impl.h"
@@ -122,5 +124,6 @@
         int32_t confusablesLen, int32_t *errorType, UParseError *pe, UErrorCode &status);
 };
 
+#endif
 #endif  // !UCONFIG_NO_REGULAR_EXPRESSIONS 
 #endif  // __USPOOF_BUILDCONF_H__
diff --git a/source/i18n/uspoof_buildwsconf.cpp b/source/i18n/uspoof_buildwsconf.cpp
index fb9d817..547da0f 100644
--- a/source/i18n/uspoof_buildwsconf.cpp
+++ b/source/i18n/uspoof_buildwsconf.cpp
@@ -21,6 +21,8 @@
 #include "unicode/utypes.h"
 #include "unicode/uspoof.h"
 
+#if !UCONFIG_NO_NORMALIZATION
+
 #if !UCONFIG_NO_REGULAR_EXPRESSIONS 
 
 #include "unicode/unorm.h"
@@ -428,5 +430,6 @@
     }
 }
 
+#endif
 #endif //  !UCONFIG_NO_REGULAR_EXPRESSIONS 
 
diff --git a/source/i18n/uspoof_buildwsconf.h b/source/i18n/uspoof_buildwsconf.h
index 76940b5..6839c5c 100644
--- a/source/i18n/uspoof_buildwsconf.h
+++ b/source/i18n/uspoof_buildwsconf.h
@@ -22,6 +22,8 @@
 
 #include "unicode/utypes.h"
 
+#if !UCONFIG_NO_NORMALIZATION
+
 #if !UCONFIG_NO_REGULAR_EXPRESSIONS 
 
 #include "uspoof_impl.h"
@@ -58,4 +60,5 @@
 
 
 #endif // !UCONFIG_NO_REGULAR_EXPRESSIONS 
+#endif // !UCONFIG_NO_NORMALIZATION 
 #endif
diff --git a/source/i18n/uspoof_impl.cpp b/source/i18n/uspoof_impl.cpp
index a763151..30b5fb7 100644
--- a/source/i18n/uspoof_impl.cpp
+++ b/source/i18n/uspoof_impl.cpp
@@ -19,6 +19,8 @@
 #include "uassert.h"
 #include "uspoof_impl.h"
 
+#if !UCONFIG_NO_NORMALIZATION
+
 
 U_NAMESPACE_BEGIN
 
@@ -955,4 +957,6 @@
     return totalSize;
 }
 
+#endif
+
 
diff --git a/source/i18n/uspoof_impl.h b/source/i18n/uspoof_impl.h
index 0ba2819..175e00e 100644
--- a/source/i18n/uspoof_impl.h
+++ b/source/i18n/uspoof_impl.h
@@ -20,6 +20,8 @@
 #include "unicode/udata.h"
 
 
+#if !UCONFIG_NO_NORMALIZATION
+
 U_NAMESPACE_BEGIN
 
 // The maximium length (in UTF-16 UChars) of the skeleton replacement string resulting from
@@ -403,5 +405,7 @@
             UErrorCode *status);
 
 
+#endif
+
 #endif  /* USPOOFIM_H */
 
diff --git a/source/test/cintltst/cloctst.c b/source/test/cintltst/cloctst.c
index 8290039..8f7b2e8 100644
--- a/source/test/cintltst/cloctst.c
+++ b/source/test/cintltst/cloctst.c
@@ -3197,7 +3197,7 @@
     "ig"
   }, {
     "ii",
-    "ii_Latn_CN",
+    "ii_Yiii_CN",
     "ii"
   }, {
     "is",
@@ -3677,16 +3677,16 @@
     "bn_IN"
   }, {
     "und_CD",
-    "fr_Latn_CD",
-    "fr_CD"
+    "sw_Latn_CD",
+    "sw_CD"
   }, {
     "und_CF",
-    "sg_Latn_CF",
-    "sg"
+    "fr_Latn_CF",
+    "fr_CF"
   }, {
     "und_CG",
-    "ln_Latn_CG",
-    "ln_CG"
+    "fr_Latn_CG",
+    "fr_CG"
   }, {
     "und_CH",
     "de_Latn_CH",
@@ -3733,8 +3733,8 @@
     "cs"
   }, {
     "und_Cans",
-    "cwd_Cans_CA",
-    "cwd"
+    "crk_Cans_CA",
+    "crk"
   }, {
     "und_Cyrl",
     "ru_Cyrl_RU",
@@ -3793,8 +3793,8 @@
     "es"
   }, {
     "und_ET",
-    "am_Ethi_ET",
-    "am"
+    "en_Latn_ET",
+    "en_ET"
   }, {
     "und_Ethi",
     "am_Ethi_ET",
@@ -3861,8 +3861,8 @@
     "es_GT"
   }, {
     "und_GU",
-    "ch_Latn_GU",
-    "ch"
+    "en_Latn_GU",
+    "en_GU"
   }, {
     "und_GW",
     "pt_Latn_GW",
@@ -4041,8 +4041,8 @@
     "es"
   }, {
     "und_Latn_ET",
-    "om_Latn_ET",
-    "om"
+    "en_Latn_ET",
+    "en_ET"
   }, {
     "und_Latn_GB",
     "en_Latn_GB",
@@ -4061,8 +4061,8 @@
     "it"
   }, {
     "und_Latn_NG",
-    "ha_Latn_NG",
-    "ha"
+    "en_Latn_NG",
+    "en_NG"
   }, {
     "und_Latn_TR",
     "tr_Latn_TR",
@@ -4085,7 +4085,7 @@
     "ro_MD"
   }, {
     "und_ME",
-    "sr_Cyrl_ME",
+    "sr_Latn_ME",
     "sr_ME"
   }, {
     "und_MG",
@@ -4165,8 +4165,8 @@
     "ha_NE"
   }, {
     "und_NG",
-    "ha_Latn_NG",
-    "ha"
+    "en_Latn_NG",
+    "en_NG"
   }, {
     "und_NI",
     "es_Latn_NI",
@@ -4185,8 +4185,8 @@
     "ne"
   }, {
     "und_NR",
-    "na_Latn_NR",
-    "na"
+    "en_Latn_NR",
+    "en_NR"
   }, {
     "und_NU",
     "niu_Latn_NU",
@@ -4209,8 +4209,8 @@
     "es_PE"
   }, {
     "und_PF",
-    "ty_Latn_PF",
-    "ty"
+    "fr_Latn_PF",
+    "fr_PF"
   }, {
     "und_PG",
     "tpi_Latn_PG",
@@ -4333,12 +4333,12 @@
     "si"
   }, {
     "und_TD",
-    "ar_Arab_TD",
-    "ar_TD"
+    "fr_Latn_TD",
+    "fr_TD"
   }, {
     "und_TG",
-    "ee_Latn_TG",
-    "ee_TG"
+    "fr_Latn_TG",
+    "fr_TG"
   }, {
     "und_TH",
     "th_Thai_TH",
@@ -4349,12 +4349,12 @@
     "tg"
   }, {
     "und_TK",
-    "tkl_Latn_TK",
-    "tkl"
+    "en_Latn_TK",
+    "en_TK"
   }, {
     "und_TL",
-    "tet_Latn_TL",
-    "tet"
+    "pt_Latn_TL",
+    "pt_TL"
   }, {
     "und_TM",
     "tk_Latn_TM",
@@ -4425,8 +4425,8 @@
     "vi"
   }, {
     "und_VU",
-    "fr_Latn_VU",
-    "fr_VU"
+    "bi_Latn_VU",
+    "bi"
   }, {
     "und_WF",
     "fr_Latn_WF",
@@ -4445,8 +4445,8 @@
     "fr_YT"
   }, {
     "und_Yiii",
-    "en_Yiii_US",
-    "en_Yiii"
+    "ii_Yiii_CN",
+    "ii"
   }, {
     "ur",
     "ur_Arab_PK",
@@ -4573,8 +4573,8 @@
     "en"
   }, {
     "und_Latn_CN",
-    "ii_Latn_CN",
-    "ii"
+    "za_Latn_CN",
+    "za"
   }, {
     "und_Latn_TW",
     "zh_Latn_TW",
diff --git a/source/test/hdrtst/cxxfiles.txt b/source/test/hdrtst/cxxfiles.txt
index 981b966..b0c0bf4 100644
--- a/source/test/hdrtst/cxxfiles.txt
+++ b/source/test/hdrtst/cxxfiles.txt
@@ -17,6 +17,7 @@
 cpdtrans.h
 curramt.h
 currunit.h
+currpinf.h
 datefmt.h
 dbbi.h
 dcfmtsym.h
diff --git a/source/tools/toolutil/swapimpl.cpp b/source/tools/toolutil/swapimpl.cpp
index f35e164..ceb7eb0 100644
--- a/source/tools/toolutil/swapimpl.cpp
+++ b/source/tools/toolutil/swapimpl.cpp
@@ -57,7 +57,10 @@
 
 /* swapping implementations in i18n */
 
+#if !UCONFIG_NO_NORMALIZATION
 #include "uspoof_impl.h"
+#endif
+
 
 /* definitions */