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