The latest CLDR data introduces the concept of a 'metazone'. This patch adds these translations to our property files.
ChangeLog: 2008-07-03 Andrew John Hughes <[EMAIL PROTECTED]> * Makefile.am: Turn off bytecode compilation during native build. * src/gnu/ldml/Parser.java: Record data in metazone element. * src/gnu/localegen/PropertiesGenerator.java: Incorporate metazone data as well in timezone translations. -- Andrew :) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8
Index: Makefile.am =================================================================== RCS file: /sources/classpath/cp-tools/Makefile.am,v retrieving revision 1.14 diff -u -u -r1.14 Makefile.am --- Makefile.am 29 Jun 2008 12:49:19 -0000 1.14 +++ Makefile.am 3 Jul 2008 21:25:51 -0000 @@ -18,13 +18,6 @@ GCJCOMPILE = $(LIBGCJCOMPILE) -MF $(@:.o=.d) LTGCJCOMPILE = $(LIBGCJCOMPILE) -MF $(@:.lo=.d) -data_JARS = cpgenerators-$(VERSION).jar -if USE_GNUBYTECODE -data_JARS += cptools-$(VERSION).jar -endif - -BUILT_SOURCES = $(data_JARS) - if ENABLE_GCJ_BINARY bin_PROGRAMS = localegen currencygen lib_LTLIBRARIES = libcpgenerators.la @@ -36,8 +29,11 @@ endif else bin_SCRIPTS = bin/localegen bin/currencygen +data_JARS = cpgenerators-$(VERSION).jar +BUILT_SOURCES = $(data_JARS) if USE_GNUBYTECODE bin_SCRIPTS += bin/gjavap bin/gjavah +data_JARS += cptools-$(VERSION).jar endif endif @@ -91,7 +87,7 @@ if ENABLE_GCJ_BINARY libcptools_la_SOURCES = $(cptools_jar_SOURCES) -endif +else cptools_jar_CLASSES = $(patsubst src/%.java,classes/%.class,$(cptools_jar_SOURCES)) @@ -110,6 +106,8 @@ $(cptools_jar_CLASSES): classes/gnu/%.class: $(srcdir)/src/gnu/%.java $(JAVAC) $(MY_JAVAC_FLAGS) -d classes $< + +endif endif localegen_java_files = \ @@ -138,8 +136,7 @@ if ENABLE_GCJ_BINARY libcpgenerators_la_SOURCES = $(cpgenerators_jar_SOURCES) -endif - +else cpgenerators_jar_CLASSES = $(patsubst src/%.java,classes/%.class,$(cpgenerators_jar_SOURCES)) cpgenerators-$(VERSION).jar: createdirectories $(cpgenerators_jar_CLASSES) @@ -149,6 +146,7 @@ $(cpgenerators_jar_CLASSES): classes/gnu/%.class: $(srcdir)/src/gnu/%.java $(JAVAC) $(MY_JAVAC_FLAGS) -d classes $< +endif createdirectories: mkdir -p classes @@ -156,6 +154,7 @@ clean-local: rm -rf classes $(data_JARS) +if !ENABLE_GCJ_BINARY install-data-hook: $(INSTALL) -d $(datadir)/cp-tools $(INSTALL) --mode 644 $(data_JARS) $(datadir)/cp-tools @@ -163,6 +162,7 @@ if [ -e cptools-$(VERSION).jar ]; then \ $(LN_S) -f $(datadir)/cp-tools/cptools-$(VERSION).jar $(datadir)/cp-tools/cptools.jar; \ fi +endif test: tests/%.class $(srcdir)/src/test/%.java $(JAVAC) -g -d tests $< Index: src/gnu/ldml/Parser.java =================================================================== RCS file: /sources/classpath/cp-tools/src/gnu/ldml/Parser.java,v retrieving revision 1.7 diff -u -u -r1.7 Parser.java --- src/gnu/ldml/Parser.java 6 Mar 2005 21:58:58 -0000 1.7 +++ src/gnu/ldml/Parser.java 3 Jul 2008 21:25:52 -0000 @@ -618,6 +618,9 @@ allElements.put("standard", new Data()); allElements.put("daylight", new Data()); allElements.put("examplarCity", new Data()); + allElements.put("metazone", new DetailedList()); + allElements.put("commonlyUsed", new Group()); + allElements.put("special", new Group()); allElements.put("territories", new GroupList()); allElements.put("currencies", new GroupList()); allElements.put("currency", new DetailedList()); Index: src/gnu/localegen/PropertiesGenerator.java =================================================================== RCS file: /sources/classpath/cp-tools/src/gnu/localegen/PropertiesGenerator.java,v retrieving revision 1.5 diff -u -u -r1.5 PropertiesGenerator.java --- src/gnu/localegen/PropertiesGenerator.java 30 Jun 2008 00:32:09 -0000 1.5 +++ src/gnu/localegen/PropertiesGenerator.java 3 Jul 2008 21:25:52 -0000 @@ -55,6 +55,10 @@ "zone.short.standard", "zone.long.daylight", "zone.short.daylight" }; + private static final String[] classpathMetazoneOrder = { "metazone.long.standard", + "metazone.short.standard", + "metazone.long.daylight", + "metazone.short.daylight" }; private static final String collatorIdentifiers = "<=,;@&!"; /* @@ -330,7 +334,7 @@ public void generateContent(PrintWriter o) { int index; - + Enumeration keys = listElt.listData.keys(); StringBuffer buffer = new StringBuffer(); buffer.append("zoneStrings="); @@ -352,6 +356,8 @@ for (int j = 0; j < classpathZoneOrder.length; j++) { zoneData = (DataElement)zoneTable.get(classpathZoneOrder[j]); + if (zoneData == null) + zoneData = (DataElement) zoneTable.get(classpathMetazoneOrder[j]); if (zoneData != null) { buffer2.append(convertToJavaString(zoneData.data));