# # Copyright (c) 2011, 2026, 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. # include MakeIncludeStart.gmk ifeq ($(INCLUDE), true) ################################################################################ # Rules to create $(SUPPORT_OUTPUTDIR)/gensrc/java.base/sun/lang/CharacterData*.java ################################################################################ GENSRC_CHARACTERDATA := CHARACTERDATA_TEMPLATES = $(MODULE_SRC)/share/classes/java/lang UNICODEDATA = $(MODULE_SRC)/share/data/unicodedata SPECIALCASING = $(UNICODEDATA)/SpecialCasing.txt DERIVEDCOREPROPS = $(UNICODEDATA)/DerivedCoreProperties.txt PROPLIST = $(UNICODEDATA)/PropList.txt ifneq ($(DEBUG_LEVEL), release) ifeq ($(ALLOW_ABSOLUTE_PATHS_IN_OUTPUT), true) DEBUG_OPTION := -d endif endif define SetupCharacterData $(SUPPORT_OUTPUTDIR)/gensrc/java.base/java/lang/$1.java: \ $(CHARACTERDATA_TEMPLATES)/$1.java.template $$(call LogInfo, Generating $1.java) $$(call MakeDir, $$(@D)) $(TOOL_GENERATECHARACTER) $2 $(DEBUG_OPTION) \ -template $(CHARACTERDATA_TEMPLATES)/$1.java.template \ -spec $(UNICODEDATA)/UnicodeData.txt \ -specialcasing $(SPECIALCASING) \ -proplist $(PROPLIST) \ -derivedprops $(DERIVEDCOREPROPS) \ -emojidata $(UNICODEDATA)/emoji/emoji-data.txt \ -o $(SUPPORT_OUTPUTDIR)/gensrc/java.base/java/lang/$1.java \ -usecharforbyte $3 GENSRC_CHARACTERDATA += $(SUPPORT_OUTPUTDIR)/gensrc/java.base/java/lang/$1.java endef $(eval $(call SetupCharacterData,CharacterDataLatin1, , -latin1 8)) $(eval $(call SetupCharacterData,CharacterData00, -string -plane 0, 11 4 1)) $(eval $(call SetupCharacterData,CharacterData01, -string -plane 1, 11 4 1)) $(eval $(call SetupCharacterData,CharacterData02, -string -plane 2, 11 4 1)) $(eval $(call SetupCharacterData,CharacterData03, -string -plane 3, 11 4 1)) $(eval $(call SetupCharacterData,CharacterData0E, -string -plane 14, 11 4 1)) $(GENSRC_CHARACTERDATA): $(BUILD_TOOLS_JDK) TARGETS += $(GENSRC_CHARACTERDATA) ################################################################################ GENSRC_STRINGCASEFOLDING := $(SUPPORT_OUTPUTDIR)/gensrc/java.base/jdk/internal/lang/CaseFolding.java STRINGCASEFOLDING_TEMPLATE := $(MODULE_SRC)/share/classes/jdk/internal/lang/CaseFolding.java.template CASEFOLDINGTXT := $(MODULE_SRC)/share/data/unicodedata/CaseFolding.txt $(GENSRC_STRINGCASEFOLDING): $(BUILD_TOOLS_JDK) $(STRINGCASEFOLDING_TEMPLATE) $(CASEFOLDINGTXT) $(call LogInfo, Generating $@) $(call MakeTargetDir) $(TOOL_GENERATECASEFOLDING) \ $(STRINGCASEFOLDING_TEMPLATE) \ $(CASEFOLDINGTXT) \ $(GENSRC_STRINGCASEFOLDING) TARGETS += $(GENSRC_STRINGCASEFOLDING) ################################################################################ # Rule to create $(SUPPORT_OUTPUTDIR)/gensrc/java.base/java/lang/ConditionalSpecialCasing.java ################################################################################ GENSRC_CONDITIONALSPECIALCASING := $(SUPPORT_OUTPUTDIR)/gensrc/java.base/java/lang/ConditionalSpecialCasing.java GENSRC_CONDITIONALSPECIALCASING_SPECIALCASING_TMP := $(GENSRC_CONDITIONALSPECIALCASING).specialcasing.tmp GENSRC_CONDITIONALSPECIALCASING_PROPS_TMP := $(GENSRC_CONDITIONALSPECIALCASING).props.tmp CONDITIONALSPECIALCASINGTEMP := $(MODULE_SRC)/share/classes/java/lang/ConditionalSpecialCasing.java.template FINALSIGMAPARAMS := Cased Case_Ignorable SOFTDOTTEDPARAMS := Soft_Dotted $(GENSRC_CONDITIONALSPECIALCASING): $(BUILD_TOOLS_JDK) $(CONDITIONALSPECIALCASINGTEMP) \ $(SPECIALCASING) $(DERIVEDCOREPROPS) $(PROPLIST) $(call LogInfo, Generating $@) $(call MakeTargetDir) $(TOOL_GENERATESPECIALCASING) \ $(CONDITIONALSPECIALCASINGTEMP) \ $(SPECIALCASING) \ $(GENSRC_CONDITIONALSPECIALCASING_SPECIALCASING_TMP) $(TOOL_GENERATEEXTRAPROPERTIES) \ $(GENSRC_CONDITIONALSPECIALCASING_SPECIALCASING_TMP) \ $(DERIVEDCOREPROPS) \ $(GENSRC_CONDITIONALSPECIALCASING_PROPS_TMP) \ $(FINALSIGMAPARAMS) $(TOOL_GENERATEEXTRAPROPERTIES) \ $(GENSRC_CONDITIONALSPECIALCASING_PROPS_TMP) \ $(PROPLIST) \ $(GENSRC_CONDITIONALSPECIALCASING) \ $(SOFTDOTTEDPARAMS) $(RM) $(GENSRC_CONDITIONALSPECIALCASING_SPECIALCASING_TMP) $(RM) $(GENSRC_CONDITIONALSPECIALCASING_PROPS_TMP) TARGETS += $(GENSRC_CONDITIONALSPECIALCASING) endif # include guard include MakeIncludeEnd.gmk