1 #
  2 # Copyright (c) 2011, 2025, Oracle and/or its affiliates. All rights reserved.
  3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  4 #
  5 # This code is free software; you can redistribute it and/or modify it
  6 # under the terms of the GNU General Public License version 2 only, as
  7 # published by the Free Software Foundation.  Oracle designates this
  8 # particular file as subject to the "Classpath" exception as provided
  9 # by Oracle in the LICENSE file that accompanied this code.
 10 #
 11 # This code is distributed in the hope that it will be useful, but WITHOUT
 12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 13 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 14 # version 2 for more details (a copy is included in the LICENSE file that
 15 # accompanied this code).
 16 #
 17 # You should have received a copy of the GNU General Public License version
 18 # 2 along with this work; if not, write to the Free Software Foundation,
 19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 20 #
 21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 22 # or visit www.oracle.com if you need additional information or have any
 23 # questions.
 24 #
 25 
 26 ################################################################################
 27 
 28 include GensrcCommon.gmk
 29 include GensrcProperties.gmk
 30 include GensrcStreamPreProcessing.gmk
 31 
 32 include gensrc/GensrcBuffer.gmk
 33 include gensrc/GensrcCharacterData.gmk
 34 include gensrc/GensrcCharsetCoder.gmk
 35 include gensrc/GensrcCharsetMapping.gmk
 36 include gensrc/GensrcMisc.gmk
 37 include gensrc/GensrcModuleLoaderMap.gmk
 38 include gensrc/GensrcRegex.gmk
 39 include gensrc/GensrcScopedMemoryAccess.gmk
 40 include gensrc/GensrcVarHandles.gmk
 41 
 42 ################################################################################
 43 
 44 CLDR_DATA_DIR := $(TOPDIR)/make/data/cldr/common
 45 GENSRC_DIR := $(SUPPORT_OUTPUTDIR)/gensrc/java.base
 46 CLDR_GEN_DONE := $(GENSRC_DIR)/_cldr-gensrc.marker
 47 TZ_DATA_DIR := $(MODULE_SRC)/share/data/tzdata
 48 ZONENAME_TEMPLATE := $(MODULE_SRC)/share/classes/java/time/format/ZoneName.java.template
 49 
 50 # The `-utf8` option is used even for US English, as some names
 51 # may contain non-ASCII characters, such as “Türkiye”.
 52 $(CLDR_GEN_DONE): $(wildcard $(CLDR_DATA_DIR)/dtd/*.dtd) \
 53     $(wildcard $(CLDR_DATA_DIR)/main/en*.xml) \
 54     $(wildcard $(CLDR_DATA_DIR)/supplemental/*.xml) \
 55     $(wildcard $(TZ_DATA_DIR)/*) \
 56     $(ZONENAME_TEMPLATE) \
 57     $(BUILD_TOOLS_JDK)
 58 	$(call MakeDir, $(GENSRC_DIR))
 59 	$(call LogInfo, Processing CLDR data for java.base)
 60 	$(call ExecuteWithLog, $@, \
 61 	    $(TOOL_CLDRCONVERTER) -base $(CLDR_DATA_DIR) \
 62 	    -baselocales "en-US" \
 63 	    -o $(GENSRC_DIR) \
 64 	    -basemodule \
 65 	    -year $(COPYRIGHT_YEAR) \
 66 	    -zntempfile $(ZONENAME_TEMPLATE) \
 67 	    -tzdatadir $(TZ_DATA_DIR) \
 68 	    -utf8)
 69 	$(TOUCH) $@
 70 
 71 TARGETS += $(CLDR_GEN_DONE)
 72 
 73 ################################################################################
 74 
 75 $(eval $(call SetupCompileProperties, LIST_RESOURCE_BUNDLE, \
 76     SRC_DIRS := $(MODULE_SRC)/share/classes/sun/launcher/resources, \
 77     CLASS := ListResourceBundle, \
 78 ))
 79 
 80 $(eval $(call SetupCompileProperties, SUN_UTIL, \
 81     SRC_DIRS := $(MODULE_SRC)/share/classes/sun/util/resources, \
 82     CLASS := sun.util.resources.LocaleNamesBundle, \
 83 ))
 84 
 85 $(eval $(call SetupCompileProperties, SECURITY_RESOURCES, \
 86     SRC_DIRS := $(MODULE_SRC)/share/classes/sun/security/util/resources, \
 87     CLASS := ListResourceBundle, \
 88 ))
 89 
 90 $(eval $(call SetupCompileProperties, KEYTOOL_RESOURCES, \
 91     SRC_DIRS := $(MODULE_SRC)/share/classes/sun/security/tools/keytool/resources, \
 92     CLASS := ListResourceBundle, \
 93 ))
 94 
 95 TARGETS += $(LIST_RESOURCE_BUNDLE) $(SUN_UTIL) $(SECURITY_RESOURCES) $(KEYTOOL_RESOURCES)
 96 
 97 ################################################################################
 98 
 99 GENSRC_LSREQUIVMAPS := $(SUPPORT_OUTPUTDIR)/gensrc/java.base/sun/util/locale/LocaleEquivalentMaps.java
100 
101 $(GENSRC_LSREQUIVMAPS): $(MODULE_SRC)/share/data/lsrdata/language-subtag-registry.txt $(BUILD_TOOLS_JDK)
102 	$(call MakeDir, $(@D))
103 	$(TOOL_GENERATELSREQUIVMAPS) $< $@ $(COPYRIGHT_YEAR)
104 
105 TARGETS += $(GENSRC_LSREQUIVMAPS)
106 
107 ################################################################################
108 
109 INTPOLY_GEN_DONE := $(GENSRC_DIR)/_intpoly-gensrc.marker
110 INTPOLY_HEADER := $(TOPDIR)/make/jdk/src/classes/build/tools/intpoly/header.txt
111 $(INTPOLY_GEN_DONE): $(INTPLOY_HEADER) $(BUILD_TOOLS_JDK)
112 	$(call MakeDir, $(GENSRC_DIR))
113 	$(call LogInfo, Generating fixed-field math classes for java.base)
114 	$(call ExecuteWithLog, $@, \
115 	    $(TOOL_INTPOLY) \
116 	    $(INTPOLY_HEADER) \
117 	    $(GENSRC_DIR)) $(LOG_DEBUG)
118 	$(TOUCH) $@
119 
120 TARGETS += $(INTPOLY_GEN_DONE)
121 
122 ################################################################################