jdk/makefiles/common/internal/Resources.gmk
changeset 13254 529a896a6b36
parent 13251 58f0a0823496
parent 13220 086271e35b0a
child 13255 2a310dd80800
--- a/jdk/makefiles/common/internal/Resources.gmk	Mon Jul 16 16:30:11 2012 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,262 +0,0 @@
-#
-# Copyright (c) 1997, 2010, 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.
-#
-
-# 
-# Generic mechanism for installing properties files, resource bundles,
-#   and other resource files.
-#
-# FILES_properties should be defined.
-# FILES_compiled_properties should be defined.
-# 
-# If COMPILED_PROPERTIES_SUPERCLASS is defined, ALL the FILES_properties
-# files will be compiled into java with this super class.
-#
-# You can add locales to LOCALE_SUFFIXES explicitly, or use the
-# LOCALE_SET_DEFINITION variable to add some pre-defined locale lists.
-# The LOCALE_SET_DEFINITION can have the value: jre, plugin, or jdk.
-#
-# Resource bundles to be installed are identified using the following variables.
-# Note that only the file name of the base bundle is given; localized versions
-# are added automatically. For Java files, use a format suitable for inclusion
-# in the FILES_java list; dito for properties, all relative paths.
-#
-#   NEW_RESOURCE_BUNDLES_JAVA        - new resource bundles implemented in
-#                                      Java, not localized
-#   RESOURCE_BUNDLES_JAVA            - resource bundles implemented in
-#                                      Java, localized
-#
-# The following variable is now used for most .properties files in the JDK. 
-# These properties files are converted into java and compiled with javac.
-# The resulting .class files are usually smaller and are always faster to load. 
-# The relative path to the properties file becomes a relative path to a
-# java source file.
-#
-#   RESOURCE_BUNDLES_COMPILED_PROPERTIES - resource bundles implemented as
-#                                          properties files, localized
-#   NEW_RESOURCE_BUNDLES_COMPILED_PROPERTIES - same as above, not localized
-#
-# For non-compiled properties files, use the following variables:
-#
-#   NEW_RESOURCE_BUNDLES_UNCOMPILED_PROPERTIES  - new resource bundles implemented as
-#                                      properties files, not localized
-#   RESOURCE_BUNDLES_UNCOMPILED_PROPERTIES      - resource bundles implemented as
-#                                      properties files, localized
-#
-# Other properties files to be installed are identified using the variable:
-#
-#   OTHER_PROPERTIES
-#
-
-include $(SPEC)
-include $(SRC_ROOT)/jdk/makefiles/Tools.gmk
-
-# Compile properties files into java source?
-ifdef COMPILED_PROPERTIES_SUPERCLASS
-  # Add all properties files to the compiled properties list (all or nothing)
-  COMPILED_PROPERTIES += $(FILES_compiled_properties) $(FILES_properties)
-else
-  COMPILED_PROPERTIES_SUPERCLASS = ListResourceBundle
-  COMPILED_PROPERTIES += $(FILES_compiled_properties)
-endif
-
-# Determine the locale suffixes needed beyond the base bundle
-
-ifeq ($(LOCALE_SET_DEFINITION), plugin)
-  LOCALE_SUFFIXES += $(PLUGIN_LOCALES)
-endif
-ifeq ($(LOCALE_SET_DEFINITION), jdk)
-  LOCALE_SUFFIXES += $(JDK_LOCALES)
-endif
-ifeq ($(LOCALE_SET_DEFINITION), jre)
-  LOCALE_SUFFIXES += $(JRE_LOCALES)
-endif
-
-# Java files get tacked onto the standard list of files to compile
-RESOURCE_BUNDLE_FILES_java += $(NEW_RESOURCE_BUNDLES_JAVA)
-RESOURCE_BUNDLE_FILES_java += $(RESOURCE_BUNDLES_JAVA) \
-    $(foreach file,$(RESOURCE_BUNDLES_JAVA), \
-       $(foreach locale,$(LOCALE_SUFFIXES), \
-	  $(basename $(file))_$(locale).java))
-
-# Add to java sources list
-FILES_java += $(RESOURCE_BUNDLE_FILES_java)
-
-# Compiled properties files are translated to .java.
-#   The .java files are generated into GENSRCDIR.
-COMPILED_PROPERTIES += $(NEW_RESOURCE_BUNDLES_COMPILED_PROPERTIES)
-COMPILED_PROPERTIES += $(RESOURCE_BUNDLES_COMPILED_PROPERTIES) \
-    $(foreach file,$(RESOURCE_BUNDLES_COMPILED_PROPERTIES),\
-      $(foreach locale,$(LOCALE_SUFFIXES),\
-	 $(basename $(file))_$(locale)$(suffix $(file))))
-
-# Add to java sources list
-FILES_java += $(COMPILED_PROPERTIES:%.properties=%.java)
-
-# Non-compiled files
-PROPERTIES_FILES += $(NEW_RESOURCE_BUNDLES_UNCOMPILED_PROPERTIES)
-PROPERTIES_FILES += $(RESOURCE_BUNDLES_UNCOMPILED_PROPERTIES) \
-    $(foreach file,$(RESOURCE_BUNDLES_UNCOMPILED_PROPERTIES), \
-       $(foreach locale,$(LOCALE_SUFFIXES), \
-	  $(basename $(file))_$(locale)$(suffix $(file))))
-# other properties
-PROPERTIES_FILES += $(OTHER_PROPERTIES)
-
-#
-# Process and strip all non-compiled properties files (in a batch mode)
-#
-STRIP_PROP_FILES = $(PROPERTIES_FILES:%=$(CLASSDESTDIR)/%)
-# To efficiently strip properties we use one run of StripProperties. 
-# This macro gathers an option for use later.
-STRIP_PROP_options=$(TEMPDIR)/strip_prop_options
-define install-properties-file
-$(install-file)
-$(call chmod-file, a+rw)
-@$(ECHO) "# Adding to strip properties list: $@"
-$(ECHO) "$@" >> $(STRIP_PROP_options)
-endef
-
-# Constructs command line options file
-$(STRIP_PROP_options): $(STRIP_PROP_FILES)
-	@$(TOUCH) $@
-strip_prop_options_clean:
-	@$(RM) $(STRIP_PROP_options)
-
-# Strip the properties files
-strip_all_props: $(BUILD_TOOLS) $(STRIP_PROP_options)
-	@if [ -s $(STRIP_PROP_options) ] ; then \
-          $(ECHO) "$(TOOL_STRIPPROPERTIES) @$(STRIP_PROP_options)" ; \
-          $(TOOL_STRIPPROPERTIES) @$(STRIP_PROP_options) ; \
-        fi
-	@$(java-vm-cleanup)
-
-#
-# Creates files in CLASSDESTDIR
-#
-
-# In some cases, we move files from package to resources subdir
-$(CLASSDESTDIR)/$(PKGDIR)/resources/%.properties: \
-	     $(SHARE_SRC)/classes/$(PKGDIR)/%.properties
-	$(install-properties-file)
-$(CLASSDESTDIR)/%.properties: $(SHARE_SRC)/classes/%.properties
-	$(install-properties-file)
-$(CLASSDESTDIR)/%.res: $(SHARE_SRC)/classes/%.res
-	$(install-file)
-$(CLASSDESTDIR)/%.dtd: $(SHARE_SRC)/classes/%.dtd
-	$(install-file)
-$(CLASSDESTDIR)/%.xml: $(SHARE_SRC)/classes/%.xml
-	$(install-file)
-$(CLASSDESTDIR)/%.prp: $(SHARE_SRC)/classes/%.prp
-	$(install-file)
-
-#
-# To efficiently compile properties into java sources we use one run
-#   of compileproperties. This macro gathers an option for use later.
-#   Note: The properties file and java source name can be different
-#         locales, e.g. zh_TW and zh_HK. The java source filename
-#         determines the name of the class.
-COMPILE_PROP_options=$(TEMPDIR)/compile_prop_options
-define add-property-java-file
-@$(prep-target)
-@$(ECHO) "# Adding to compile properties list: $? -> $@"
-$(ECHO) "-compile $? $@ $(COMPILED_PROPERTIES_SUPERCLASS)" \
-   >> $(COMPILE_PROP_options)
-endef
-
-$(GENSRCDIR)/%.java: $(PLATFORM_SRC)/classes/%.properties
-	$(add-property-java-file)
-$(GENSRCDIR)/%.java: $(SHARE_SRC)/classes/%.properties
-	$(add-property-java-file)
-$(GENSRCDIR)/%.java: $(GENSRCDIR)/%.properties
-	$(add-property-java-file)
-ifndef OPENJDK
-$(GENSRCDIR)/%.java: $(CLOSED_PLATFORM_SRC)/classes/%.properties
-	$(add-property-java-file)
-$(GENSRCDIR)/%.java: $(CLOSED_SHARE_SRC)/classes/%.properties
-	$(add-property-java-file)
-endif
-
-# Create HK java file from zh_TW (explicit resource bundles only)
-define create-hk-java-file
-@$(prep-target)
-$(CAT) $< | $(SED) -e '/class/s/_zh_TW/_zh_HK/' > $@
-endef
-
-# Explicit resource bundles
-$(GENSRCDIR)/%_zh_HK.java: $(PLATFORM_SRC)/classes/%_zh_TW.java
-	$(create-hk-java-file)
-$(GENSRCDIR)/%_zh_HK.java: $(SHARE_SRC)/classes/%_zh_TW.java
-	$(create-hk-java-file)
-
-# Compile of zh_HK properties just uses the zh_TW properties files
-$(GENSRCDIR)/%_zh_HK.java: $(PLATFORM_SRC)/classes/%_zh_TW.properties
-	$(add-property-java-file)
-$(GENSRCDIR)/%_zh_HK.java: $(SHARE_SRC)/classes/%_zh_TW.properties
-	$(add-property-java-file)
-
-# Simple delivery of zh_HK properties files just copies zh_TW properties files
-$(CLASSDESTDIR)/%_zh_HK.properties: \
-             $(PLATFORM_SRC)/classes/%_zh_TW.properties
-	$(install-properties-file)
-$(CLASSDESTDIR)/%_zh_HK.properties: \
-             $(SHARE_SRC)/classes/%_zh_TW.properties
-	$(install-properties-file)
-
-# List of java files converted from properties files needed
-COMPILE_PROP_JAVA_FILES = $(COMPILED_PROPERTIES:%.properties=$(GENSRCDIR)/%.java)
-
-# Constructs command line options file
-$(COMPILE_PROP_options): $(COMPILE_PROP_JAVA_FILES)
-	@$(TOUCH) $@
-compile_prop_options_clean:
-	@$(RM) $(COMPILE_PROP_options)
-
-# Make sure all are compiled, one compiler run
-compile_all_props: $(BUILD_TOOLS) $(COMPILE_PROP_options)
-	@if [ `$(CAT) $(COMPILE_PROP_options) | $(WC) -l` -ge 1 ] ; then \
-	  $(MKDIR) -p $(GENSRCDIR); \
-	  $(ECHO) "$(TOOL_COMPILEPROPERTIES) @$(COMPILE_PROP_options)";\
-	  $(TOOL_COMPILEPROPERTIES) @$(COMPILE_PROP_options) ; \
-	  $(java-vm-cleanup); \
-	fi
-
-# Make sure the build rule creates all the properties
-resources:
-
-ifneq ($(strip $(PROPERTIES_FILES)),)
-  resources: strip_prop_options_clean   strip_all_props
-  clobber clean:: 
-	$(RM) $(STRIP_PROP_FILES) $(STRIP_PROP_options)
-endif
-
-ifneq ($(strip $(COMPILED_PROPERTIES)),)
-  resources: compile_prop_options_clean compile_all_props
-  clobber clean:: 
-	$(RM) $(COMPILE_PROP_JAVA_FILES) $(COMPILE_PROP_options)
-endif
-
-.PHONY: resources \
-	compile_prop_options_clean compile_all_props \
-	strip_prop_options_clean   strip_all_props
-