2016-01-16 12:01:44 +00:00
|
|
|
#
|
2024-04-26 19:47:06 +00:00
|
|
|
# Copyright (c) 2011, 2024, Oracle and/or its affiliates. All rights reserved.
|
2016-01-16 12:01:44 +00:00
|
|
|
# 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.
|
|
|
|
#
|
|
|
|
|
|
|
|
default: all
|
|
|
|
|
|
|
|
include $(SPEC)
|
|
|
|
include MakeBase.gmk
|
2024-04-11 14:15:34 +00:00
|
|
|
|
|
|
|
include CopyFiles.gmk
|
2016-01-16 12:01:44 +00:00
|
|
|
include JavaCompilation.gmk
|
2018-11-28 09:00:41 +00:00
|
|
|
include TextFileProcessing.gmk
|
2016-01-16 12:01:44 +00:00
|
|
|
|
2017-04-26 12:35:05 +00:00
|
|
|
################################################################################
|
|
|
|
|
2017-10-05 10:41:06 +00:00
|
|
|
$(eval $(call IncludeCustomExtension, CompileTools.gmk))
|
2017-03-20 11:38:52 +00:00
|
|
|
|
2016-01-16 12:01:44 +00:00
|
|
|
################################################################################
|
|
|
|
|
2017-03-20 11:38:52 +00:00
|
|
|
# Use += to be able to add to this from a custom extension
|
|
|
|
BUILD_TOOLS_SRC_DIRS += \
|
2017-09-12 17:03:56 +00:00
|
|
|
$(TOPDIR)/make/jdk/src/classes \
|
2019-07-26 15:56:28 +00:00
|
|
|
$(BUILDTOOLS_OUTPUTDIR)/interim_tzdb_classes \
|
2017-03-20 11:38:52 +00:00
|
|
|
#
|
|
|
|
|
2020-03-23 09:26:13 +00:00
|
|
|
$(eval $(call SetupJavaCompilation, BUILD_TOOLS_JDK, \
|
2020-04-29 06:49:17 +00:00
|
|
|
TARGET_RELEASE := $(TARGET_RELEASE_BOOTJDK), \
|
2017-03-20 11:38:52 +00:00
|
|
|
SRC := $(BUILD_TOOLS_SRC_DIRS), \
|
2017-10-19 12:16:45 +00:00
|
|
|
EXCLUDES := \
|
2018-10-17 12:19:21 +00:00
|
|
|
build/tools/classlist \
|
2017-10-19 12:16:45 +00:00
|
|
|
build/tools/deps \
|
|
|
|
build/tools/docs \
|
|
|
|
build/tools/jigsaw \
|
2024-09-03 15:31:09 +00:00
|
|
|
build/tools/depend, \
|
2017-10-19 12:16:45 +00:00
|
|
|
BIN := $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes, \
|
2024-04-26 19:47:06 +00:00
|
|
|
DISABLED_WARNINGS := dangling-doc-comments options, \
|
2020-04-29 06:49:17 +00:00
|
|
|
JAVAC_FLAGS := \
|
2017-10-19 12:16:45 +00:00
|
|
|
--add-exports java.desktop/sun.awt=ALL-UNNAMED \
|
2020-05-06 11:25:59 +00:00
|
|
|
--add-exports java.base/sun.text=ALL-UNNAMED \
|
2023-04-25 04:16:58 +00:00
|
|
|
--add-exports java.base/sun.security.util=ALL-UNNAMED \
|
|
|
|
--add-exports jdk.internal.opt/jdk.internal.opt=jdk.compiler.interim \
|
|
|
|
--add-exports jdk.internal.opt/jdk.internal.opt=jdk.javadoc.interim, \
|
2017-10-19 12:16:45 +00:00
|
|
|
))
|
2016-01-16 12:01:44 +00:00
|
|
|
|
|
|
|
TARGETS += $(BUILD_TOOLS_JDK)
|
|
|
|
|
2024-09-03 15:31:09 +00:00
|
|
|
$(eval $(call SetupCopyFiles, COPY_NIMBUS_TEMPLATES, \
|
2017-09-12 17:03:56 +00:00
|
|
|
SRC := $(TOPDIR)/src/java.desktop/share/classes/javax/swing/plaf/nimbus, \
|
2016-01-16 12:01:44 +00:00
|
|
|
DEST := $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes/build/tools/generatenimbus/resources, \
|
2024-09-03 15:31:09 +00:00
|
|
|
FILES := $(wildcard $(TOPDIR)/src/java.desktop/share/classes/javax/swing/plaf/nimbus/*.template), \
|
|
|
|
))
|
2016-01-16 12:01:44 +00:00
|
|
|
|
|
|
|
TARGETS += $(COPY_NIMBUS_TEMPLATES)
|
|
|
|
|
2024-09-03 15:31:09 +00:00
|
|
|
$(eval $(call SetupCopyFiles, COPY_CLDRCONVERTER_PROPERTIES, \
|
2023-03-02 18:31:53 +00:00
|
|
|
SRC := $(TOPDIR)/make/jdk/src/classes/build/tools/cldrconverter, \
|
|
|
|
DEST := $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes/build/tools/cldrconverter, \
|
2024-09-03 15:31:09 +00:00
|
|
|
FILES := $(wildcard $(TOPDIR)/make/jdk/src/classes/build/tools/cldrconverter/*.properties), \
|
|
|
|
))
|
2023-03-02 18:31:53 +00:00
|
|
|
|
|
|
|
TARGETS += $(COPY_CLDRCONVERTER_PROPERTIES)
|
|
|
|
|
2016-01-16 12:01:44 +00:00
|
|
|
################################################################################
|
|
|
|
|
2017-10-20 11:33:35 +00:00
|
|
|
$(eval $(call SetupJavaCompilation, COMPILE_DEPEND, \
|
2020-04-29 06:49:17 +00:00
|
|
|
TARGET_RELEASE := $(TARGET_RELEASE_BOOTJDK), \
|
2017-10-20 11:33:35 +00:00
|
|
|
SRC := $(TOPDIR)/make/jdk/src/classes, \
|
|
|
|
INCLUDES := build/tools/depend, \
|
|
|
|
BIN := $(BUILDTOOLS_OUTPUTDIR)/depend, \
|
2020-04-29 06:49:17 +00:00
|
|
|
DISABLED_WARNINGS := options, \
|
2022-09-21 10:27:58 +00:00
|
|
|
JAVAC_FLAGS := \
|
|
|
|
--add-exports jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED \
|
|
|
|
--add-exports jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED \
|
|
|
|
--add-exports jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED \
|
|
|
|
--add-exports jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED \
|
|
|
|
--add-exports jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED \
|
2023-04-25 04:16:58 +00:00
|
|
|
--add-exports jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED \
|
|
|
|
--add-exports jdk.internal.opt/jdk.internal.opt=jdk.compiler.interim \
|
|
|
|
--add-exports jdk.internal.opt/jdk.internal.opt=jdk.javadoc.interim, \
|
2017-10-20 11:33:35 +00:00
|
|
|
))
|
|
|
|
|
|
|
|
DEPEND_SERVICE_PROVIDER := $(BUILDTOOLS_OUTPUTDIR)/depend/META-INF/services/com.sun.source.util.Plugin
|
|
|
|
|
|
|
|
$(DEPEND_SERVICE_PROVIDER):
|
|
|
|
$(call MakeDir, $(BUILDTOOLS_OUTPUTDIR)/depend/META-INF/services)
|
|
|
|
$(ECHO) build.tools.depend.Depend > $@
|
|
|
|
|
|
|
|
TARGETS += $(COMPILE_DEPEND) $(DEPEND_SERVICE_PROVIDER)
|
|
|
|
|
|
|
|
################################################################################
|
|
|
|
|
2018-11-28 09:00:41 +00:00
|
|
|
# To be able to call the javascript filter when generating man pages using
|
|
|
|
# pandoc, we need to create this executable wrapper script.
|
2019-01-23 09:23:05 +00:00
|
|
|
ifeq ($(ENABLE_PANDOC), true)
|
2018-12-11 14:18:57 +00:00
|
|
|
# PANDOC_TROFF_MANPAGE_FILTER is duplicated for export in ToolsJdk.gmk.
|
|
|
|
PANDOC_TROFF_MANPAGE_FILTER := \
|
|
|
|
$(BUILDTOOLS_OUTPUTDIR)/manpages/pandoc-troff-manpage-filter
|
|
|
|
PANDOC_TROFF_MANPAGE_FILTER_SETUP := \
|
|
|
|
$(BUILDTOOLS_OUTPUTDIR)/manpages/_pandoc_troff_manpage_filter_setup.marker
|
2018-11-28 09:00:41 +00:00
|
|
|
|
|
|
|
# Create a usable instance of the wrapper script that calls the pandoc filter
|
|
|
|
# (which is written in javascript).
|
2018-12-11 14:18:57 +00:00
|
|
|
$(eval $(call SetupTextFileProcessing, CREATE_PANDOC_TROFF_MANPAGE_FILTER, \
|
|
|
|
SOURCE_FILES := $(TOPDIR)/make/scripts/pandoc-troff-manpage-filter.sh.template, \
|
|
|
|
OUTPUT_FILE := $(PANDOC_TROFF_MANPAGE_FILTER), \
|
2018-11-28 09:00:41 +00:00
|
|
|
REPLACEMENTS := \
|
2020-06-06 00:04:21 +00:00
|
|
|
@@JAVA_SMALL@@ => $(JAVA_SMALL) ; \
|
|
|
|
@@BUILDTOOLS_OUTPUTDIR@@ => $(BUILDTOOLS_OUTPUTDIR) ; \
|
2018-11-28 09:00:41 +00:00
|
|
|
))
|
|
|
|
|
|
|
|
# Created script must be made executable
|
2018-12-11 14:18:57 +00:00
|
|
|
$(PANDOC_TROFF_MANPAGE_FILTER_SETUP): $(CREATE_PANDOC_TROFF_MANPAGE_FILTER)
|
|
|
|
$(CHMOD) a+rx $(PANDOC_TROFF_MANPAGE_FILTER)
|
2018-11-28 09:00:41 +00:00
|
|
|
$(TOUCH) $@
|
|
|
|
|
2018-12-11 14:18:57 +00:00
|
|
|
TARGETS += $(PANDOC_TROFF_MANPAGE_FILTER_SETUP)
|
|
|
|
|
|
|
|
# PANDOC_HTML_MANPAGE_FILTER is duplicated for export in ToolsJdk.gmk.
|
|
|
|
PANDOC_HTML_MANPAGE_FILTER := \
|
|
|
|
$(BUILDTOOLS_OUTPUTDIR)/manpages/pandoc-html-manpage-filter
|
|
|
|
PANDOC_HTML_MANPAGE_FILTER_SETUP := \
|
|
|
|
$(BUILDTOOLS_OUTPUTDIR)/manpages/_pandoc_html_manpage_filter_setup.marker
|
|
|
|
|
|
|
|
# Create a usable instance of the wrapper script that calls the pandoc filter
|
|
|
|
# (which is written in javascript).
|
|
|
|
$(eval $(call SetupTextFileProcessing, CREATE_PANDOC_HTML_MANPAGE_FILTER, \
|
|
|
|
SOURCE_FILES := $(TOPDIR)/make/scripts/pandoc-html-manpage-filter.sh.template, \
|
|
|
|
OUTPUT_FILE := $(PANDOC_HTML_MANPAGE_FILTER), \
|
|
|
|
REPLACEMENTS := \
|
2020-06-06 00:04:21 +00:00
|
|
|
@@JAVA_SMALL@@ => $(JAVA_SMALL) ; \
|
|
|
|
@@BUILDTOOLS_OUTPUTDIR@@ => $(BUILDTOOLS_OUTPUTDIR) ; \
|
2018-12-11 14:18:57 +00:00
|
|
|
))
|
|
|
|
|
|
|
|
# Created script must be made executable
|
|
|
|
$(PANDOC_HTML_MANPAGE_FILTER_SETUP): $(CREATE_PANDOC_HTML_MANPAGE_FILTER)
|
|
|
|
$(CHMOD) a+rx $(PANDOC_HTML_MANPAGE_FILTER)
|
|
|
|
$(TOUCH) $@
|
|
|
|
|
|
|
|
TARGETS += $(PANDOC_HTML_MANPAGE_FILTER_SETUP)
|
2018-11-28 09:00:41 +00:00
|
|
|
endif
|
|
|
|
|
2016-01-16 12:01:44 +00:00
|
|
|
all: $(TARGETS)
|