1 #
  2 # Copyright (c) 2011, 2026, 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/GensrcValueClasses.gmk
 41 include gensrc/GensrcVarHandles.gmk
 42 
 43 ################################################################################
 44 
 45 CLDR_DATA_DIR := $(TOPDIR)/make/data/cldr/common
 46 GENSRC_DIR := $(SUPPORT_OUTPUTDIR)/gensrc/java.base
 47 CLDR_GEN_DONE := $(GENSRC_DIR)/_cldr-gensrc.marker
 48 TZ_DATA_DIR := $(MODULE_SRC)/share/data/tzdata
 49 ZONENAME_TEMPLATE := $(MODULE_SRC)/share/classes/java/time/format/ZoneName.java.template
 50 
 51 $(CLDR_GEN_DONE): $(wildcard $(CLDR_DATA_DIR)/dtd/*.dtd) \
 52     $(wildcard $(CLDR_DATA_DIR)/main/en*.xml) \
 53     $(wildcard $(CLDR_DATA_DIR)/supplemental/*.xml) \
 54     $(wildcard $(TZ_DATA_DIR)/*) \
 55     $(ZONENAME_TEMPLATE) \
 56     $(BUILD_TOOLS_JDK)
 57 	$(call MakeDir, $(GENSRC_DIR))
 58 	$(call LogInfo, Processing CLDR data for java.base)
 59 	$(call ExecuteWithLog, $@, \
 60 	    $(TOOL_CLDRCONVERTER) -base $(CLDR_DATA_DIR) \
 61 	    -baselocales "en-US" \
 62 	    -o $(GENSRC_DIR) \
 63 	    -basemodule \
 64 	    -year $(COPYRIGHT_YEAR) \
 65 	    -zntempfile $(ZONENAME_TEMPLATE) \
 66 	    -tzdatadir $(TZ_DATA_DIR))
 67 	$(TOUCH) $@
 68 
 69 TARGETS += $(CLDR_GEN_DONE)
 70 
 71 ################################################################################
 72 
 73 $(eval $(call SetupCompileProperties, LIST_RESOURCE_BUNDLE, \
 74     SRC_DIRS := $(MODULE_SRC)/share/classes/sun/launcher/resources, \
 75     CLASS := ListResourceBundle, \
 76 ))
 77 
 78 $(eval $(call SetupCompileProperties, SUN_UTIL, \
 79     SRC_DIRS := $(MODULE_SRC)/share/classes/sun/util/resources, \
 80     CLASS := sun.util.resources.LocaleNamesBundle, \
 81 ))
 82 
 83 $(eval $(call SetupCompileProperties, SECURITY_RESOURCES, \
 84     SRC_DIRS := $(MODULE_SRC)/share/classes/sun/security/util/resources, \
 85     CLASS := ListResourceBundle, \
 86 ))
 87 
 88 $(eval $(call SetupCompileProperties, KEYTOOL_RESOURCES, \
 89     SRC_DIRS := $(MODULE_SRC)/share/classes/sun/security/tools/keytool/resources, \
 90     CLASS := ListResourceBundle, \
 91 ))
 92 
 93 TARGETS += $(LIST_RESOURCE_BUNDLE) $(SUN_UTIL) $(SECURITY_RESOURCES) $(KEYTOOL_RESOURCES)
 94 
 95 ################################################################################
 96 
 97 GENSRC_LSREQUIVMAPS := $(SUPPORT_OUTPUTDIR)/gensrc/java.base/sun/util/locale/LocaleEquivalentMaps.java
 98 
 99 $(GENSRC_LSREQUIVMAPS): $(MODULE_SRC)/share/data/lsrdata/language-subtag-registry.txt $(BUILD_TOOLS_JDK)
100 	$(call MakeDir, $(@D))
101 	$(TOOL_GENERATELSREQUIVMAPS) $< $@ $(COPYRIGHT_YEAR)
102 
103 TARGETS += $(GENSRC_LSREQUIVMAPS)
104 
105 ################################################################################
106 
107 INTPOLY_GEN_DONE := $(GENSRC_DIR)/_intpoly-gensrc.marker
108 INTPOLY_HEADER := $(TOPDIR)/make/jdk/src/classes/build/tools/intpoly/header.txt
109 $(INTPOLY_GEN_DONE): $(INTPLOY_HEADER) $(BUILD_TOOLS_JDK)
110 	$(call MakeDir, $(GENSRC_DIR))
111 	$(call LogInfo, Generating fixed-field math classes for java.base)
112 	$(call ExecuteWithLog, $@, \
113 	    $(TOOL_INTPOLY) \
114 	    $(INTPOLY_HEADER) \
115 	    $(GENSRC_DIR)) $(LOG_DEBUG)
116 	$(TOUCH) $@
117 
118 TARGETS += $(INTPOLY_GEN_DONE)
119 
120 ################################################################################
121 
122 RELEASE_FILE_TEMPLATE := $(TOPDIR)/src/java.base/share/classes/jdk/internal/misc/resources/release.txt.template
123 RELEASE_FILE_TARGET := $(SUPPORT_OUTPUTDIR)/gensrc/$(MODULE)/jdk/internal/misc/resources/release.txt
124 
125 RELEASE_FILE_VARDEPS := $(COMPANY_NAME) $(VERSION_STRING) $(VERSION_DATE)
126 RELEASE_FILE_VARDEPS_FILE := $(call DependOnVariable, RELEASE_FILE_VARDEPS, \
127     $(SUPPORT_OUTPUTDIR)/gensrc/$(MODULE)/jlink_release_txt.vardeps)
128 
129 $(eval $(call SetupTextFileProcessing, BUILD_RELEASE_FILE, \
130     SOURCE_FILES := $(RELEASE_FILE_TEMPLATE), \
131     OUTPUT_FILE := $(RELEASE_FILE_TARGET), \
132     REPLACEMENTS := \
133         @@COMPANY_NAME@@ => $(COMPANY_NAME) ; \
134         @@VERSION_STRING@@ => $(VERSION_STRING) ; \
135         @@VERSION_DATE@@ => $(VERSION_DATE) , \
136 ))
137 
138 $(BUILD_RELEASE_FILE): $(RELEASE_FILE_VARDEPS_FILE)
139 
140 TARGETS += $(BUILD_RELEASE_FILE)
141 
142 ################################################################################