OpenJDK / jdk8 / jdk8 / jdk
changeset 5747:131a683a2ce0
6336885: RFE: Locale Data Deployment Enhancements
4609153: Provide locale data for Indic locales
5104387: Support for gl_ES locale (galician language)
6337471: desktop/system locale preferences support
7056139: (cal) SPI support for locale-dependent Calendar parameters
7058206: Provide CalendarData SPI for week params and display field value names
7073852: Support multiple scripts for digits and decimal symbols per locale
7079560: [Fmt-Da] Context dependent month names support in SimpleDateFormat
7171324: getAvailableLocales() of locale sensitive services should return the actual availability of locales
7151414: (cal) Support calendar type identification
7168528: LocaleServiceProvider needs to be aware of Locale extensions
7171372: (cal) locale's default Calendar should be created if unknown calendar is specified
Summary: JEP 127: Improve Locale Data Packaging and Adopt Unicode CLDR Data (part 1 w/o packaging changes. by Naoto Sato and Masayoshi Okutsu)
Reviewed-by: erikj, sherman, peytoia
line wrap: on
line diff
--- a/make/java/java/Exportedfiles.gmk Tue Aug 21 13:42:08 2012 +0100 +++ b/make/java/java/Exportedfiles.gmk Tue Aug 21 11:00:30 2012 -0700 @@ -93,7 +93,8 @@ sun/reflect/ConstantPool.java \ sun/reflect/NativeConstructorAccessorImpl.java \ sun/reflect/NativeMethodAccessorImpl.java \ - sun/reflect/Reflection.java + sun/reflect/Reflection.java \ + sun/util/locale/provider/HostLocaleProviderAdapterImpl.java EXPORTED_inner = \ java.lang.ClassLoader$$NativeLibrary @@ -170,7 +171,8 @@ sun/reflect/NativeMethodAccessorImpl.java \ sun/reflect/Reflection.java \ sun/security/provider/NativeSeedGenerator.java \ - sun/io/Win32ErrorMode.java + sun/io/Win32ErrorMode.java \ + sun/util/locale/provider/HostLocaleProviderAdapterImpl.java EXPORTED_inner = \ java.lang.ClassLoader$$NativeLibrary
--- a/make/java/java/FILES_c.gmk Tue Aug 21 13:42:08 2012 +0100 +++ b/make/java/java/FILES_c.gmk Tue Aug 21 11:00:30 2012 -0700 @@ -78,4 +78,5 @@ AtomicLong.c \ Version.c \ VM.c \ - VMSupport.c + VMSupport.c \ + HostLocaleProviderAdapter_md.c
--- a/make/java/java/FILES_java.gmk Tue Aug 21 13:42:08 2012 +0100 +++ b/make/java/java/FILES_java.gmk Tue Aug 21 11:00:30 2012 -0700 @@ -188,7 +188,6 @@ java/util/IllformedLocaleException.java \ java/util/FormatterClosedException.java \ java/util/ListResourceBundle.java \ - sun/util/EmptyListResourceBundle.java \ java/util/Locale.java \ sun/util/locale/BaseLocale.java \ sun/util/locale/Extension.java \ @@ -201,9 +200,35 @@ sun/util/locale/ParseStatus.java \ sun/util/locale/StringTokenIterator.java \ sun/util/locale/UnicodeLocaleExtension.java \ + sun/util/locale/provider/AuxLocaleProviderAdapter.java \ + sun/util/locale/provider/AvailableLanguageTags.java \ + sun/util/locale/provider/BreakDictionary.java \ + sun/util/locale/provider/BreakIteratorProviderImpl.java \ + sun/util/locale/provider/CalendarDataProviderImpl.java \ + sun/util/locale/provider/CalendarDataUtility.java \ + sun/util/locale/provider/CollationRules.java \ + sun/util/locale/provider/CollatorProviderImpl.java \ + sun/util/locale/provider/CurrencyNameProviderImpl.java \ + sun/util/locale/provider/DateFormatProviderImpl.java \ + sun/util/locale/provider/DateFormatSymbolsProviderImpl.java \ + sun/util/locale/provider/DecimalFormatSymbolsProviderImpl.java \ + sun/util/locale/provider/DictionaryBasedBreakIterator.java \ + sun/util/locale/provider/HostLocaleProviderAdapter.java \ + sun/util/locale/provider/HostLocaleProviderAdapterImpl.java \ + sun/util/locale/provider/JRELocaleConstants.java \ + sun/util/locale/provider/JRELocaleProviderAdapter.java \ + sun/util/locale/provider/LocaleServiceProviderPool.java \ + sun/util/locale/provider/LocaleProviderAdapter.java \ + sun/util/locale/provider/LocaleDataMetaInfo.java \ + sun/util/locale/provider/LocaleNameProviderImpl.java \ + sun/util/locale/provider/LocaleResources.java \ + sun/util/locale/provider/NumberFormatProviderImpl.java \ + sun/util/locale/provider/RuleBasedBreakIterator.java \ + sun/util/locale/provider/SPILocaleProviderAdapter.java \ + sun/util/locale/provider/TimeZoneNameProviderImpl.java \ + sun/util/locale/provider/TimeZoneNameUtility.java \ java/util/LocaleISOData.java \ - sun/util/LocaleServiceProviderPool.java \ - sun/util/LocaleDataMetaInfo.java \ + sun/util/cldr/CLDRLocaleProviderAdapter.java \ java/util/MissingResourceException.java \ java/util/NoSuchElementException.java \ java/util/Observable.java \ @@ -222,7 +247,6 @@ java/util/StringTokenizer.java \ java/util/TimeZone.java \ java/util/SimpleTimeZone.java \ - sun/util/TimeZoneNameUtility.java \ sun/util/calendar/ZoneInfo.java \ sun/util/calendar/ZoneInfoFile.java \ sun/util/calendar/TzIDOldMapping.java \ @@ -369,6 +393,7 @@ java/util/prefs/PreferencesFactory.java \ java/util/prefs/Base64.java \ java/util/prefs/XmlSupport.java \ + java/util/spi/CalendarDataProvider.java \ java/util/spi/CurrencyNameProvider.java \ java/util/spi/LocaleNameProvider.java \ java/util/spi/LocaleServiceProvider.java \
--- a/make/java/java/Makefile Tue Aug 21 13:42:08 2012 +0100 +++ b/make/java/java/Makefile Tue Aug 21 11:00:30 2012 -0700 @@ -156,6 +156,11 @@ vpath %.c $(PLATFORM_SRC)/native/java/util vpath %.c $(PLATFORM_SRC)/native/sun/security/provider vpath %.c $(PLATFORM_SRC)/native/sun/io +ifeq ($(PLATFORM),macosx) +vpath %.c $(PLATFORM_SRC_MACOS)/native/sun/util/locale/provider +else # PLATFORM +vpath %.c $(PLATFORM_SRC)/native/sun/util/locale/provider +endif # PLATFORM # # Includes the fdlibm header file.
--- a/make/java/java/genlocales.gmk Tue Aug 21 13:42:08 2012 +0100 +++ b/make/java/java/genlocales.gmk Tue Aug 21 11:00:30 2012 -0700 @@ -68,8 +68,8 @@ FILES_java := $(FILES_java_orig) FILES_compiled_properties := $(FILES_compiled_properties_orig) -LocaleDataMetaInfo_Src=$(SHARE_SRC)/classes/sun/util/LocaleDataMetaInfo-XLocales.java.template -LocaleDataMetaInfo_Dest=$(GENSRCDIR)/sun/util/LocaleDataMetaInfo.java +LocaleDataMetaInfo_Src=$(SHARE_SRC)/classes/sun/util/locale/provider/LocaleDataMetaInfo-XLocales.java.template +LocaleDataMetaInfo_Dest=$(GENSRCDIR)/sun/util/locale/provider/LocaleDataMetaInfo.java LOCALEGEN_SH=localegen.sh RESOURCE_NAMES="FormatData CollationData TimeZoneNames LocaleNames CurrencyNames CalendarData"
--- a/make/java/java/localegen.sh Tue Aug 21 13:42:08 2012 +0100 +++ b/make/java/java/localegen.sh Tue Aug 21 11:00:30 2012 -0700 @@ -1,7 +1,7 @@ #!/bin/sh # -# Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it @@ -47,20 +47,29 @@ localelist= getlocalelist() { localelist="" - localelist=`$NAWK -F$1_ '{print $2}' $2 | $SORT` + localelist=`$NAWK -F$1_ '{print $2}' $2 | $SORT | $SED -e 's/_/-/g'` } -sed_script="$SED -e \"s@^#warn .*@// -- This file was mechanically generated: Do not edit! -- //@\" " +sed_script="$SED -e \"s@^#warn .*@// -- This file was mechanically generated: Do not edit! -- //@\" " -for FILE in $RESOURCE_NAMES +# ja-JP-JP and th-TH-TH need to be manually added, as they don't have any resource files. +noneuroall=" ja-JP-JP th-TH-TH " + +for FILE in $RESOURCE_NAMES do getlocalelist $FILE $EURO_FILES_LIST sed_script=$sed_script"-e \"s@#"$FILE"_EuroLocales#@$localelist@g\" " + euroall=$euroall" "$localelist getlocalelist $FILE $NONEURO_FILES_LIST sed_script=$sed_script"-e \"s@#"$FILE"_NonEuroLocales#@$localelist@g\" " + noneuroall=$noneuroall" "$localelist done +euroall=`(for LOC in $euroall; do echo $LOC;done) |$SORT -u` +noneuroall=`(for LOC in $noneuroall; do echo $LOC;done) |$SORT -u` + +sed_script=$sed_script"-e \"s@#AvailableLocales_EuroLocales#@$euroall@g\" " +sed_script=$sed_script"-e \"s@#AvailableLocales_NonEuroLocales#@$noneuroall@g\" " + sed_script=$sed_script"$INPUT_FILE > $OUTPUT_FILE" eval $sed_script - -
--- a/make/java/java/mapfile-vers Tue Aug 21 13:42:08 2012 +0100 +++ b/make/java/java/mapfile-vers Tue Aug 21 11:00:30 2012 -0700 @@ -285,6 +285,8 @@ # Java_sun_misc_VM_unsuspendSomeThreads; threads.c # Java_sun_misc_VM_unsuspendThreads; threads.c + Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getPattern; + # Outcalls from libjvm done using dlsym(). VerifyClassCodes;
--- a/make/java/text/base/FILES_java.gmk Tue Aug 21 13:42:08 2012 +0100 +++ b/make/java/text/base/FILES_java.gmk Tue Aug 21 11:00:30 2012 -0700 @@ -1,5 +1,5 @@ # -# Copyright (c) 1996, 2011, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 1996, 2012, Oracle and/or its affiliates. All rights reserved. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it @@ -27,7 +27,6 @@ java/text/Annotation.java \ java/text/AttributedCharacterIterator.java \ java/text/AttributedString.java \ - java/text/BreakDictionary.java \ java/text/BreakIterator.java \ java/text/CalendarBuilder.java \ java/text/CharacterIterator.java \ @@ -36,11 +35,9 @@ java/text/Collator.java \ java/text/CollationElementIterator.java \ java/text/CollationKey.java \ - java/text/CollationRules.java \ java/text/DateFormat.java \ java/text/DateFormatSymbols.java \ java/text/DecimalFormat.java \ - java/text/DictionaryBasedBreakIterator.java \ java/text/DigitList.java \ java/text/EntryPair.java \ java/text/Format.java \ @@ -56,7 +53,6 @@ java/text/PatternEntry.java \ java/text/RBCollationTables.java \ java/text/RBTableBuilder.java \ - java/text/RuleBasedBreakIterator.java \ java/text/RuleBasedCollator.java \ java/text/RuleBasedCollationKey.java \ java/text/SimpleDateFormat.java \ @@ -107,158 +103,150 @@ sun/text/resources/BreakIteratorInfo.java \ \ sun/text/resources/CollationData.java \ - sun/text/resources/CollationData_be.java \ - sun/text/resources/CollationData_bg.java \ - sun/text/resources/CollationData_ca.java \ - sun/text/resources/CollationData_cs.java \ - sun/text/resources/CollationData_da.java \ - sun/text/resources/CollationData_de.java \ - sun/text/resources/CollationData_el.java \ - sun/text/resources/CollationData_en.java \ - sun/text/resources/CollationData_es.java \ - sun/text/resources/CollationData_et.java \ - sun/text/resources/CollationData_fi.java \ - sun/text/resources/CollationData_fr.java \ - sun/text/resources/CollationData_hr.java \ - sun/text/resources/CollationData_hu.java \ - sun/text/resources/CollationData_is.java \ - sun/text/resources/CollationData_it.java \ - sun/text/resources/CollationData_lt.java \ - sun/text/resources/CollationData_lv.java \ - sun/text/resources/CollationData_mk.java \ - sun/text/resources/CollationData_nl.java \ - sun/text/resources/CollationData_no.java \ - sun/text/resources/CollationData_pl.java \ - sun/text/resources/CollationData_pt.java \ - sun/text/resources/CollationData_ro.java \ - sun/text/resources/CollationData_ru.java \ - sun/text/resources/CollationData_sk.java \ - sun/text/resources/CollationData_sl.java \ - sun/text/resources/CollationData_sq.java \ - sun/text/resources/CollationData_sr.java \ - sun/text/resources/CollationData_sr_Latn.java \ - sun/text/resources/CollationData_sv.java \ - sun/text/resources/CollationData_tr.java \ - sun/text/resources/CollationData_uk.java \ + sun/text/resources/be/CollationData_be.java \ + sun/text/resources/bg/CollationData_bg.java \ + sun/text/resources/ca/CollationData_ca.java \ + sun/text/resources/cs/CollationData_cs.java \ + sun/text/resources/da/CollationData_da.java \ + sun/text/resources/el/CollationData_el.java \ + sun/text/resources/es/CollationData_es.java \ + sun/text/resources/et/CollationData_et.java \ + sun/text/resources/fi/CollationData_fi.java \ + sun/text/resources/fr/CollationData_fr.java \ + sun/text/resources/hr/CollationData_hr.java \ + sun/text/resources/hu/CollationData_hu.java \ + sun/text/resources/is/CollationData_is.java \ + sun/text/resources/lt/CollationData_lt.java \ + sun/text/resources/lv/CollationData_lv.java \ + sun/text/resources/mk/CollationData_mk.java \ + sun/text/resources/no/CollationData_no.java \ + sun/text/resources/pl/CollationData_pl.java \ + sun/text/resources/ro/CollationData_ro.java \ + sun/text/resources/ru/CollationData_ru.java \ + sun/text/resources/sk/CollationData_sk.java \ + sun/text/resources/sl/CollationData_sl.java \ + sun/text/resources/sq/CollationData_sq.java \ + sun/text/resources/sr/CollationData_sr.java \ + sun/text/resources/sr/CollationData_sr_Latn.java \ + sun/text/resources/sv/CollationData_sv.java \ + sun/text/resources/tr/CollationData_tr.java \ + sun/text/resources/uk/CollationData_uk.java \ \ sun/text/resources/FormatData.java \ - sun/text/resources/FormatData_be.java \ - sun/text/resources/FormatData_be_BY.java \ - sun/text/resources/FormatData_bg.java \ - sun/text/resources/FormatData_bg_BG.java \ - sun/text/resources/FormatData_ca.java \ - sun/text/resources/FormatData_ca_ES.java \ - sun/text/resources/FormatData_cs.java \ - sun/text/resources/FormatData_cs_CZ.java \ - sun/text/resources/FormatData_da.java \ - sun/text/resources/FormatData_da_DK.java \ - sun/text/resources/FormatData_de.java \ - sun/text/resources/FormatData_de_AT.java \ - sun/text/resources/FormatData_de_CH.java \ - sun/text/resources/FormatData_de_DE.java \ - sun/text/resources/FormatData_de_LU.java \ - sun/text/resources/FormatData_el.java \ - sun/text/resources/FormatData_el_CY.java \ - sun/text/resources/FormatData_el_GR.java \ - sun/text/resources/FormatData_en.java \ - sun/text/resources/FormatData_en_US.java \ - sun/text/resources/FormatData_en_AU.java \ - sun/text/resources/FormatData_en_CA.java \ - sun/text/resources/FormatData_en_GB.java \ - sun/text/resources/FormatData_en_IE.java \ - sun/text/resources/FormatData_en_IN.java \ - sun/text/resources/FormatData_en_MT.java \ - sun/text/resources/FormatData_en_NZ.java \ - sun/text/resources/FormatData_en_PH.java \ - sun/text/resources/FormatData_en_SG.java \ - sun/text/resources/FormatData_en_ZA.java \ - sun/text/resources/FormatData_es.java \ - sun/text/resources/FormatData_es_BO.java \ - sun/text/resources/FormatData_es_AR.java \ - sun/text/resources/FormatData_es_CL.java \ - sun/text/resources/FormatData_es_CO.java \ - sun/text/resources/FormatData_es_CR.java \ - sun/text/resources/FormatData_es_DO.java \ - sun/text/resources/FormatData_es_EC.java \ - sun/text/resources/FormatData_es_ES.java \ - sun/text/resources/FormatData_es_GT.java \ - sun/text/resources/FormatData_es_HN.java \ - sun/text/resources/FormatData_es_MX.java \ - sun/text/resources/FormatData_es_NI.java \ - sun/text/resources/FormatData_es_PA.java \ - sun/text/resources/FormatData_es_PE.java \ - sun/text/resources/FormatData_es_PR.java \ - sun/text/resources/FormatData_es_PY.java \ - sun/text/resources/FormatData_es_SV.java \ - sun/text/resources/FormatData_es_US.java \ - sun/text/resources/FormatData_es_UY.java \ - sun/text/resources/FormatData_es_VE.java \ - sun/text/resources/FormatData_et.java \ - sun/text/resources/FormatData_et_EE.java \ - sun/text/resources/FormatData_fi.java \ - sun/text/resources/FormatData_fi_FI.java \ - sun/text/resources/FormatData_fr.java \ - sun/text/resources/FormatData_fr_BE.java \ - sun/text/resources/FormatData_fr_CA.java \ - sun/text/resources/FormatData_fr_CH.java \ - sun/text/resources/FormatData_fr_FR.java \ - sun/text/resources/FormatData_fr_LU.java \ - sun/text/resources/FormatData_ga.java \ - sun/text/resources/FormatData_ga_IE.java \ - sun/text/resources/FormatData_hr.java \ - sun/text/resources/FormatData_hr_HR.java \ - sun/text/resources/FormatData_hu.java \ - sun/text/resources/FormatData_hu_HU.java \ - sun/text/resources/FormatData_in.java \ - sun/text/resources/FormatData_in_ID.java \ - sun/text/resources/FormatData_is.java \ - sun/text/resources/FormatData_is_IS.java \ - sun/text/resources/FormatData_it.java \ - sun/text/resources/FormatData_it_CH.java \ - sun/text/resources/FormatData_it_IT.java \ - sun/text/resources/FormatData_lt.java \ - sun/text/resources/FormatData_lt_LT.java \ - sun/text/resources/FormatData_lv.java \ - sun/text/resources/FormatData_lv_LV.java \ - sun/text/resources/FormatData_mk.java \ - sun/text/resources/FormatData_mk_MK.java \ - sun/text/resources/FormatData_ms.java \ - sun/text/resources/FormatData_ms_MY.java \ - sun/text/resources/FormatData_mt.java \ - sun/text/resources/FormatData_mt_MT.java \ - sun/text/resources/FormatData_nl.java \ - sun/text/resources/FormatData_nl_BE.java \ - sun/text/resources/FormatData_nl_NL.java \ - sun/text/resources/FormatData_no.java \ - sun/text/resources/FormatData_no_NO.java \ - sun/text/resources/FormatData_no_NO_NY.java \ - sun/text/resources/FormatData_pl.java \ - sun/text/resources/FormatData_pl_PL.java \ - sun/text/resources/FormatData_pt.java \ - sun/text/resources/FormatData_pt_BR.java \ - sun/text/resources/FormatData_pt_PT.java \ - sun/text/resources/FormatData_ro.java \ - sun/text/resources/FormatData_ro_RO.java \ - sun/text/resources/FormatData_ru.java \ - sun/text/resources/FormatData_ru_RU.java \ - sun/text/resources/FormatData_sk.java \ - sun/text/resources/FormatData_sk_SK.java \ - sun/text/resources/FormatData_sl.java \ - sun/text/resources/FormatData_sl_SI.java \ - sun/text/resources/FormatData_sq.java \ - sun/text/resources/FormatData_sq_AL.java \ - sun/text/resources/FormatData_sr.java \ - sun/text/resources/FormatData_sr_BA.java \ - sun/text/resources/FormatData_sr_CS.java \ - sun/text/resources/FormatData_sr_ME.java \ - sun/text/resources/FormatData_sr_RS.java \ - sun/text/resources/FormatData_sr_Latn.java \ - sun/text/resources/FormatData_sr_Latn_BA.java \ - sun/text/resources/FormatData_sr_Latn_ME.java \ - sun/text/resources/FormatData_sr_Latn_RS.java \ - sun/text/resources/FormatData_sv.java \ - sun/text/resources/FormatData_sv_SE.java \ - sun/text/resources/FormatData_tr.java \ - sun/text/resources/FormatData_tr_TR.java \ - sun/text/resources/FormatData_uk.java \ - sun/text/resources/FormatData_uk_UA.java + sun/text/resources/be/FormatData_be.java \ + sun/text/resources/be/FormatData_be_BY.java \ + sun/text/resources/bg/FormatData_bg.java \ + sun/text/resources/bg/FormatData_bg_BG.java \ + sun/text/resources/ca/FormatData_ca.java \ + sun/text/resources/ca/FormatData_ca_ES.java \ + sun/text/resources/cs/FormatData_cs.java \ + sun/text/resources/cs/FormatData_cs_CZ.java \ + sun/text/resources/da/FormatData_da.java \ + sun/text/resources/da/FormatData_da_DK.java \ + sun/text/resources/de/FormatData_de.java \ + sun/text/resources/de/FormatData_de_AT.java \ + sun/text/resources/de/FormatData_de_CH.java \ + sun/text/resources/de/FormatData_de_DE.java \ + sun/text/resources/de/FormatData_de_LU.java \ + sun/text/resources/el/FormatData_el.java \ + sun/text/resources/el/FormatData_el_CY.java \ + sun/text/resources/el/FormatData_el_GR.java \ + sun/text/resources/en/FormatData_en.java \ + sun/text/resources/en/FormatData_en_US.java \ + sun/text/resources/en/FormatData_en_AU.java \ + sun/text/resources/en/FormatData_en_CA.java \ + sun/text/resources/en/FormatData_en_GB.java \ + sun/text/resources/en/FormatData_en_IE.java \ + sun/text/resources/en/FormatData_en_IN.java \ + sun/text/resources/en/FormatData_en_MT.java \ + sun/text/resources/en/FormatData_en_NZ.java \ + sun/text/resources/en/FormatData_en_PH.java \ + sun/text/resources/en/FormatData_en_SG.java \ + sun/text/resources/en/FormatData_en_ZA.java \ + sun/text/resources/es/FormatData_es.java \ + sun/text/resources/es/FormatData_es_BO.java \ + sun/text/resources/es/FormatData_es_AR.java \ + sun/text/resources/es/FormatData_es_CL.java \ + sun/text/resources/es/FormatData_es_CO.java \ + sun/text/resources/es/FormatData_es_CR.java \ + sun/text/resources/es/FormatData_es_DO.java \ + sun/text/resources/es/FormatData_es_EC.java \ + sun/text/resources/es/FormatData_es_ES.java \ + sun/text/resources/es/FormatData_es_GT.java \ + sun/text/resources/es/FormatData_es_HN.java \ + sun/text/resources/es/FormatData_es_MX.java \ + sun/text/resources/es/FormatData_es_NI.java \ + sun/text/resources/es/FormatData_es_PA.java \ + sun/text/resources/es/FormatData_es_PE.java \ + sun/text/resources/es/FormatData_es_PR.java \ + sun/text/resources/es/FormatData_es_PY.java \ + sun/text/resources/es/FormatData_es_SV.java \ + sun/text/resources/es/FormatData_es_US.java \ + sun/text/resources/es/FormatData_es_UY.java \ + sun/text/resources/es/FormatData_es_VE.java \ + sun/text/resources/et/FormatData_et.java \ + sun/text/resources/et/FormatData_et_EE.java \ + sun/text/resources/fi/FormatData_fi.java \ + sun/text/resources/fi/FormatData_fi_FI.java \ + sun/text/resources/fr/FormatData_fr.java \ + sun/text/resources/fr/FormatData_fr_BE.java \ + sun/text/resources/fr/FormatData_fr_CA.java \ + sun/text/resources/fr/FormatData_fr_CH.java \ + sun/text/resources/fr/FormatData_fr_FR.java \ + sun/text/resources/ga/FormatData_ga.java \ + sun/text/resources/ga/FormatData_ga_IE.java \ + sun/text/resources/hr/FormatData_hr.java \ + sun/text/resources/hr/FormatData_hr_HR.java \ + sun/text/resources/hu/FormatData_hu.java \ + sun/text/resources/hu/FormatData_hu_HU.java \ + sun/text/resources/in/FormatData_in.java \ + sun/text/resources/in/FormatData_in_ID.java \ + sun/text/resources/is/FormatData_is.java \ + sun/text/resources/is/FormatData_is_IS.java \ + sun/text/resources/it/FormatData_it.java \ + sun/text/resources/it/FormatData_it_CH.java \ + sun/text/resources/it/FormatData_it_IT.java \ + sun/text/resources/lt/FormatData_lt.java \ + sun/text/resources/lt/FormatData_lt_LT.java \ + sun/text/resources/lv/FormatData_lv.java \ + sun/text/resources/lv/FormatData_lv_LV.java \ + sun/text/resources/mk/FormatData_mk.java \ + sun/text/resources/mk/FormatData_mk_MK.java \ + sun/text/resources/ms/FormatData_ms.java \ + sun/text/resources/ms/FormatData_ms_MY.java \ + sun/text/resources/mt/FormatData_mt.java \ + sun/text/resources/mt/FormatData_mt_MT.java \ + sun/text/resources/nl/FormatData_nl.java \ + sun/text/resources/nl/FormatData_nl_BE.java \ + sun/text/resources/nl/FormatData_nl_NL.java \ + sun/text/resources/no/FormatData_no.java \ + sun/text/resources/no/FormatData_no_NO.java \ + sun/text/resources/no/FormatData_no_NO_NY.java \ + sun/text/resources/pl/FormatData_pl.java \ + sun/text/resources/pl/FormatData_pl_PL.java \ + sun/text/resources/pt/FormatData_pt.java \ + sun/text/resources/pt/FormatData_pt_BR.java \ + sun/text/resources/pt/FormatData_pt_PT.java \ + sun/text/resources/ro/FormatData_ro.java \ + sun/text/resources/ro/FormatData_ro_RO.java \ + sun/text/resources/ru/FormatData_ru.java \ + sun/text/resources/ru/FormatData_ru_RU.java \ + sun/text/resources/sk/FormatData_sk.java \ + sun/text/resources/sk/FormatData_sk_SK.java \ + sun/text/resources/sl/FormatData_sl.java \ + sun/text/resources/sl/FormatData_sl_SI.java \ + sun/text/resources/sq/FormatData_sq.java \ + sun/text/resources/sq/FormatData_sq_AL.java \ + sun/text/resources/sr/FormatData_sr.java \ + sun/text/resources/sr/FormatData_sr_BA.java \ + sun/text/resources/sr/FormatData_sr_CS.java \ + sun/text/resources/sr/FormatData_sr_ME.java \ + sun/text/resources/sr/FormatData_sr_RS.java \ + sun/text/resources/sr/FormatData_sr_Latn.java \ + sun/text/resources/sr/FormatData_sr_Latn_ME.java \ + sun/text/resources/sv/FormatData_sv.java \ + sun/text/resources/sv/FormatData_sv_SE.java \ + sun/text/resources/tr/FormatData_tr.java \ + sun/text/resources/tr/FormatData_tr_TR.java \ + sun/text/resources/uk/FormatData_uk.java \ + sun/text/resources/uk/FormatData_uk_UA.java
--- a/make/java/util/FILES_java.gmk Tue Aug 21 13:42:08 2012 +0100 +++ b/make/java/util/FILES_java.gmk Tue Aug 21 11:00:30 2012 -0700 @@ -1,5 +1,5 @@ # -# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it @@ -29,13 +29,13 @@ sun/util/resources/LocaleNamesBundle.java \ sun/util/resources/TimeZoneNamesBundle.java \ sun/util/resources/TimeZoneNames.java \ - sun/util/resources/TimeZoneNames_de.java \ - sun/util/resources/TimeZoneNames_en.java \ - sun/util/resources/TimeZoneNames_en_CA.java \ - sun/util/resources/TimeZoneNames_en_GB.java \ - sun/util/resources/TimeZoneNames_en_IE.java \ - sun/util/resources/TimeZoneNames_es.java \ - sun/util/resources/TimeZoneNames_fr.java \ - sun/util/resources/TimeZoneNames_it.java \ - sun/util/resources/TimeZoneNames_pt_BR.java \ - sun/util/resources/TimeZoneNames_sv.java + sun/util/resources/de/TimeZoneNames_de.java \ + sun/util/resources/en/TimeZoneNames_en.java \ + sun/util/resources/en/TimeZoneNames_en_CA.java \ + sun/util/resources/en/TimeZoneNames_en_GB.java \ + sun/util/resources/en/TimeZoneNames_en_IE.java \ + sun/util/resources/es/TimeZoneNames_es.java \ + sun/util/resources/fr/TimeZoneNames_fr.java \ + sun/util/resources/it/TimeZoneNames_it.java \ + sun/util/resources/pt/TimeZoneNames_pt_BR.java \ + sun/util/resources/sv/TimeZoneNames_sv.java
--- a/make/java/util/FILES_properties.gmk Tue Aug 21 13:42:08 2012 +0100 +++ b/make/java/util/FILES_properties.gmk Tue Aug 21 11:00:30 2012 -0700 @@ -1,5 +1,5 @@ # -# Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it @@ -25,189 +25,189 @@ FILES_compiled_properties = \ sun/util/resources/LocaleNames.properties \ - sun/util/resources/LocaleNames_be.properties \ - sun/util/resources/LocaleNames_bg.properties \ - sun/util/resources/LocaleNames_ca.properties \ - sun/util/resources/LocaleNames_cs.properties \ - sun/util/resources/LocaleNames_da.properties \ - sun/util/resources/LocaleNames_de.properties \ - sun/util/resources/LocaleNames_el.properties \ - sun/util/resources/LocaleNames_el_CY.properties \ - sun/util/resources/LocaleNames_en.properties \ - sun/util/resources/LocaleNames_en_MT.properties \ - sun/util/resources/LocaleNames_en_PH.properties \ - sun/util/resources/LocaleNames_en_SG.properties \ - sun/util/resources/LocaleNames_es.properties \ - sun/util/resources/LocaleNames_es_US.properties \ - sun/util/resources/LocaleNames_et.properties \ - sun/util/resources/LocaleNames_fi.properties \ - sun/util/resources/LocaleNames_fr.properties \ - sun/util/resources/LocaleNames_ga.properties \ - sun/util/resources/LocaleNames_hr.properties \ - sun/util/resources/LocaleNames_hu.properties \ - sun/util/resources/LocaleNames_in.properties \ - sun/util/resources/LocaleNames_is.properties \ - sun/util/resources/LocaleNames_it.properties \ - sun/util/resources/LocaleNames_lt.properties \ - sun/util/resources/LocaleNames_lv.properties \ - sun/util/resources/LocaleNames_mk.properties \ - sun/util/resources/LocaleNames_ms.properties \ - sun/util/resources/LocaleNames_mt.properties \ - sun/util/resources/LocaleNames_nl.properties \ - sun/util/resources/LocaleNames_no.properties \ - sun/util/resources/LocaleNames_no_NO_NY.properties \ - sun/util/resources/LocaleNames_pl.properties \ - sun/util/resources/LocaleNames_pt.properties \ - sun/util/resources/LocaleNames_pt_BR.properties \ - sun/util/resources/LocaleNames_pt_PT.properties \ - sun/util/resources/LocaleNames_ro.properties \ - sun/util/resources/LocaleNames_ru.properties \ - sun/util/resources/LocaleNames_sk.properties \ - sun/util/resources/LocaleNames_sl.properties \ - sun/util/resources/LocaleNames_sq.properties \ - sun/util/resources/LocaleNames_sr.properties \ - sun/util/resources/LocaleNames_sr_Latn.properties \ - sun/util/resources/LocaleNames_sv.properties \ - sun/util/resources/LocaleNames_tr.properties \ - sun/util/resources/LocaleNames_uk.properties \ + sun/util/resources/be/LocaleNames_be.properties \ + sun/util/resources/bg/LocaleNames_bg.properties \ + sun/util/resources/ca/LocaleNames_ca.properties \ + sun/util/resources/cs/LocaleNames_cs.properties \ + sun/util/resources/da/LocaleNames_da.properties \ + sun/util/resources/de/LocaleNames_de.properties \ + sun/util/resources/el/LocaleNames_el.properties \ + sun/util/resources/el/LocaleNames_el_CY.properties \ + sun/util/resources/en/LocaleNames_en.properties \ + sun/util/resources/en/LocaleNames_en_MT.properties \ + sun/util/resources/en/LocaleNames_en_PH.properties \ + sun/util/resources/en/LocaleNames_en_SG.properties \ + sun/util/resources/es/LocaleNames_es.properties \ + sun/util/resources/es/LocaleNames_es_US.properties \ + sun/util/resources/et/LocaleNames_et.properties \ + sun/util/resources/fi/LocaleNames_fi.properties \ + sun/util/resources/fr/LocaleNames_fr.properties \ + sun/util/resources/ga/LocaleNames_ga.properties \ + sun/util/resources/hr/LocaleNames_hr.properties \ + sun/util/resources/hu/LocaleNames_hu.properties \ + sun/util/resources/in/LocaleNames_in.properties \ + sun/util/resources/is/LocaleNames_is.properties \ + sun/util/resources/it/LocaleNames_it.properties \ + sun/util/resources/lt/LocaleNames_lt.properties \ + sun/util/resources/lv/LocaleNames_lv.properties \ + sun/util/resources/mk/LocaleNames_mk.properties \ + sun/util/resources/ms/LocaleNames_ms.properties \ + sun/util/resources/mt/LocaleNames_mt.properties \ + sun/util/resources/nl/LocaleNames_nl.properties \ + sun/util/resources/no/LocaleNames_no.properties \ + sun/util/resources/no/LocaleNames_no_NO_NY.properties \ + sun/util/resources/pl/LocaleNames_pl.properties \ + sun/util/resources/pt/LocaleNames_pt.properties \ + sun/util/resources/pt/LocaleNames_pt_BR.properties \ + sun/util/resources/pt/LocaleNames_pt_PT.properties \ + sun/util/resources/ro/LocaleNames_ro.properties \ + sun/util/resources/ru/LocaleNames_ru.properties \ + sun/util/resources/sk/LocaleNames_sk.properties \ + sun/util/resources/sl/LocaleNames_sl.properties \ + sun/util/resources/sq/LocaleNames_sq.properties \ + sun/util/resources/sr/LocaleNames_sr.properties \ + sun/util/resources/sr/LocaleNames_sr_Latn.properties \ + sun/util/resources/sv/LocaleNames_sv.properties \ + sun/util/resources/tr/LocaleNames_tr.properties \ + sun/util/resources/uk/LocaleNames_uk.properties \ \ sun/util/resources/CalendarData.properties \ - sun/util/resources/CalendarData_be.properties \ - sun/util/resources/CalendarData_bg.properties \ - sun/util/resources/CalendarData_ca.properties \ - sun/util/resources/CalendarData_cs.properties \ - sun/util/resources/CalendarData_da.properties \ - sun/util/resources/CalendarData_de.properties \ - sun/util/resources/CalendarData_el.properties \ - sun/util/resources/CalendarData_el_CY.properties \ - sun/util/resources/CalendarData_en.properties \ - sun/util/resources/CalendarData_en_GB.properties \ - sun/util/resources/CalendarData_en_IE.properties \ - sun/util/resources/CalendarData_en_MT.properties \ - sun/util/resources/CalendarData_es.properties \ - sun/util/resources/CalendarData_es_ES.properties \ - sun/util/resources/CalendarData_es_US.properties \ - sun/util/resources/CalendarData_et.properties \ - sun/util/resources/CalendarData_fi.properties \ - sun/util/resources/CalendarData_fr.properties \ - sun/util/resources/CalendarData_fr_CA.properties \ - sun/util/resources/CalendarData_hr.properties \ - sun/util/resources/CalendarData_hu.properties \ - sun/util/resources/CalendarData_in_ID.properties \ - sun/util/resources/CalendarData_is.properties \ - sun/util/resources/CalendarData_it.properties \ - sun/util/resources/CalendarData_lt.properties \ - sun/util/resources/CalendarData_lv.properties \ - sun/util/resources/CalendarData_mk.properties \ - sun/util/resources/CalendarData_ms_MY.properties \ - sun/util/resources/CalendarData_mt.properties \ - sun/util/resources/CalendarData_mt_MT.properties \ - sun/util/resources/CalendarData_nl.properties \ - sun/util/resources/CalendarData_no.properties \ - sun/util/resources/CalendarData_pl.properties \ - sun/util/resources/CalendarData_pt.properties \ - sun/util/resources/CalendarData_pt_PT.properties \ - sun/util/resources/CalendarData_ro.properties \ - sun/util/resources/CalendarData_ru.properties \ - sun/util/resources/CalendarData_sk.properties \ - sun/util/resources/CalendarData_sl.properties \ - sun/util/resources/CalendarData_sq.properties \ - sun/util/resources/CalendarData_sr.properties \ - sun/util/resources/CalendarData_sr_Latn_BA.properties \ - sun/util/resources/CalendarData_sr_Latn_ME.properties \ - sun/util/resources/CalendarData_sr_Latn_RS.properties \ - sun/util/resources/CalendarData_sv.properties \ - sun/util/resources/CalendarData_tr.properties \ - sun/util/resources/CalendarData_uk.properties \ + sun/util/resources/be/CalendarData_be.properties \ + sun/util/resources/bg/CalendarData_bg.properties \ + sun/util/resources/ca/CalendarData_ca.properties \ + sun/util/resources/cs/CalendarData_cs.properties \ + sun/util/resources/da/CalendarData_da.properties \ + sun/util/resources/de/CalendarData_de.properties \ + sun/util/resources/el/CalendarData_el.properties \ + sun/util/resources/el/CalendarData_el_CY.properties \ + sun/util/resources/en/CalendarData_en.properties \ + sun/util/resources/en/CalendarData_en_GB.properties \ + sun/util/resources/en/CalendarData_en_IE.properties \ + sun/util/resources/en/CalendarData_en_MT.properties \ + sun/util/resources/es/CalendarData_es.properties \ + sun/util/resources/es/CalendarData_es_ES.properties \ + sun/util/resources/es/CalendarData_es_US.properties \ + sun/util/resources/et/CalendarData_et.properties \ + sun/util/resources/fi/CalendarData_fi.properties \ + sun/util/resources/fr/CalendarData_fr.properties \ + sun/util/resources/fr/CalendarData_fr_CA.properties \ + sun/util/resources/hr/CalendarData_hr.properties \ + sun/util/resources/hu/CalendarData_hu.properties \ + sun/util/resources/in/CalendarData_in_ID.properties \ + sun/util/resources/is/CalendarData_is.properties \ + sun/util/resources/it/CalendarData_it.properties \ + sun/util/resources/lt/CalendarData_lt.properties \ + sun/util/resources/lv/CalendarData_lv.properties \ + sun/util/resources/mk/CalendarData_mk.properties \ + sun/util/resources/ms/CalendarData_ms_MY.properties \ + sun/util/resources/mt/CalendarData_mt.properties \ + sun/util/resources/mt/CalendarData_mt_MT.properties \ + sun/util/resources/nl/CalendarData_nl.properties \ + sun/util/resources/no/CalendarData_no.properties \ + sun/util/resources/pl/CalendarData_pl.properties \ + sun/util/resources/pt/CalendarData_pt.properties \ + sun/util/resources/pt/CalendarData_pt_PT.properties \ + sun/util/resources/ro/CalendarData_ro.properties \ + sun/util/resources/ru/CalendarData_ru.properties \ + sun/util/resources/sk/CalendarData_sk.properties \ + sun/util/resources/sl/CalendarData_sl.properties \ + sun/util/resources/sq/CalendarData_sq.properties \ + sun/util/resources/sr/CalendarData_sr.properties \ + sun/util/resources/sr/CalendarData_sr_Latn_BA.properties \ + sun/util/resources/sr/CalendarData_sr_Latn_ME.properties \ + sun/util/resources/sr/CalendarData_sr_Latn_RS.properties \ + sun/util/resources/sv/CalendarData_sv.properties \ + sun/util/resources/tr/CalendarData_tr.properties \ + sun/util/resources/uk/CalendarData_uk.properties \ \ sun/util/resources/CurrencyNames.properties \ - sun/util/resources/CurrencyNames_be_BY.properties \ - sun/util/resources/CurrencyNames_bg_BG.properties \ - sun/util/resources/CurrencyNames_ca_ES.properties \ - sun/util/resources/CurrencyNames_cs_CZ.properties \ - sun/util/resources/CurrencyNames_da_DK.properties \ - sun/util/resources/CurrencyNames_de.properties \ - sun/util/resources/CurrencyNames_de_AT.properties \ - sun/util/resources/CurrencyNames_de_CH.properties \ - sun/util/resources/CurrencyNames_de_DE.properties \ - sun/util/resources/CurrencyNames_de_GR.properties \ - sun/util/resources/CurrencyNames_de_LU.properties \ - sun/util/resources/CurrencyNames_el_CY.properties \ - sun/util/resources/CurrencyNames_el_GR.properties \ - sun/util/resources/CurrencyNames_en_AU.properties \ - sun/util/resources/CurrencyNames_en_CA.properties \ - sun/util/resources/CurrencyNames_en_GB.properties \ - sun/util/resources/CurrencyNames_en_IE.properties \ - sun/util/resources/CurrencyNames_en_IN.properties \ - sun/util/resources/CurrencyNames_en_MT.properties \ - sun/util/resources/CurrencyNames_en_NZ.properties \ - sun/util/resources/CurrencyNames_en_PH.properties \ - sun/util/resources/CurrencyNames_en_SG.properties \ - sun/util/resources/CurrencyNames_en_US.properties \ - sun/util/resources/CurrencyNames_en_ZA.properties \ - sun/util/resources/CurrencyNames_es.properties \ - sun/util/resources/CurrencyNames_es_AR.properties \ - sun/util/resources/CurrencyNames_es_BO.properties \ - sun/util/resources/CurrencyNames_es_CL.properties \ - sun/util/resources/CurrencyNames_es_CO.properties \ - sun/util/resources/CurrencyNames_es_CR.properties \ - sun/util/resources/CurrencyNames_es_CU.properties \ - sun/util/resources/CurrencyNames_es_DO.properties \ - sun/util/resources/CurrencyNames_es_EC.properties \ - sun/util/resources/CurrencyNames_es_ES.properties \ - sun/util/resources/CurrencyNames_es_GT.properties \ - sun/util/resources/CurrencyNames_es_HN.properties \ - sun/util/resources/CurrencyNames_es_MX.properties \ - sun/util/resources/CurrencyNames_es_NI.properties \ - sun/util/resources/CurrencyNames_es_PA.properties \ - sun/util/resources/CurrencyNames_es_PE.properties \ - sun/util/resources/CurrencyNames_es_PR.properties \ - sun/util/resources/CurrencyNames_es_PY.properties \ - sun/util/resources/CurrencyNames_es_SV.properties \ - sun/util/resources/CurrencyNames_es_US.properties \ - sun/util/resources/CurrencyNames_es_UY.properties \ - sun/util/resources/CurrencyNames_es_VE.properties \ - sun/util/resources/CurrencyNames_et_EE.properties \ - sun/util/resources/CurrencyNames_fi_FI.properties \ - sun/util/resources/CurrencyNames_fr.properties \ - sun/util/resources/CurrencyNames_fr_BE.properties \ - sun/util/resources/CurrencyNames_fr_CA.properties \ - sun/util/resources/CurrencyNames_fr_CH.properties \ - sun/util/resources/CurrencyNames_fr_FR.properties \ - sun/util/resources/CurrencyNames_fr_LU.properties \ - sun/util/resources/CurrencyNames_ga_IE.properties \ - sun/util/resources/CurrencyNames_hr_HR.properties \ - sun/util/resources/CurrencyNames_hu_HU.properties \ - sun/util/resources/CurrencyNames_in_ID.properties \ - sun/util/resources/CurrencyNames_is_IS.properties \ - sun/util/resources/CurrencyNames_it.properties \ - sun/util/resources/CurrencyNames_it_CH.properties \ - sun/util/resources/CurrencyNames_it_IT.properties \ - sun/util/resources/CurrencyNames_lt_LT.properties \ - sun/util/resources/CurrencyNames_lv_LV.properties \ - sun/util/resources/CurrencyNames_mk_MK.properties \ - sun/util/resources/CurrencyNames_ms_MY.properties \ - sun/util/resources/CurrencyNames_mt_MT.properties \ - sun/util/resources/CurrencyNames_nl_BE.properties \ - sun/util/resources/CurrencyNames_nl_NL.properties \ - sun/util/resources/CurrencyNames_no_NO.properties \ - sun/util/resources/CurrencyNames_pl_PL.properties \ - sun/util/resources/CurrencyNames_pt.properties \ - sun/util/resources/CurrencyNames_pt_BR.properties \ - sun/util/resources/CurrencyNames_pt_PT.properties \ - sun/util/resources/CurrencyNames_ro_RO.properties \ - sun/util/resources/CurrencyNames_ru_RU.properties \ - sun/util/resources/CurrencyNames_sk_SK.properties \ - sun/util/resources/CurrencyNames_sl_SI.properties \ - sun/util/resources/CurrencyNames_sq_AL.properties \ - sun/util/resources/CurrencyNames_sr_BA.properties \ - sun/util/resources/CurrencyNames_sr_CS.properties \ - sun/util/resources/CurrencyNames_sr_ME.properties \ - sun/util/resources/CurrencyNames_sr_RS.properties \ - sun/util/resources/CurrencyNames_sr_Latn_BA.properties \ - sun/util/resources/CurrencyNames_sr_Latn_ME.properties \ - sun/util/resources/CurrencyNames_sr_Latn_RS.properties \ - sun/util/resources/CurrencyNames_sv.properties \ - sun/util/resources/CurrencyNames_sv_SE.properties \ - sun/util/resources/CurrencyNames_tr_TR.properties \ - sun/util/resources/CurrencyNames_uk_UA.properties + sun/util/resources/be/CurrencyNames_be_BY.properties \ + sun/util/resources/bg/CurrencyNames_bg_BG.properties \ + sun/util/resources/ca/CurrencyNames_ca_ES.properties \ + sun/util/resources/cs/CurrencyNames_cs_CZ.properties \ + sun/util/resources/da/CurrencyNames_da_DK.properties \ + sun/util/resources/de/CurrencyNames_de.properties \ + sun/util/resources/de/CurrencyNames_de_AT.properties \ + sun/util/resources/de/CurrencyNames_de_CH.properties \ + sun/util/resources/de/CurrencyNames_de_DE.properties \ + sun/util/resources/de/CurrencyNames_de_GR.properties \ + sun/util/resources/de/CurrencyNames_de_LU.properties \ + sun/util/resources/el/CurrencyNames_el_CY.properties \ + sun/util/resources/el/CurrencyNames_el_GR.properties \ + sun/util/resources/en/CurrencyNames_en_AU.properties \ + sun/util/resources/en/CurrencyNames_en_CA.properties \ + sun/util/resources/en/CurrencyNames_en_GB.properties \ + sun/util/resources/en/CurrencyNames_en_IE.properties \ + sun/util/resources/en/CurrencyNames_en_IN.properties \ + sun/util/resources/en/CurrencyNames_en_MT.properties \ + sun/util/resources/en/CurrencyNames_en_NZ.properties \ + sun/util/resources/en/CurrencyNames_en_PH.properties \ + sun/util/resources/en/CurrencyNames_en_SG.properties \ + sun/util/resources/en/CurrencyNames_en_US.properties \ + sun/util/resources/en/CurrencyNames_en_ZA.properties \ + sun/util/resources/es/CurrencyNames_es.properties \ + sun/util/resources/es/CurrencyNames_es_AR.properties \ + sun/util/resources/es/CurrencyNames_es_BO.properties \ + sun/util/resources/es/CurrencyNames_es_CL.properties \ + sun/util/resources/es/CurrencyNames_es_CO.properties \ + sun/util/resources/es/CurrencyNames_es_CR.properties \ + sun/util/resources/es/CurrencyNames_es_CU.properties \ + sun/util/resources/es/CurrencyNames_es_DO.properties \ + sun/util/resources/es/CurrencyNames_es_EC.properties \ + sun/util/resources/es/CurrencyNames_es_ES.properties \ + sun/util/resources/es/CurrencyNames_es_GT.properties \ + sun/util/resources/es/CurrencyNames_es_HN.properties \ + sun/util/resources/es/CurrencyNames_es_MX.properties \ + sun/util/resources/es/CurrencyNames_es_NI.properties \ + sun/util/resources/es/CurrencyNames_es_PA.properties \ + sun/util/resources/es/CurrencyNames_es_PE.properties \ + sun/util/resources/es/CurrencyNames_es_PR.properties \ + sun/util/resources/es/CurrencyNames_es_PY.properties \ + sun/util/resources/es/CurrencyNames_es_SV.properties \ + sun/util/resources/es/CurrencyNames_es_US.properties \ + sun/util/resources/es/CurrencyNames_es_UY.properties \ + sun/util/resources/es/CurrencyNames_es_VE.properties \ + sun/util/resources/et/CurrencyNames_et_EE.properties \ + sun/util/resources/fi/CurrencyNames_fi_FI.properties \ + sun/util/resources/fr/CurrencyNames_fr.properties \ + sun/util/resources/fr/CurrencyNames_fr_BE.properties \ + sun/util/resources/fr/CurrencyNames_fr_CA.properties \ + sun/util/resources/fr/CurrencyNames_fr_CH.properties \ + sun/util/resources/fr/CurrencyNames_fr_FR.properties \ + sun/util/resources/fr/CurrencyNames_fr_LU.properties \ + sun/util/resources/ga/CurrencyNames_ga_IE.properties \ + sun/util/resources/hr/CurrencyNames_hr_HR.properties \ + sun/util/resources/hu/CurrencyNames_hu_HU.properties \ + sun/util/resources/in/CurrencyNames_in_ID.properties \ + sun/util/resources/is/CurrencyNames_is_IS.properties \ + sun/util/resources/it/CurrencyNames_it.properties \ + sun/util/resources/it/CurrencyNames_it_CH.properties \ + sun/util/resources/it/CurrencyNames_it_IT.properties \ + sun/util/resources/lt/CurrencyNames_lt_LT.properties \ + sun/util/resources/lv/CurrencyNames_lv_LV.properties \ + sun/util/resources/mk/CurrencyNames_mk_MK.properties \ + sun/util/resources/ms/CurrencyNames_ms_MY.properties \ + sun/util/resources/mt/CurrencyNames_mt_MT.properties \ + sun/util/resources/nl/CurrencyNames_nl_BE.properties \ + sun/util/resources/nl/CurrencyNames_nl_NL.properties \ + sun/util/resources/no/CurrencyNames_no_NO.properties \ + sun/util/resources/pl/CurrencyNames_pl_PL.properties \ + sun/util/resources/pt/CurrencyNames_pt.properties \ + sun/util/resources/pt/CurrencyNames_pt_BR.properties \ + sun/util/resources/pt/CurrencyNames_pt_PT.properties \ + sun/util/resources/ro/CurrencyNames_ro_RO.properties \ + sun/util/resources/ru/CurrencyNames_ru_RU.properties \ + sun/util/resources/sk/CurrencyNames_sk_SK.properties \ + sun/util/resources/sl/CurrencyNames_sl_SI.properties \ + sun/util/resources/sq/CurrencyNames_sq_AL.properties \ + sun/util/resources/sr/CurrencyNames_sr_BA.properties \ + sun/util/resources/sr/CurrencyNames_sr_CS.properties \ + sun/util/resources/sr/CurrencyNames_sr_ME.properties \ + sun/util/resources/sr/CurrencyNames_sr_RS.properties \ + sun/util/resources/sr/CurrencyNames_sr_Latn_BA.properties \ + sun/util/resources/sr/CurrencyNames_sr_Latn_ME.properties \ + sun/util/resources/sr/CurrencyNames_sr_Latn_RS.properties \ + sun/util/resources/sv/CurrencyNames_sv.properties \ + sun/util/resources/sv/CurrencyNames_sv_SE.properties \ + sun/util/resources/tr/CurrencyNames_tr_TR.properties \ + sun/util/resources/uk/CurrencyNames_uk_UA.properties
--- a/make/java/util/Makefile Tue Aug 21 13:42:08 2012 +0100 +++ b/make/java/util/Makefile Tue Aug 21 11:00:30 2012 -0700 @@ -1,5 +1,5 @@ # -# Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it @@ -50,7 +50,7 @@ # # Compile properties # -COMPILED_PROPERTIES_SUPERCLASS=LocaleNamesBundle +COMPILED_PROPERTIES_SUPERCLASS=sun.util.resources.LocaleNamesBundle # # Include
--- a/make/sun/Makefile Tue Aug 21 13:42:08 2012 +0100 +++ b/make/sun/Makefile Tue Aug 21 11:00:30 2012 -0700 @@ -76,7 +76,7 @@ endif # nio need to be compiled before awt to have all charsets ready -SUBDIRS = jar security javazic misc net nio text util launcher +SUBDIRS = jar security javazic misc net nio text util launcher cldr ifdef BUILD_HEADLESS_ONLY DISPLAY_LIBS = awt $(HEADLESS_SUBDIR)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/make/sun/cldr/Makefile Tue Aug 21 11:00:30 2012 -0700 @@ -0,0 +1,107 @@ +# +# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# This code is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License version 2 only, as +# published by the Free Software Foundation. Oracle designates this +# particular file as subject to the "Classpath" exception as provided +# by Oracle in the LICENSE file that accompanied this code. +# +# This code is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# version 2 for more details (a copy is included in the LICENSE file that +# accompanied this code). +# +# You should have received a copy of the GNU General Public License version +# 2 along with this work; if not, write to the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. +# +# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA +# or visit www.oracle.com if you need additional information or have any +# questions. +# + +# +# Makefile for CLDR locale data. +# + +BUILDDIR = ../.. + +PACKAGE = sun.text.resources.cldr +PRODUCT = sun +JAVAC_MAX_WARNINGS = true +JAVAC_WARNINGS_FATAL = true + +include $(BUILDDIR)/common/Defs.gmk + +# Re-direct classes to another location (we are building cldrdata.jar) +CLASSDESTDIR = $(TEMPDIR)/classes +CLDRVERSION = 21.0.1 +CLDRSRCDIR = $(SHARE_SRC)/classes/sun/util/cldr/resources/$(subst .,_,$(CLDRVERSION)) +CLDRDATA_JAR = $(EXTDIR)/cldrdata.jar +CLDRCONVERTER_JAR = $(BUILDTOOLJARDIR)/cldrconverter.jar + +# +# Files +# +CLDRGENSRCDIR = $(GENSRCDIR)/sun/text/resources/cldr \ + $(GENSRCDIR)/sun/util/cldr \ + $(GENSRCDIR)/sun/util/resources/cldr +MANIFEST_FILE = $(TEMPDIR)/manifest.mf + +# +# Rules +# +include $(BUILDDIR)/common/Classes.gmk + +gensrc: $(GENSRCDIR)/sun/util/cldr/CLDRLocaleDataMetaInfo.java + +$(GENSRCDIR)/sun/util/cldr/CLDRLocaleDataMetaInfo.java: \ + $(wildcard $(CLDRSRCDIR)/common/dtd/*.dtd) \ + $(wildcard $(CLDRSRCDIR)/common/main/*.xml) \ + $(wildcard $(CLDRSRCDIR)/common/supplemental/*.xml) + $(prep-target) + @$(BOOT_JAVA_CMD) -jar $(CLDRCONVERTER_JAR) \ + -base $(CLDRSRCDIR) \ + -o $(GENSRCDIR) + @$(java-vm-cleanup) + +$(CLDRDATA_JAR): $(EXTDIR) $(GENSRCDIR)/sun/util/cldr/CLDRLocaleDataMetaInfo.java $(MANIFEST_FILE) + $(prep-target) + $(MKDIR) -p $(CLASSDESTDIR) + $(shell \ + for dir in $(GENSRCDIR); do \ + if [ -d $$dir ] ; then \ + ( $(CD) $$dir; \ + for sdir in $(CLDRGENSRCDIR); do \ + if [ -d $$sdir ] ; then \ + $(FIND) $$sdir \ + -name '*.java' -print >> $(JAVA_SOURCE_LIST) ; \ + fi ; \ + done \ + ); \ + fi; \ + done \ + ) + $(JAVAC_CMD) -sourcepath "$(SOURCEPATH)" -d $(CLASSDESTDIR) @$(JAVA_SOURCE_LIST) + $(BOOT_JAR_CMD) -cmf $(MANIFEST_FILE) $@ -C $(CLASSDESTDIR) sun \ + $(BOOT_JAR_JFLAGS) + @$(java-vm-cleanup) + +$(MANIFEST_FILE): + @$(prep-target) + $(ECHO) "CLDR-Version: $(CLDRVERSION)" > $@ + +build: gensrc $(CLDRDATA_JAR) + +clean clobber:: + $(RM) -r $(CLASSDESTDIR) + $(RM) -r $(GENSRCDIR)/sun/text/resources/cldr + $(RM) -r $(GENSRCDIR)/sun/util/cldr + $(RM) -r $(GENSRCDIR)/sun/util/resources/cldr + $(RM) $(MANIFEST_FILE) + $(RM) $(CLDRDATA_JAR) + +.PHONY: gensrc
--- a/make/sun/text/FILES_java.gmk Tue Aug 21 13:42:08 2012 +0100 +++ b/make/sun/text/FILES_java.gmk Tue Aug 21 11:00:30 2012 -0700 @@ -1,5 +1,5 @@ # -# Copyright (c) 1997, 2006, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it @@ -33,63 +33,47 @@ # FILES_java = \ - sun/text/resources/BreakIteratorInfo_th.java \ + sun/text/resources/th/BreakIteratorInfo_th.java \ \ - sun/text/resources/CollationData_ar.java \ - sun/text/resources/CollationData_hi.java \ - sun/text/resources/CollationData_iw.java \ - sun/text/resources/CollationData_ja.java \ - sun/text/resources/CollationData_ko.java \ - sun/text/resources/CollationData_th.java \ - sun/text/resources/CollationData_vi.java \ - sun/text/resources/CollationData_zh.java \ - sun/text/resources/CollationData_zh_HK.java \ - sun/text/resources/CollationData_zh_TW.java \ + sun/text/resources/ar/CollationData_ar.java \ + sun/text/resources/hi/CollationData_hi.java \ + sun/text/resources/iw/CollationData_iw.java \ + sun/text/resources/ja/CollationData_ja.java \ + sun/text/resources/ko/CollationData_ko.java \ + sun/text/resources/th/CollationData_th.java \ + sun/text/resources/vi/CollationData_vi.java \ + sun/text/resources/zh/CollationData_zh.java \ + sun/text/resources/zh/CollationData_zh_HK.java \ + sun/text/resources/zh/CollationData_zh_TW.java \ \ - sun/text/resources/FormatData_ar.java \ - sun/text/resources/FormatData_ar_AE.java \ - sun/text/resources/FormatData_ar_BH.java \ - sun/text/resources/FormatData_ar_DZ.java \ - sun/text/resources/FormatData_ar_EG.java \ - sun/text/resources/FormatData_ar_IQ.java \ - sun/text/resources/FormatData_ar_JO.java \ - sun/text/resources/FormatData_ar_KW.java \ - sun/text/resources/FormatData_ar_LB.java \ - sun/text/resources/FormatData_ar_LY.java \ - sun/text/resources/FormatData_ar_MA.java \ - sun/text/resources/FormatData_ar_OM.java \ - sun/text/resources/FormatData_ar_QA.java \ - sun/text/resources/FormatData_ar_SA.java \ - sun/text/resources/FormatData_ar_SD.java \ - sun/text/resources/FormatData_ar_SY.java \ - sun/text/resources/FormatData_ar_TN.java \ - sun/text/resources/FormatData_ar_YE.java \ - sun/text/resources/FormatData_hi_IN.java \ - sun/text/resources/FormatData_iw.java \ - sun/text/resources/FormatData_iw_IL.java \ - sun/text/resources/FormatData_ja.java \ - sun/text/resources/FormatData_ja_JP.java \ - sun/text/resources/FormatData_ja_JP_JP.java \ - sun/text/resources/FormatData_ko.java \ - sun/text/resources/FormatData_ko_KR.java \ - sun/text/resources/FormatData_th.java \ - sun/text/resources/FormatData_th_TH.java \ - sun/text/resources/FormatData_th_TH_TH.java \ - sun/text/resources/FormatData_vi.java \ - sun/text/resources/FormatData_vi_VN.java \ - sun/text/resources/FormatData_zh.java \ - sun/text/resources/FormatData_zh_CN.java \ - sun/text/resources/FormatData_zh_HK.java \ - sun/text/resources/FormatData_zh_SG.java \ - sun/text/resources/FormatData_zh_TW.java \ + sun/text/resources/ar/FormatData_ar.java \ + sun/text/resources/ar/FormatData_ar_JO.java \ + sun/text/resources/ar/FormatData_ar_LB.java \ + sun/text/resources/ar/FormatData_ar_SY.java \ + sun/text/resources/hi/FormatData_hi_IN.java \ + sun/text/resources/iw/FormatData_iw.java \ + sun/text/resources/iw/FormatData_iw_IL.java \ + sun/text/resources/ja/FormatData_ja.java \ + sun/text/resources/ja/FormatData_ja_JP.java \ + sun/text/resources/ko/FormatData_ko.java \ + sun/text/resources/ko/FormatData_ko_KR.java \ + sun/text/resources/th/FormatData_th.java \ + sun/text/resources/th/FormatData_th_TH.java \ + sun/text/resources/vi/FormatData_vi.java \ + sun/text/resources/vi/FormatData_vi_VN.java \ + sun/text/resources/zh/FormatData_zh.java \ + sun/text/resources/zh/FormatData_zh_CN.java \ + sun/text/resources/zh/FormatData_zh_HK.java \ + sun/text/resources/zh/FormatData_zh_SG.java \ + sun/text/resources/zh/FormatData_zh_TW.java \ \ - sun/util/resources/CurrencyNames_zh_HK.java \ - sun/util/resources/CurrencyNames_zh_SG.java \ - sun/util/resources/LocaleNames_zh_HK.java \ - sun/util/resources/TimeZoneNames_hi.java \ - sun/util/resources/TimeZoneNames_ja.java \ - sun/util/resources/TimeZoneNames_ko.java \ - sun/util/resources/TimeZoneNames_zh_CN.java \ - sun/util/resources/TimeZoneNames_zh_TW.java \ - sun/util/resources/TimeZoneNames_zh_HK.java + sun/util/resources/zh/CurrencyNames_zh_HK.java \ + sun/util/resources/zh/CurrencyNames_zh_SG.java \ + sun/util/resources/zh/LocaleNames_zh_HK.java \ + sun/util/resources/hi/TimeZoneNames_hi.java \ + sun/util/resources/ja/TimeZoneNames_ja.java \ + sun/util/resources/ko/TimeZoneNames_ko.java \ + sun/util/resources/zh/TimeZoneNames_zh_CN.java \ + sun/util/resources/zh/TimeZoneNames_zh_TW.java \ + sun/util/resources/zh/TimeZoneNames_zh_HK.java
--- a/make/sun/text/FILES_properties.gmk Tue Aug 21 13:42:08 2012 +0100 +++ b/make/sun/text/FILES_properties.gmk Tue Aug 21 11:00:30 2012 -0700 @@ -1,5 +1,5 @@ # -# Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it @@ -24,50 +24,50 @@ # FILES_compiled_properties = \ - sun/util/resources/LocaleNames_ar.properties \ - sun/util/resources/LocaleNames_hi.properties \ - sun/util/resources/LocaleNames_iw.properties \ - sun/util/resources/LocaleNames_ja.properties \ - sun/util/resources/LocaleNames_ko.properties \ - sun/util/resources/LocaleNames_th.properties \ - sun/util/resources/LocaleNames_vi.properties \ - sun/util/resources/LocaleNames_zh.properties \ - sun/util/resources/LocaleNames_zh_SG.properties \ - sun/util/resources/LocaleNames_zh_TW.properties \ + sun/util/resources/ar/LocaleNames_ar.properties \ + sun/util/resources/hi/LocaleNames_hi.properties \ + sun/util/resources/iw/LocaleNames_iw.properties \ + sun/util/resources/ja/LocaleNames_ja.properties \ + sun/util/resources/ko/LocaleNames_ko.properties \ + sun/util/resources/th/LocaleNames_th.properties \ + sun/util/resources/vi/LocaleNames_vi.properties \ + sun/util/resources/zh/LocaleNames_zh.properties \ + sun/util/resources/zh/LocaleNames_zh_SG.properties \ + sun/util/resources/zh/LocaleNames_zh_TW.properties \ \ - sun/util/resources/CalendarData_ar.properties \ - sun/util/resources/CalendarData_hi.properties \ - sun/util/resources/CalendarData_iw.properties \ - sun/util/resources/CalendarData_ja.properties \ - sun/util/resources/CalendarData_ko.properties \ - sun/util/resources/CalendarData_th.properties \ - sun/util/resources/CalendarData_vi.properties \ - sun/util/resources/CalendarData_zh.properties \ + sun/util/resources/ar/CalendarData_ar.properties \ + sun/util/resources/hi/CalendarData_hi.properties \ + sun/util/resources/iw/CalendarData_iw.properties \ + sun/util/resources/ja/CalendarData_ja.properties \ + sun/util/resources/ko/CalendarData_ko.properties \ + sun/util/resources/th/CalendarData_th.properties \ + sun/util/resources/vi/CalendarData_vi.properties \ + sun/util/resources/zh/CalendarData_zh.properties \ \ - sun/util/resources/CurrencyNames_ar_AE.properties \ - sun/util/resources/CurrencyNames_ar_BH.properties \ - sun/util/resources/CurrencyNames_ar_DZ.properties \ - sun/util/resources/CurrencyNames_ar_EG.properties \ - sun/util/resources/CurrencyNames_ar_IQ.properties \ - sun/util/resources/CurrencyNames_ar_JO.properties \ - sun/util/resources/CurrencyNames_ar_KW.properties \ - sun/util/resources/CurrencyNames_ar_LB.properties \ - sun/util/resources/CurrencyNames_ar_LY.properties \ - sun/util/resources/CurrencyNames_ar_MA.properties \ - sun/util/resources/CurrencyNames_ar_OM.properties \ - sun/util/resources/CurrencyNames_ar_QA.properties \ - sun/util/resources/CurrencyNames_ar_SA.properties \ - sun/util/resources/CurrencyNames_ar_SD.properties \ - sun/util/resources/CurrencyNames_ar_SY.properties \ - sun/util/resources/CurrencyNames_ar_TN.properties \ - sun/util/resources/CurrencyNames_ar_YE.properties \ - sun/util/resources/CurrencyNames_hi_IN.properties \ - sun/util/resources/CurrencyNames_iw_IL.properties \ - sun/util/resources/CurrencyNames_ja.properties \ - sun/util/resources/CurrencyNames_ja_JP.properties \ - sun/util/resources/CurrencyNames_ko.properties \ - sun/util/resources/CurrencyNames_ko_KR.properties \ - sun/util/resources/CurrencyNames_th_TH.properties \ - sun/util/resources/CurrencyNames_vi_VN.properties \ - sun/util/resources/CurrencyNames_zh_CN.properties \ - sun/util/resources/CurrencyNames_zh_TW.properties + sun/util/resources/ar/CurrencyNames_ar_AE.properties \ + sun/util/resources/ar/CurrencyNames_ar_BH.properties \ + sun/util/resources/ar/CurrencyNames_ar_DZ.properties \ + sun/util/resources/ar/CurrencyNames_ar_EG.properties \ + sun/util/resources/ar/CurrencyNames_ar_IQ.properties \ + sun/util/resources/ar/CurrencyNames_ar_JO.properties \ + sun/util/resources/ar/CurrencyNames_ar_KW.properties \ + sun/util/resources/ar/CurrencyNames_ar_LB.properties \ + sun/util/resources/ar/CurrencyNames_ar_LY.properties \ + sun/util/resources/ar/CurrencyNames_ar_MA.properties \ + sun/util/resources/ar/CurrencyNames_ar_OM.properties \ + sun/util/resources/ar/CurrencyNames_ar_QA.properties \ + sun/util/resources/ar/CurrencyNames_ar_SA.properties \ + sun/util/resources/ar/CurrencyNames_ar_SD.properties \ + sun/util/resources/ar/CurrencyNames_ar_SY.properties \ + sun/util/resources/ar/CurrencyNames_ar_TN.properties \ + sun/util/resources/ar/CurrencyNames_ar_YE.properties \ + sun/util/resources/hi/CurrencyNames_hi_IN.properties \ + sun/util/resources/iw/CurrencyNames_iw_IL.properties \ + sun/util/resources/ja/CurrencyNames_ja.properties \ + sun/util/resources/ja/CurrencyNames_ja_JP.properties \ + sun/util/resources/ko/CurrencyNames_ko.properties \ + sun/util/resources/ko/CurrencyNames_ko_KR.properties \ + sun/util/resources/th/CurrencyNames_th_TH.properties \ + sun/util/resources/vi/CurrencyNames_vi_VN.properties \ + sun/util/resources/zh/CurrencyNames_zh_CN.properties \ + sun/util/resources/zh/CurrencyNames_zh_TW.properties
--- a/make/sun/text/Makefile Tue Aug 21 13:42:08 2012 +0100 +++ b/make/sun/text/Makefile Tue Aug 21 11:00:30 2012 -0700 @@ -1,5 +1,5 @@ # -# Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it @@ -48,7 +48,7 @@ # # Compile the properties files # -COMPILED_PROPERTIES_SUPERCLASS=LocaleNamesBundle +COMPILED_PROPERTIES_SUPERCLASS=sun.util.resources.LocaleNamesBundle # # Rules @@ -68,13 +68,13 @@ # TEXT_SRCDIR = $(SHARE_SRC)/classes/sun/text/resources BIRULES = $(TEXT_SRCDIR)/BreakIteratorRules.java \ - $(TEXT_SRCDIR)/BreakIteratorRules_th.java -BIINFO = $(TEXT_SRCDIR)/BreakIteratorInfo_th.java + $(TEXT_SRCDIR)/th/BreakIteratorRules_th.java +BIINFO = $(TEXT_SRCDIR)/th/BreakIteratorInfo_th.java UNICODEDATA = $(BUILDDIR)/tools/UnicodeData # output -BIFILES = $(CLASSDESTDIR)/sun/text/resources/WordBreakIteratorData_th \ - $(CLASSDESTDIR)/sun/text/resources/LineBreakIteratorData_th +BIFILES = $(CLASSDESTDIR)/sun/text/resources/th/WordBreakIteratorData_th \ + $(CLASSDESTDIR)/sun/text/resources/th/LineBreakIteratorData_th # builder GENERATEBREAKITERATORDATA_JARFILE = \ @@ -106,7 +106,7 @@ # LOCALEDATA_JAR = $(EXTDIR)/localedata.jar -SPECIALFILES = $(CLASSDESTDIR)/sun/text/resources/thai_dict +SPECIALFILES = $(CLASSDESTDIR)/sun/text/resources/th/thai_dict $(CLASSDESTDIR)/sun/text/resources/% : $(TEXT_SRCDIR)/% $(install-file)
--- a/make/tools/Makefile Tue Aug 21 13:42:08 2012 +0100 +++ b/make/tools/Makefile Tue Aug 21 11:00:30 2012 -0700 @@ -36,6 +36,7 @@ SUBDIRS = \ addjsum \ buildmetaindex \ + cldrconverter \ commentchecker \ compile_font_config \ compile_properties \
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/make/tools/cldrconverter/Makefile Tue Aug 21 11:00:30 2012 -0700 @@ -0,0 +1,43 @@ +# +# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# This code is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License version 2 only, as +# published by the Free Software Foundation. Oracle designates this +# particular file as subject to the "Classpath" exception as provided +# by Oracle in the LICENSE file that accompanied this code. +# +# This code is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# version 2 for more details (a copy is included in the LICENSE file that +# accompanied this code). +# +# You should have received a copy of the GNU General Public License version +# 2 along with this work; if not, write to the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. +# +# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA +# or visit www.oracle.com if you need additional information or have any +# questions. +# + +# +# Makefile for building the CLDRConverter tool +# + +BUILDDIR = ../.. +PACKAGE = build.tools.cldrconverter +PRODUCT = cldrconverter +PROGRAM = cldrconverter +include $(BUILDDIR)/common/Defs.gmk + +BUILDTOOL_SOURCE_ROOT = $(BUILDDIR)/tools/src +BUILDTOOL_MAIN = $(PKGDIR)/CLDRConverter.java + +# +# Build tool jar rules. +# +include $(BUILDDIR)/common/BuildToolJar.gmk +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/make/tools/src/build/tools/cldrconverter/AbstractLDMLHandler.java Tue Aug 21 11:00:30 2012 -0700 @@ -0,0 +1,189 @@ +/* + * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +package build.tools.cldrconverter; + +import java.util.HashMap; +import java.util.Map; +import java.util.Set; +import org.xml.sax.Attributes; +import org.xml.sax.SAXException; +import org.xml.sax.SAXParseException; +import org.xml.sax.helpers.DefaultHandler; + +/** + * This is an abstract class for general LDML parsing purpose. + * LDMLParseHandler, SupplementLDMLParseHandler, and NumberingLDMLParseHandler + * are the subclasses of this class. + */ + +abstract class AbstractLDMLHandler<V> extends DefaultHandler { + static final Map<String, String> DAY_OF_WEEK_MAP = new HashMap<>(); + static { + DAY_OF_WEEK_MAP.put("sun", "1"); + DAY_OF_WEEK_MAP.put("mon", "2"); + DAY_OF_WEEK_MAP.put("tue", "3"); + DAY_OF_WEEK_MAP.put("wed", "4"); + DAY_OF_WEEK_MAP.put("thu", "5"); + DAY_OF_WEEK_MAP.put("fri", "6"); + DAY_OF_WEEK_MAP.put("sat", "7"); + } + // Collected data in JRE locale data format. + private Map<String, V> data = new HashMap<>(); + + // The root Container + Container currentContainer = new Container("$ROOT", null); + + AbstractLDMLHandler() { + } + + Map<String, V> getData() { + return data; + } + + V put(String key, V value) { + return data.put(key, value); + } + + V get(String key) { + return data.get(key); + } + + Set<String> keySet() { + return data.keySet(); + } + + /* + * It returns true if the data should be ignored based on the user + * defined acceptance level, which is listed with draft attribute in + * the cldr locale xml files. + * When the alt attribute is present, the data is always ignored since + * we always use the primary data + */ + boolean isIgnored(Attributes attributes) { + if (attributes.getValue("alt") != null) { + return true; + } + String draftValue = attributes.getValue("draft"); + if (draftValue != null) { + return CLDRConverter.draftType > CLDRConverter.DRAFT_MAP.get(draftValue); + } + return false; + } + + void pushContainer(String qName, Attributes attributes) { + if (isIgnored(attributes) || currentContainer instanceof IgnoredContainer) { + currentContainer = new IgnoredContainer(qName, currentContainer); + } else { + currentContainer = new Container(qName, currentContainer); + } + } + + void pushIgnoredContainer(String qName) { + currentContainer = new IgnoredContainer(qName, currentContainer); + } + + void pushKeyContainer(String qName, Attributes attributes, String key) { + if (!pushIfIgnored(qName, attributes)) { + currentContainer = new KeyContainer(qName, currentContainer, key); + } + } + + /** + * start an element that defines a string entry, with the value provided by the element's text. + */ + void pushStringEntry(String qName, Attributes attributes, String key) { + if (!pushIfIgnored(qName, attributes)) { + currentContainer = new StringEntry(qName, currentContainer, key); + } + } + + /** + * start an element that defines a string entry, with the value provided by an attribute value. + */ + void pushStringEntry(String qName, Attributes attributes, String key, String value) { + if (!pushIfIgnored(qName, attributes)) { + currentContainer = new StringEntry(qName, currentContainer, key, value); + } + } + + void pushStringArrayEntry(String qName, Attributes attributes, String key, int length) { + if (!pushIfIgnored(qName, attributes)) { + currentContainer = new StringArrayEntry(qName, currentContainer, key, length); + } + } + + void pushStringArrayElement(String qName, Attributes attributes, int index) { + if (!pushIfIgnored(qName, attributes)) { + currentContainer = new StringArrayElement(qName, currentContainer, index); + } + } + + private boolean pushIfIgnored(String qName, Attributes attributes) { + if (isIgnored(attributes) || currentContainer instanceof IgnoredContainer) { + pushIgnoredContainer(qName); + return true; + } + return false; + } + + /** + * Obtains the key from the innermost containing container that provides one. + */ + String getContainerKey() { + Container current = currentContainer; + while (current != null) { + if (current instanceof KeyContainer) { + return ((KeyContainer) current).getKey(); + } + current = current.getParent(); + } + return null; + } + + @Override + public void characters(char[] ch, int start, int length) throws SAXException { + currentContainer.addCharacters(ch, start, length); + } + + @SuppressWarnings(value = "CallToThreadDumpStack") + @Override + public void warning(SAXParseException e) throws SAXException { + e.printStackTrace(); + } + + @SuppressWarnings(value = "CallToThreadDumpStack") + @Override + public void error(SAXParseException e) throws SAXException { + e.printStackTrace(); + } + + @SuppressWarnings(value = "CallToThreadDumpStack") + @Override + public void fatalError(SAXParseException e) throws SAXException { + e.printStackTrace(); + super.fatalError(e); + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/make/tools/src/build/tools/cldrconverter/Bundle.java Tue Aug 21 11:00:30 2012 -0700 @@ -0,0 +1,542 @@ +/* + * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +package build.tools.cldrconverter; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.EnumSet; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +class Bundle { + static enum Type { + LOCALENAMES, CURRENCYNAMES, TIMEZONENAMES, CALENDARDATA, FORMATDATA; + + static EnumSet<Type> ALL_TYPES = EnumSet.of(LOCALENAMES, + CURRENCYNAMES, + TIMEZONENAMES, + CALENDARDATA, + FORMATDATA); + } + + private final static Map<String, Bundle> bundles = new HashMap<>(); + + private final static String[] NUMBER_PATTERN_KEYS = { + "NumberPatterns/decimal", + "NumberPatterns/currency", + "NumberPatterns/percent" + }; + + private final static String[] NUMBER_ELEMENT_KEYS = { + "NumberElements/decimal", + "NumberElements/group", + "NumberElements/list", + "NumberElements/percent", + "NumberElements/zero", + "NumberElements/pattern", + "NumberElements/minus", + "NumberElements/exponential", + "NumberElements/permille", + "NumberElements/infinity", + "NumberElements/nan" + }; + + private final static String[] TIME_PATTERN_KEYS = { + "DateTimePatterns/full-time", + "DateTimePatterns/long-time", + "DateTimePatterns/medium-time", + "DateTimePatterns/short-time", + }; + + private final static String[] DATE_PATTERN_KEYS = { + "DateTimePatterns/full-date", + "DateTimePatterns/long-date", + "DateTimePatterns/medium-date", + "DateTimePatterns/short-date", + }; + + private final static String[] DATETIME_PATTERN_KEYS = { + "DateTimePatterns/date-time" + }; + + private final static String[] ERA_KEYS = { + "long.Eras", + "Eras", + "short.Eras" + }; + + private final String id; + private final String cldrPath; + private final EnumSet<Type> bundleTypes; + private final String currencies; + + static Bundle getBundle(String id) { + return bundles.get(id); + } + + Bundle(String id, String cldrPath, String bundles, String currencies) { + this.id = id; + this.cldrPath = cldrPath; + if ("localenames".equals(bundles)) { + bundleTypes = EnumSet.of(Type.LOCALENAMES); + } else if ("currencynames".equals(bundles)) { + bundleTypes = EnumSet.of(Type.CURRENCYNAMES); + } else { + bundleTypes = Type.ALL_TYPES; + } + if (currencies == null) { + currencies = "local"; + } + this.currencies = currencies; + addBundle(); + } + + private void addBundle() { + Bundle.bundles.put(id, this); + } + + String getID() { + return id; + } + + boolean isRoot() { + return "root".equals(id); + } + + String getCLDRPath() { + return cldrPath; + } + + EnumSet<Type> getBundleTypes() { + return bundleTypes; + } + + String getCurrencies() { + return currencies; + } + + /** + * Generate a map that contains all the data that should be + * visible for the bundle's locale + */ + Map<String, Object> getTargetMap() throws Exception { + String[] cldrBundles = getCLDRPath().split(","); + + // myMap contains resources for id. + Map<String, Object> myMap = new HashMap<>(); + int index; + for (index = 0; index < cldrBundles.length; index++) { + if (cldrBundles[index].equals(id)) { + myMap.putAll(CLDRConverter.getCLDRBundle(cldrBundles[index])); + break; + } + } + + // parentsMap contains resources from id's parents. + Map<String, Object> parentsMap = new HashMap<>(); + for (int i = cldrBundles.length - 1; i > index; i--) { + if (!("no".equals(cldrBundles[i]) || cldrBundles[i].startsWith("no_"))) { + parentsMap.putAll(CLDRConverter.getCLDRBundle(cldrBundles[i])); + } + } + // Duplicate myMap as parentsMap for "root" so that the + // fallback works. This is a huck, though. + if ("root".equals(cldrBundles[0])) { + assert parentsMap.isEmpty(); + parentsMap.putAll(myMap); + } + + // merge individual strings into arrays + + // if myMap has any of the NumberPatterns members + for (String k : NUMBER_PATTERN_KEYS) { + if (myMap.containsKey(k)) { + String[] numberPatterns = new String[NUMBER_PATTERN_KEYS.length]; + for (int i = 0; i < NUMBER_PATTERN_KEYS.length; i++) { + String key = NUMBER_PATTERN_KEYS[i]; + String value = (String) myMap.remove(key); + if (value == null) { + value = (String) parentsMap.remove(key); + } + if (value.length() == 0) { + CLDRConverter.warning("empty pattern for " + key); + } + numberPatterns[i] = value; + } + myMap.put("NumberPatterns", numberPatterns); + break; + } + } + + // if myMap has any of NUMBER_ELEMENT_KEYS, create a complete NumberElements. + String defaultScript = (String) myMap.get("DefaultNumberingSystem"); + @SuppressWarnings("unchecked") + List<String> scripts = (List<String>) myMap.get("numberingScripts"); + if (defaultScript == null && scripts != null) { + // Some locale data has no default script for numbering even with mutiple scripts. + // Take the first one as default in that case. + defaultScript = scripts.get(0); + myMap.put("DefaultNumberingSystem", defaultScript); + } + if (scripts != null) { + for (String script : scripts) { + for (String k : NUMBER_ELEMENT_KEYS) { + String[] numberElements = new String[NUMBER_ELEMENT_KEYS.length]; + for (int i = 0; i < NUMBER_ELEMENT_KEYS.length; i++) { + String key = script + "." + NUMBER_ELEMENT_KEYS[i]; + String value = (String) myMap.remove(key); + if (value == null) { + if (key.endsWith("/pattern")) { + value = "#"; + } else { + value = (String) parentsMap.get(key); + if (value == null) { + // the last resort is "latn" + key = "latn." + NUMBER_ELEMENT_KEYS[i]; + value = (String) parentsMap.get(key); + if (value == null) { + throw new InternalError("NumberElements: null for " + key); + } + } + } + } + numberElements[i] = value; + } + myMap.put(script + "." + "NumberElements", numberElements); + break; + } + } + } + + // another hack: parentsMap is not used for date-time resources. + if ("root".equals(id)) { + parentsMap = null; + } + + for (CalendarType calendarType : CalendarType.values()) { + String calendarPrefix = calendarType.keyElementName(); + // handle multiple inheritance for month and day names + handleMultipleInheritance(myMap, parentsMap, calendarPrefix + "MonthNames"); + handleMultipleInheritance(myMap, parentsMap, calendarPrefix + "MonthAbbreviations"); + handleMultipleInheritance(myMap, parentsMap, calendarPrefix + "DayNames"); + handleMultipleInheritance(myMap, parentsMap, calendarPrefix + "DayAbbreviations"); + handleMultipleInheritance(myMap, parentsMap, calendarPrefix + "AmPmMarkers"); + + adjustEraNames(myMap, calendarType); + + handleDateTimeFormatPatterns(TIME_PATTERN_KEYS, myMap, parentsMap, calendarType, "TimePatterns"); + handleDateTimeFormatPatterns(DATE_PATTERN_KEYS, myMap, parentsMap, calendarType, "DatePatterns"); + handleDateTimeFormatPatterns(DATETIME_PATTERN_KEYS, myMap, parentsMap, calendarType, "DateTimePatterns"); + } + + return myMap; + } + + private void handleMultipleInheritance(Map<String, Object> map, Map<String, Object> parents, String key) { + String formatKey = key + "/format"; + Object format = map.get(formatKey); + if (format != null) { + map.remove(formatKey); + map.put(key, format); + if (fillInElements(parents, formatKey, format)) { + map.remove(key); + } + } + String standaloneKey = key + "/stand-alone"; + Object standalone = map.get(standaloneKey); + if (standalone != null) { + map.remove(standaloneKey); + String realKey = key; + if (format != null) { + realKey = "standalone." + key; + } + map.put(realKey, standalone); + if (fillInElements(parents, standaloneKey, standalone)) { + map.remove(realKey); + } + } + } + + /** + * Fills in any empty elements with its parent element. Returns true if the resulting array is + * identical to its parent array. + * + * @param parents + * @param key + * @param value + * @return true if the resulting array is identical to its parent array. + */ + private boolean fillInElements(Map<String, Object> parents, String key, Object value) { + if (parents == null) { + return false; + } + if (value instanceof String[]) { + Object pvalue = parents.get(key); + if (pvalue != null && pvalue instanceof String[]) { + String[] strings = (String[]) value; + String[] pstrings = (String[]) pvalue; + for (int i = 0; i < strings.length; i++) { + if (strings[i] == null || strings[i].length() == 0) { + strings[i] = pstrings[i]; + } + } + return Arrays.equals(strings, pstrings); + } + } + return false; + } + + /* + * Adjusts String[] for era names because JRE's Calendars use different + * ERA value indexes in the Buddhist and Japanese Imperial calendars. + */ + private void adjustEraNames(Map<String, Object> map, CalendarType type) { + String[][] eraNames = new String[ERA_KEYS.length][]; + String[] realKeys = new String[ERA_KEYS.length]; + int index = 0; + for (String key : ERA_KEYS) { + String realKey = type.keyElementName() + key; + String[] value = (String[]) map.get(realKey); + if (value != null) { + switch (type) { + case GREGORIAN: + break; + + case JAPANESE: + { + String[] newValue = new String[value.length + 1]; + String[] julianEras = (String[]) map.get(key); + if (julianEras != null && julianEras.length >= 2) { + newValue[0] = julianEras[1]; + } else { + newValue[0] = ""; + } + System.arraycopy(value, 0, newValue, 1, value.length); + value = newValue; + } + break; + + case BUDDHIST: + // Replace the value + value = new String[] {"BC", value[0]}; + break; + } + if (!key.equals(realKey)) { + map.put(realKey, value); + } + } + realKeys[index] = realKey; + eraNames[index++] = value; + } + if (eraNames[0] != null) { + if (eraNames[1] != null) { + if (eraNames[2] == null) { + // Eras -> short.Eras + // long.Eras -> Eras + map.put(realKeys[2], map.get(realKeys[1])); + map.put(realKeys[1], map.get(realKeys[0])); + } + } else { + // long.Eras -> Eras + map.put(realKeys[1], map.get(realKeys[0])); + } + // remove long.Eras + map.remove(realKeys[0]); + } + } + + private void handleDateTimeFormatPatterns(String[] patternKeys, Map<String, Object> myMap, Map<String, Object> parentsMap, + CalendarType calendarType, String name) { + String calendarPrefix = calendarType.keyElementName(); + for (String k : patternKeys) { + if (myMap.containsKey(calendarPrefix + k)) { + int len = patternKeys.length; + List<String> patterns = new ArrayList<>(); + for (int i = 0; i < len; i++) { + String key = calendarPrefix + patternKeys[i]; + String pattern = (String) myMap.remove(key); + if (pattern == null) { + pattern = (String) parentsMap.remove(key); + } + if (pattern != null) { + patterns.add(i, translateDateFormatLetters(calendarType, pattern));