jdk/make/gensrc/GensrcProperties.gmk
changeset 23236 7c5997f59e20
parent 23010 6dadb192ad81
child 23347 acb1d044a217
equal deleted inserted replaced
23235:d1b1878b2eaa 23236:7c5997f59e20
    31 # All generated .java files from compilation are appended to this variable.
    31 # All generated .java files from compilation are appended to this variable.
    32 ALL_COMPILED_PROPJAVAS :=
    32 ALL_COMPILED_PROPJAVAS :=
    33 # The (very long) command line for compilation, stored in a file, prior to use.
    33 # The (very long) command line for compilation, stored in a file, prior to use.
    34 COMPILE_PROPCMDLINE :=
    34 COMPILE_PROPCMDLINE :=
    35 
    35 
    36 # All .properties files to be cleaned are appended to this variable.
       
    37 ALL_CLEANED_PROPSOURCES :=
       
    38 # All generated cleaned .properties files from cleaning are appended to this variable.
       
    39 ALL_CLEANED_PROPOUTPUT :=
       
    40 # The (very long) command line for cleaning, stored in a file, prior to use.
       
    41 CLEAN_PROPCMDLINE :=
       
    42 
       
    43 define add_properties_to_compile
    36 define add_properties_to_compile
    44   # $1 is the name of the properties group
    37   # $1 is the name of the properties group
    45   # $2 is the files belonging to this group
    38   # $2 is the files belonging to this group
    46   # $3 is the super class for the generated java file.
    39   # $3 is the super class for the generated java file.
    47   # $4 is a from pattern for translating stripped name from source to target
       
    48   # $5 is the to pattern replacing $3 in the target
       
    49 
    40 
    50   # Strip away prefix and suffix,
    41   # Strip away prefix and suffix,
    51   # leaving for example: sun/util/resources/CurrencyNames_sv
    42   # leaving for example: sun/util/resources/CurrencyNames_sv
    52   $1_PROPPATHS := $$(patsubst $(JDK_TOPDIR)/src/windows/classes/%.properties, %, \
    43   $1_PROPPATHS := $$(patsubst $(JDK_TOPDIR)/src/windows/classes/%.properties, %, \
    53       $$(patsubst $(JDK_TOPDIR)/src/macosx/classes/%.properties, %, \
    44       $$(patsubst $(JDK_TOPDIR)/src/macosx/classes/%.properties, %, \
    54       $$(patsubst $(JDK_TOPDIR)/src/share/classes/%.properties, %, $2)))
    45       $$(patsubst $(JDK_TOPDIR)/src/share/classes/%.properties, %, $2)))
    55 
    46 
    56   # Apply optional name transformation, example: hz_TW -> hz_HK
       
    57   $(if $4, $1_PROPPATHS := $$(patsubst $4, $5, $$($1_PROPPATHS)))
       
    58 
       
    59   # Accumulate all found properties files.
    47   # Accumulate all found properties files.
    60   ALL_COMPILED_PROPSOURCES += $2
    48   ALL_COMPILED_PROPSOURCES += $2
    61 
    49 
    62   # Generate the list of to be created java files.
    50   # Generate the list of to be created java files.
    63   ALL_COMPILED_PROPJAVAS += $$(patsubst %, $(JDK_OUTPUTDIR)/gensrc/%.java, $$($1_PROPPATHS))
    51   ALL_COMPILED_PROPJAVAS += $$(patsubst %, $(JDK_OUTPUTDIR)/gensrc/%.java, $$($1_PROPPATHS))
    64 
    52 
    65   # Now generate a sequence of "-compile ...CurrencyNames_sv.properties ...CurrencyNames_sv.java ListResourceBundle"
    53   # Now generate a sequence of 
       
    54   # "-compile ...CurrencyNames_sv.properties ...CurrencyNames_sv.java ListResourceBundle"
    66   # suitable to be fed into the CompileProperties command.
    55   # suitable to be fed into the CompileProperties command.
    67   COMPILE_PROPCMDLINE += $$(subst _SPACE_,$(SPACE),$$(join $$(addprefix -compile_SPACE_, $2), \
    56   COMPILE_PROPCMDLINE += $$(subst _SPACE_,$(SPACE),$$(join $$(addprefix -compile_SPACE_, $2), \
    68       $$(addsuffix _SPACE_$(strip $3), \
    57       $$(addsuffix _SPACE_$(strip $3), \
    69       $$(addprefix _SPACE_$(JDK_OUTPUTDIR)/gensrc/, \
    58       $$(addprefix _SPACE_$(JDK_OUTPUTDIR)/gensrc/, \
    70       $$(addsuffix .java, $$($1_PROPPATHS))))))
    59       $$(addsuffix .java, $$($1_PROPPATHS))))))
    71 endef
    60 endef
    72 
    61 
    73 define add_properties_to_clean
    62 ################################################################################
    74   # $1 is the name of the properties group
    63 # Some packages have properties that need to be converted to java source files.
    75   # $2 is the files belonging to this group
    64 COMPILE_PROP_SRC_FILES := \
    76   # $3 is a from pattern for translating stripped name from source to target
    65     $(filter %.properties, $(call CacheFind, \
    77   # $4 is the to pattern replacing $3 in the target
    66         $(JDK_TOPDIR)/src/share/classes/com/sun/accessibility/internal/resources \
    78   # $5 optional name of extra directory to put properties files in (ex: resources)
    67         $(JDK_TOPDIR)/src/share/classes/com/sun/java/swing/plaf/motif/resources \
       
    68         $(JDK_TOPDIR)/src/share/classes/com/sun/java/swing/plaf/windows/resources \
       
    69         $(JDK_TOPDIR)/src/share/classes/com/sun/swing/internal/plaf/basic/resources \
       
    70         $(JDK_TOPDIR)/src/share/classes/com/sun/swing/internal/plaf/metal/resources \
       
    71         $(JDK_TOPDIR)/src/share/classes/com/sun/swing/internal/plaf/synth/resources \
       
    72         $(JDK_TOPDIR)/src/share/classes/com/sun/tools/jdi/resources \
       
    73         $(JDK_TOPDIR)/src/share/classes/sun/awt/resources \
       
    74         $(JDK_TOPDIR)/src/share/classes/sun/launcher/resources \
       
    75         $(JDK_TOPDIR)/src/share/classes/sun/management/resources \
       
    76         $(JDK_TOPDIR)/src/share/classes/sun/print/resources \
       
    77         $(JDK_TOPDIR)/src/share/classes/sun/tools/jar/resources \
       
    78         $(JDK_TOPDIR)/src/share/classes/sun/util/logging/resources)) \
       
    79     #
    79 
    80 
    80   # Strip away prefix and suffix,
       
    81   # leaving for example: sun/util/resources/CurrencyNames_sv
       
    82   $1_PROPPATHS := $$(patsubst $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/classes/%.properties, %, \
       
    83       $$(patsubst $(JDK_TOPDIR)/src/share/classes/%.properties, %, $2))
       
    84 
       
    85   # Apply optional name transformation, example: hz_TW -> hz_HK
       
    86   $(if $3, $1_PROPPATHS := $$(patsubst $3, $4, $$($1_PROPPATHS)))
       
    87 
       
    88   # Accumulate all found properties files.
       
    89   ALL_CLEANED_PROPSOURCES += $2
       
    90 
       
    91   # Generate the list of to be created java files.
       
    92   $1_PROPOUTPUT := $$(patsubst %, $(JDK_OUTPUTDIR)/classes/%.properties, $$($1_PROPPATHS))
       
    93   # If the properties target file isn't in a "resources" dir, add one.
       
    94   ifneq ($5, )
       
    95     $1_PROPOUTPUT := $$(foreach p, $$($1_PROPOUTPUT), $$(dir $$p)$5/$$(notdir $$p))
       
    96   endif
       
    97 
       
    98   ALL_CLEANED_PROPOUTPUT += $$($1_PROPOUTPUT)
       
    99 
       
   100   # Now generate a sequence of "-clean ...[src]...CurrencyNames_sv.properties ...[build]...CurrencyNames_sv.properties"
       
   101   # suitable to be fed into the StripProperties command.
       
   102   CLEAN_PROPCMDLINE += $$(subst _SPACE_,$(SPACE),$$(join $$(addprefix -clean_SPACE_,$2), \
       
   103       $$(addprefix _SPACE_, $$($1_PROPOUTPUT))))
       
   104 endef
       
   105 
       
   106 # Some packages contain pregenerated java files instead of properties files.
       
   107 # But unfortunately not all properties should be converted, some should be
       
   108 # copied....argggghhh.
       
   109 
       
   110 # For example:
       
   111 #    sun/applet/resources
       
   112 #    sun/misc/resources
       
   113 #    sun/text/resources
       
   114 #    sun/tools/jconsole/resources
       
   115 #    sun/tools/native2ascii/resources
       
   116 #    sun/util/resources
       
   117 
       
   118 # Some packages have properties that need to be converted to java source files.
       
   119 
       
   120 #com/apple/laf/resources
       
   121 ifeq ($(OPENJDK_TARGET_OS), macosx)
    81 ifeq ($(OPENJDK_TARGET_OS), macosx)
   122   $(eval $(call add_properties_to_compile,COM_APPLE_LAF, \
    82   COMPILE_PROP_SRC_FILES += \
   123       $(filter %.properties, \
    83       $(filter %.properties, $(call CacheFind, \
   124       $(call CacheFind, $(JDK_TOPDIR)/src/macosx/classes/com/apple/laf/resources)), \
    84           $(JDK_TOPDIR)/src/macosx/classes/com/apple/laf/resources \
   125       ListResourceBundle))
    85           $(JDK_TOPDIR)/src/macosx/classes/sun/awt/resources)) \
       
    86       #
   126 endif
    87 endif
   127 
    88 
   128 #com/sun/accessibility/internal/resources
       
   129 $(eval $(call add_properties_to_compile,COM_SUN_ACCESSIBILITY, \
       
   130     $(filter %.properties, \
       
   131     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/accessibility/internal/resources)), \
       
   132     ListResourceBundle))
       
   133 $(eval $(call add_properties_to_compile,COM_SUN_ACCESSIBILITY_HK, \
       
   134     $(filter %.properties, \
       
   135     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/accessibility/internal/resources)), \
       
   136     ListResourceBundle, %zh_TW, %zh_HK))
       
   137 #com/sun/imageio/plugins/common
       
   138 $(eval $(call add_properties_to_clean,COM_SUN_IMAGEIO, \
       
   139     $(filter %.properties, \
       
   140     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/imageio))))
       
   141 #com/sun/java/swing/plaf/gtk/resources
       
   142 ifneq ($(OPENJDK_TARGET_OS), windows)
       
   143   # Only compile GTK resource bundles on Solaris/Linux
       
   144   $(eval $(call add_properties_to_compile,COM_SUN_SWING_PLAF_GTK, \
       
   145       $(filter %.properties, \
       
   146       $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/java/swing/plaf/gtk/resources)), \
       
   147       ListResourceBundle))
       
   148   $(eval $(call add_properties_to_compile,COM_SUN_SWING_PLAF_GTK_HK, \
       
   149       $(filter %.properties, \
       
   150       $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/java/swing/plaf/gtk/resources)), \
       
   151       ListResourceBundle, %zh_TW, %zh_HK))
       
   152 endif
       
   153 #com/sun/java/swing/plaf/motif/resources
       
   154 $(eval $(call add_properties_to_compile,COM_SUN_SWING_PLAF_MOTIF, \
       
   155     $(filter %.properties, \
       
   156     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/java/swing/plaf/motif/resources)), \
       
   157     ListResourceBundle))
       
   158 $(eval $(call add_properties_to_compile,COM_SUN_SWING_PLAF_MOTIF_HK, \
       
   159     $(filter %.properties, \
       
   160     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/java/swing/plaf/motif/resources)), \
       
   161     ListResourceBundle, %zh_TW, %zh_HK))
       
   162 #com/sun/java/swing/plaf/windows/resources
       
   163 $(eval $(call add_properties_to_compile,COM_SUN_SWING_PLAF_WINDOWS, \
       
   164     $(filter %.properties, \
       
   165     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/java/swing/plaf/windows/resources)), \
       
   166     ListResourceBundle))
       
   167 $(eval $(call add_properties_to_compile,COM_SUN_SWING_PLAF_WINDOWS_HK, \
       
   168     $(filter %.properties, \
       
   169     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/java/swing/plaf/windows/resources)), \
       
   170     ListResourceBundle, %zh_TW, %zh_HK))
       
   171 #com/sun/java/util/jar/pack
       
   172 $(eval $(call add_properties_to_clean,JNDI_COSNAMING, \
       
   173     $(JDK_TOPDIR)/src/share/classes/com/sun/java/util/jar/pack/intrinsic.properties))
       
   174 #com/sun/jndi/cosnaming
       
   175 $(eval $(call add_properties_to_clean,JNDI_COSNAMING, \
       
   176     $(JDK_TOPDIR)/src/share/classes/com/sun/jndi/cosnaming/jndiprovider.properties))
       
   177 #com/sun/jndi/ldap
       
   178 $(eval $(call add_properties_to_clean,JNDI_COSNAMING, \
       
   179     $(JDK_TOPDIR)/src/share/classes/com/sun/jndi/ldap/jndiprovider.properties))
       
   180 
       
   181 #com/sun/org/apache/xml/internal/security/resource
       
   182 #FIXME: The "xmlsecurity*.properties" pattern is not ideal; we might want to find
       
   183 #a better way to select the properties files that are needed.
       
   184 $(eval $(call add_properties_to_clean,XML_SECURITY, \
       
   185     $(filter $(JDK_TOPDIR)/src/share/classes/com/sun/org/apache/xml/internal/security/resource/xmlsecurity%.properties, \
       
   186     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/org/apache/xml/internal/security/resource))))
       
   187 
       
   188 #com/sun/rowset
       
   189 $(eval $(call add_properties_to_clean,COM_SUN_ROWSET, \
       
   190     $(filter %.properties, \
       
   191     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/rowset))))
       
   192 $(eval $(call add_properties_to_clean,COM_SUN_ROWSET_HK, \
       
   193     $(filter %zh_TW.properties, \
       
   194     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/rowset)), \
       
   195     %zh_TW, %zh_HK))
       
   196 
       
   197 #com/sun/swing/internal/plaf/basic/resources
       
   198 $(eval $(call add_properties_to_compile,COM_SUN_SWING_PLAF_BASIC, \
       
   199     $(filter %.properties, \
       
   200     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/swing/internal/plaf/basic/resources)), \
       
   201     ListResourceBundle))
       
   202 $(eval $(call add_properties_to_compile,COM_SUN_SWING_PLAF_BASIC_HK, \
       
   203     $(filter %.properties, \
       
   204     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/swing/internal/plaf/basic/resources)), \
       
   205     ListResourceBundle, %zh_TW, %zh_HK))
       
   206 #com/sun/swing/internal/plaf/metal/resources
       
   207 $(eval $(call add_properties_to_compile,COM_SUN_SWING_PLAF_METAL, \
       
   208     $(filter %.properties, \
       
   209     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/swing/internal/plaf/metal/resources)), \
       
   210     ListResourceBundle))
       
   211 $(eval $(call add_properties_to_compile,COM_SUN_SWING_PLAF_METAL_HK, \
       
   212     $(filter %.properties, $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/swing/internal/plaf/metal/resources)), \
       
   213     ListResourceBundle, %zh_TW, %zh_HK))
       
   214 #com/sun/swing/internal/plaf/synth/resources
       
   215 $(eval $(call add_properties_to_compile,COM_SUN_SWING_PLAF_SYNTH, \
       
   216     $(filter %.properties, \
       
   217     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/swing/internal/plaf/synth/resources)), \
       
   218     ListResourceBundle))
       
   219 $(eval $(call add_properties_to_compile,COM_SUN_SWING_PLAF_SYNTH_HK, \
       
   220     $(filter %.properties, \
       
   221     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/swing/internal/plaf/synth/resources)), \
       
   222     ListResourceBundle, %zh_TW, %zh_HK))
       
   223 
       
   224 #com/sun/tools/jdi/resources
       
   225 $(eval $(call add_properties_to_compile,COM_SUN_TOOLS_JDI, \
       
   226     $(filter %.properties, \
       
   227     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/com/sun/tools/jdi/resources)), \
       
   228     ListResourceBundle))
       
   229 
       
   230 #com/sun/tools/script/shell
       
   231 #java/util
       
   232 #javax/sql/rowset
       
   233 $(eval $(call add_properties_to_clean,JAVAX_SQL_ROWSET, \
       
   234     $(filter %.properties, \
       
   235     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/javax/sql/rowset))))
       
   236 #sun/awt/resources
       
   237 $(eval $(call add_properties_to_compile,SUN_AWT, \
       
   238     $(filter %.properties, \
       
   239     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/awt/resources)), \
       
   240     ListResourceBundle))
       
   241 $(eval $(call add_properties_to_compile,SUN_AWT_HK, \
       
   242     $(filter %.properties, \
       
   243     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/awt/resources)), \
       
   244     ListResourceBundle, %zh_TW, %zh_HK))
       
   245 #sun/awt/windows/
       
   246 ifeq ($(OPENJDK_TARGET_OS), windows)
    89 ifeq ($(OPENJDK_TARGET_OS), windows)
   247   $(eval $(call add_properties_to_compile,SUN_AWT, \
    90   COMPILE_PROP_SRC_FILES += \
   248       $(filter $(JDK_TOPDIR)/src/windows/classes/sun/awt/windows/awtLocalization%.properties, \
    91       $(filter %.properties, $(call CacheFind, \
   249       $(call CacheFind, $(JDK_TOPDIR)/src/windows/classes/sun/awt/windows)), \
    92           $(JDK_TOPDIR)/src/windows/classes/sun/awt/windows)) \
   250       ListResourceBundle))
    93       #
   251   $(eval $(call add_properties_to_compile,SUN_AWT_HK, \
    94 else # ! windows
   252       $(filter $(JDK_TOPDIR)/src/windows/classes/sun/awt/windows/awtLocalization%.properties, \
    95   COMPILE_PROP_SRC_FILES += \
   253       $(call CacheFind, $(JDK_TOPDIR)/src/windows/classes/sun/awt/windows)), \
    96       $(filter %.properties, $(call CacheFind, \
   254       ListResourceBundle, %zh_TW, %zh_HK))
    97           $(JDK_TOPDIR)/src/share/classes/com/sun/java/swing/plaf/gtk/resources)) \
   255 endif
    98       #
   256 # os x specific awt properties
       
   257 ifeq ($(OPENJDK_TARGET_OS),macosx)
       
   258 $(eval $(call add_properties_to_compile,SUN_AWT,\
       
   259 	$(filter $(JDK_TOPDIR)/src/macosx/classes/sun/awt/resources/%.properties,\
       
   260 	$(call CacheFind,$(JDK_TOPDIR)/src/macosx/classes/sun/awt/resources)),\
       
   261 	ListResourceBundle))
       
   262 endif
    99 endif
   263 
   100 
   264 #sun/launcher/resources
   101 $(eval $(call add_properties_to_compile,LIST_RESOURCE_BUNDLE, \
   265 $(eval $(call add_properties_to_compile,SUN_LAUNCHER, \
   102     $(COMPILE_PROP_SRC_FILES), ListResourceBundle))
   266     $(filter %.properties, \
       
   267     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/launcher/resources)), \
       
   268     ListResourceBundle))
       
   269 $(eval $(call add_properties_to_compile,SUN_LAUNCHER_HK, \
       
   270     $(filter %.properties, \
       
   271     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/launcher/resources)), \
       
   272     ListResourceBundle, %zh_TW, %zh_HK))
       
   273 #sun/management/resources
       
   274 $(eval $(call add_properties_to_compile,SUN_MANAGEMENT, \
       
   275     $(filter %.properties, \
       
   276     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/management/resources)), \
       
   277     ListResourceBundle))
       
   278 $(eval $(call add_properties_to_compile,SUN_MANAGEMENT_KH, \
       
   279     $(filter %.properties, \
       
   280     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/management/resources)), \
       
   281     ListResourceBundle, %zh_TW, %zh_HK))
       
   282 #sun/print
       
   283 #sun/print/resources
       
   284 $(eval $(call add_properties_to_compile,SUN_PRINT, \
       
   285     $(filter %.properties, \
       
   286     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/print/resources)), \
       
   287     ListResourceBundle))
       
   288 $(eval $(call add_properties_to_compile,SUN_PRINT_HK, \
       
   289     $(filter %.properties, \
       
   290     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/print/resources)), \
       
   291     ListResourceBundle, %zh_TW, %zh_HK))
       
   292 #sun/rmi/registry/resources
       
   293 $(eval $(call add_properties_to_clean,SUN_RMI_REGISTRY, \
       
   294     $(filter %.properties, \
       
   295     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/rmi/registry/resources))))
       
   296 $(eval $(call add_properties_to_clean,SUN_RMI_REGISTRY_HK, \
       
   297     $(filter %zh_TW.properties, \
       
   298     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/rmi/registry/resources)), \
       
   299     %zh_TW, %zh_HK))
       
   300 
   103 
   301 #sun/rmi/rmic/resources
       
   302 $(eval $(call add_properties_to_clean,SUN_RMI_RMIC, \
       
   303     $(filter %.properties, \
       
   304     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/rmi/rmic/resources))))
       
   305 
       
   306 #sun/rmi/server/resources
       
   307 $(eval $(call add_properties_to_clean,SUN_RMI_SERVER, \
       
   308     $(filter %.properties, \
       
   309     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/rmi/server/resources))))
       
   310 $(eval $(call add_properties_to_clean,SUN_RMI_SERVER_HK, \
       
   311     $(filter %zh_TW.properties, \
       
   312     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/rmi/server/resources)), \
       
   313     %zh_TW, %zh_HK))
       
   314 
       
   315 # sun/tools/jar/resources
       
   316 $(eval $(call add_properties_to_compile,SUN_TOOLS_JAR, \
       
   317     $(filter %.properties, \
       
   318     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/tools/jar/resources)), \
       
   319     ListResourceBundle))
       
   320 $(eval $(call add_properties_to_compile,SUN_TOOLS_JAR_HK, \
       
   321     $(filter %.properties, \
       
   322     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/tools/jar/resources)), \
       
   323     ListResourceBundle, %zh_TW, %zh_HK))
       
   324 
       
   325 #sun/tools/javac/resources
       
   326 # It's unclear if the other localized property files here are supposed to be copied or not
       
   327 # but the old build system didn't copy them.
       
   328 $(eval $(call add_properties_to_clean,SUN_TOOLS_SERIALVER, \
       
   329     $(filter %javac.properties, \
       
   330     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/tools/javac/resources))))
       
   331 
       
   332 #sun/tools/jconsole/resources
       
   333 $(eval $(call add_properties_to_clean,SUN_TOOLS_JCONSOLE, \
       
   334     $(filter %.properties, \
       
   335     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/tools/jconsole/resources))))
       
   336 
       
   337 #sun/tools/serialver
       
   338 $(eval $(call add_properties_to_clean,SUN_TOOLS_SERIALVER, \
       
   339     $(filter %.properties, \
       
   340     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/tools/serialver)), , ,resources))
       
   341 
       
   342 #sun/util/logging/resources
       
   343 $(eval $(call add_properties_to_compile,SUN_UTIL_LOGGING, \
       
   344     $(filter %.properties, \
       
   345     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/util/logging/resources)), \
       
   346     ListResourceBundle))
       
   347 $(eval $(call add_properties_to_compile,SUN_UTIL_LOGGING_HK, \
       
   348     $(filter %.properties, \
       
   349     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/util/logging/resources)), \
       
   350     ListResourceBundle, %zh_TW, %zh_HK))
       
   351 # sun/util/resources
   104 # sun/util/resources
   352 $(eval $(call add_properties_to_compile,SUN_UTIL, \
   105 $(eval $(call add_properties_to_compile,SUN_UTIL, \
   353     $(filter %.properties, \
   106     $(filter %.properties, \
   354     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/util/resources)), \
   107     $(call CacheFind, $(JDK_TOPDIR)/src/share/classes/sun/util/resources)), \
   355     sun.util.resources.LocaleNamesBundle))
   108     sun.util.resources.LocaleNamesBundle))
   356 
   109 
       
   110 ################################################################################
   357 # Now setup the rule for the generation of the resource bundles.
   111 # Now setup the rule for the generation of the resource bundles.
   358 $(JDK_OUTPUTDIR)/gensrc/_the.compiled_properties: $(ALL_COMPILED_PROPSOURCES) $(BUILD_TOOLS)
   112 $(JDK_OUTPUTDIR)/gensrc/_the.compiled_properties: $(ALL_COMPILED_PROPSOURCES) $(BUILD_TOOLS)
   359         # Generate all output directories in advance since the build tool does not do that...
   113         # Generate all output directories in advance since the build tool does not do that...
   360 	$(MKDIR) -p $(sort $(dir $(ALL_COMPILED_PROPJAVAS)))
   114 	$(MKDIR) -p $(sort $(dir $(ALL_COMPILED_PROPJAVAS)))
   361 	$(ECHO) Compiling $(words $(ALL_COMPILED_PROPSOURCES)) properties into resource bundles
   115 	$(ECHO) Compiling $(words $(ALL_COMPILED_PROPSOURCES)) properties into resource bundles
   362 	$(call ListPathsSafely,COMPILE_PROPCMDLINE,\n, >> $(JDK_OUTPUTDIR)/gensrc/_the.cmdline)
   116 	$(call ListPathsSafely,COMPILE_PROPCMDLINE,\n, >> $(JDK_OUTPUTDIR)/gensrc/_the.cmdline)
   363 	$(TOOL_COMPILEPROPERTIES) -quiet @$(JDK_OUTPUTDIR)/gensrc/_the.cmdline
   117 	$(TOOL_COMPILEPROPERTIES) -quiet @$(JDK_OUTPUTDIR)/gensrc/_the.cmdline
   364 	$(TOUCH) $@
   118 	$(TOUCH) $@
   365 
   119 
   366 # Now setup the rule for the generation of the cleaned properties.
       
   367 # FIXME: We currently don't handle removed properties incrementally.
       
   368 $(JDK_OUTPUTDIR)/classes/_the.cleaned_properties: $(ALL_CLEANED_PROPSOURCES) $(BUILD_TOOLS)
       
   369 	$(RM) $(JDK_OUTPUTDIR)/classes/_the.cleaned_properties.cmdline
       
   370         # Generate all output directories in advance since the build tool does not do that...
       
   371 	$(MKDIR) -p $(sort $(dir $(ALL_CLEANED_PROPOUTPUT)))
       
   372 	$(ECHO) Copying and cleaning $(words $(ALL_CLEANED_PROPSOURCES)) properties
       
   373 	$(call ListPathsSafely,CLEAN_PROPCMDLINE,\n, >> $(JDK_OUTPUTDIR)/classes/_the.cleaned_properties.cmdline)
       
   374 	$(TOOL_STRIPPROPERTIES) @$(JDK_OUTPUTDIR)/classes/_the.cleaned_properties.cmdline
       
   375 	$(TOUCH) $@
       
   376 
       
   377 $(ALL_COMPILED_PROPJAVAS): $(JDK_OUTPUTDIR)/gensrc/_the.compiled_properties
   120 $(ALL_COMPILED_PROPJAVAS): $(JDK_OUTPUTDIR)/gensrc/_the.compiled_properties
   378 
   121 
   379 $(ALL_CLEANED_PROPOUTPUT): $(JDK_OUTPUTDIR)/classes/_the.cleaned_properties
   122 ################################################################################
       
   123 # Some zh_HK resources are just copies of zh_TW
   380 
   124 
       
   125 define convert_tw_to_hk
       
   126   $(MKDIR) -p $(@D)
       
   127   $(CAT) $< | $(SED) -e '/class/s/_zh_TW/_zh_HK/' > $@
       
   128 endef
   381 
   129 
   382 # Some zh_HK resources are just copied of zh_TW
       
   383 $(JDK_OUTPUTDIR)/gensrc/%_zh_HK.java: $(JDK_TOPDIR)/src/share/classes/%_zh_TW.java
   130 $(JDK_OUTPUTDIR)/gensrc/%_zh_HK.java: $(JDK_TOPDIR)/src/share/classes/%_zh_TW.java
   384 	$(MKDIR) -p $(@D)
   131 	$(call convert_tw_to_hk)
   385 	$(CAT) $< | $(SED) -e '/class/s/_zh_TW/_zh_HK/' > $@
   132 
       
   133 $(JDK_OUTPUTDIR)/gensrc/%_zh_HK.java: $(JDK_OUTPUTDIR)/gensrc/%_zh_TW.java
       
   134 	$(call convert_tw_to_hk)
   386 
   135 
   387 ZH_HK_JAVA := sun/applet/resources/MsgAppletViewer_zh_HK.java \
   136 ZH_HK_JAVA := sun/applet/resources/MsgAppletViewer_zh_HK.java \
   388     sun/misc/resources/Messages_zh_HK.java \
   137     sun/misc/resources/Messages_zh_HK.java \
   389     sun/security/util/AuthResources_zh_HK.java \
   138     sun/security/util/AuthResources_zh_HK.java \
   390     sun/security/util/Resources_zh_HK.java
   139     sun/security/util/Resources_zh_HK.java
   391 
   140 
   392 ZH_HK_JAVA_FILES := $(addprefix $(JDK_OUTPUTDIR)/gensrc/, $(ZH_HK_JAVA))
   141 ZH_HK_JAVA_FILES := $(addprefix $(JDK_OUTPUTDIR)/gensrc/, $(ZH_HK_JAVA)) \
       
   142     $(filter-out $(JDK_OUTPUTDIR)/gensrc/sun/util/resources/zh/%, \
       
   143     $(subst _zh_TW,_zh_HK,$(filter %_zh_TW.java, $(ALL_COMPILED_PROPJAVAS))))
   393 
   144 
       
   145 ################################################################################
   394 
   146 
   395 GENSRC_PROPERTIES := $(ALL_COMPILED_PROPJAVAS) $(ALL_CLEANED_PROPOUTPUT) $(ZH_HK_JAVA_FILES)
   147 GENSRC_PROPERTIES := $(ALL_COMPILED_PROPJAVAS) $(ZH_HK_JAVA_FILES)