Skip to content

Commit 65bf618

Browse files
committed
Merge
2 parents 5e912fb + 0532bd2 commit 65bf618

File tree

1,158 files changed

+30097
-27851
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,158 files changed

+30097
-27851
lines changed

.hgtags

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -619,3 +619,6 @@ c7d4f2849dbfb755fc5860b362a4044ea0c9e082 jdk-15+8
619619
4a87bb7ebfd7f6a25ec59a5982fe3607242777f8 jdk-14+35
620620
62b5bfef8d618e08e6f3a56cf1fb0e67e89e9cc2 jdk-15+9
621621
bc54620a3848c26cff9766e5e2a6e5ddab98ed18 jdk-14+36
622+
1bee69801aeea1a34261c93f35bc9de072a98704 jdk-15+10
623+
b2dd4028a6de4e40dda8b76109e4b5c6b294f980 jdk-15+11
624+
2ec0ff3042630ddbd3587e340fe0dd40391cb6c4 jdk-15+12

bin/idea.sh

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/sh
22
#
3-
# Copyright (c) 2009, 2018, Oracle and/or its affiliates. All rights reserved.
3+
# Copyright (c) 2009, 2020, Oracle and/or its affiliates. All rights reserved.
44
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
55
#
66
# This code is free software; you can redistribute it and/or modify it
@@ -113,6 +113,14 @@ if [ "x$SPEC" = "x" ] ; then
113113
echo "FATAL: SPEC is empty" >&2; exit 1
114114
fi
115115

116+
if [ -d "$TOPLEVEL_DIR/.hg" ] ; then
117+
VCS_TYPE="hg4idea"
118+
fi
119+
120+
if [ -d "$TOPLEVEL_DIR/.git" ] ; then
121+
VCS_TYPE="Git"
122+
fi
123+
116124
### Replace template variables
117125

118126
NUM_REPLACEMENTS=0
@@ -137,6 +145,7 @@ add_replacement() {
137145
}
138146

139147
add_replacement "###MODULE_NAMES###" "$MODULE_NAMES"
148+
add_replacement "###VCS_TYPE###" "$VCS_TYPE"
140149
SPEC_DIR=`dirname $SPEC`
141150
if [ "x$CYGPATH" = "x" ]; then
142151
add_replacement "###BUILD_DIR###" "$SPEC_DIR"

doc/building.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -473,7 +473,7 @@ <h4 id="configure-arguments-for-tailoring-the-build">Configure Arguments for Tai
473473
<li><code>--with-version-string=&lt;string&gt;</code> - Specify the version string this build will be identified with.</li>
474474
<li><code>--with-version-&lt;part&gt;=&lt;value&gt;</code> - A group of options, where <code>&lt;part&gt;</code> can be any of <code>pre</code>, <code>opt</code>, <code>build</code>, <code>major</code>, <code>minor</code>, <code>security</code> or <code>patch</code>. Use these options to modify just the corresponding part of the version string from the default, or the value provided by <code>--with-version-string</code>.</li>
475475
<li><code>--with-jvm-variants=&lt;variant&gt;[,&lt;variant&gt;...]</code> - Build the specified variant (or variants) of Hotspot. Valid variants are: <code>server</code>, <code>client</code>, <code>minimal</code>, <code>core</code>, <code>zero</code>, <code>custom</code>. Note that not all variants are possible to combine in a single build.</li>
476-
<li><code>--with-jvm-features=&lt;feature&gt;[,&lt;feature&gt;...]</code> - Use the specified JVM features when building Hotspot. The list of features will be enabled on top of the default list. For the <code>custom</code> JVM variant, this default list is empty. A complete list of available JVM features can be found using <code>bash configure --help</code>.</li>
476+
<li><code>--enable-jvm-feature-&lt;feature&gt;</code> or <code>--disable-jvm-feature-&lt;feature&gt;</code> - Include (or exclude) <code>&lt;feature&gt;</code> as a JVM feature in Hotspot. You can also specify a list of features to be enabled, separated by space or comma, as <code>--with-jvm-features=&lt;feature&gt;[,&lt;feature&gt;...]</code>. If you prefix <code>&lt;feature&gt;</code> with a <code>-</code>, it will be disabled. These options will modify the default list of features for the JVM variant(s) you are building. For the <code>custom</code> JVM variant, the default list is empty. A complete list of valid JVM features can be found using <code>bash configure --help</code>.</li>
477477
<li><code>--with-target-bits=&lt;bits&gt;</code> - Create a target binary suitable for running on a <code>&lt;bits&gt;</code> platform. Use this to create 32-bit output on a 64-bit build platform, instead of doing a full cross-compile. (This is known as a <em>reduced</em> build.)</li>
478478
</ul>
479479
<p>On Linux, BSD and AIX, it is possible to override where Java by default searches for runtime/JNI libraries. This can be useful in situations where there is a special shared directory for system JNI libraries. This setting can in turn be overriden at runtime by setting the <code>java.library.path</code> property.</p>

doc/building.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -684,11 +684,14 @@ features, use `bash configure --help=short` instead.)
684684
(or variants) of Hotspot. Valid variants are: `server`, `client`,
685685
`minimal`, `core`, `zero`, `custom`. Note that not all
686686
variants are possible to combine in a single build.
687-
* `--with-jvm-features=<feature>[,<feature>...]` - Use the specified JVM
688-
features when building Hotspot. The list of features will be enabled on top
689-
of the default list. For the `custom` JVM variant, this default list is
690-
empty. A complete list of available JVM features can be found using `bash
691-
configure --help`.
687+
* `--enable-jvm-feature-<feature>` or `--disable-jvm-feature-<feature>` -
688+
Include (or exclude) `<feature>` as a JVM feature in Hotspot. You can also
689+
specify a list of features to be enabled, separated by space or comma, as
690+
`--with-jvm-features=<feature>[,<feature>...]`. If you prefix `<feature>`
691+
with a `-`, it will be disabled. These options will modify the default list
692+
of features for the JVM variant(s) you are building. For the `custom` JVM
693+
variant, the default list is empty. A complete list of valid JVM features
694+
can be found using `bash configure --help`.
692695
* `--with-target-bits=<bits>` - Create a target binary suitable for running
693696
on a `<bits>` platform. Use this to create 32-bit output on a 64-bit build
694697
platform, instead of doing a full cross-compile. (This is known as a

make/Bundles.gmk

Lines changed: 128 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
33
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
#
55
# This code is free software; you can redistribute it and/or modify it
@@ -125,6 +125,13 @@ define SetupBundleFileBody
125125
&& $(TAR) cf - -$(TAR_INCLUDE_PARAM) $$($1_$$d_LIST_FILE) \
126126
$(TAR_IGNORE_EXIT_VALUE) ) \
127127
| ( $(CD) $(SUPPORT_OUTPUTDIR)/bundles/$1/$$($1_SUBDIR) && $(TAR) xf - )$$(NEWLINE) )
128+
# Rename stripped pdb files
129+
ifeq ($(call isTargetOs, windows)+$(SHIP_DEBUG_SYMBOLS), true+public)
130+
for f in `$(FIND) $(SUPPORT_OUTPUTDIR)/bundles/$1/$$($1_SUBDIR) -name "*.stripped.pdb"`; do \
131+
$(ECHO) Renaming $$$${f} to $$$${f%stripped.pdb}pdb $(LOG_INFO); \
132+
$(MV) $$$${f} $$$${f%stripped.pdb}pdb; \
133+
done
134+
endif
128135
# Unzip any zipped debuginfo files
129136
ifeq ($$($1_UNZIP_DEBUGINFO), true)
130137
for f in `$(FIND) $(SUPPORT_OUTPUTDIR)/bundles/$1/$$($1_SUBDIR) -name "*.diz"`; do \
@@ -183,7 +190,7 @@ endif
183190

184191
ifneq ($(filter product-bundles% legacy-bundles, $(MAKECMDGOALS)), )
185192

186-
SYMBOLS_EXCLUDE_PATTERN := %.debuginfo %.diz %.pdb %.map
193+
SYMBOLS_EXCLUDE_PATTERN := %.debuginfo %.diz %.map
187194

188195
# There may be files with spaces in the names, so use ShellFindFiles
189196
# explicitly.
@@ -209,6 +216,21 @@ ifneq ($(filter product-bundles% legacy-bundles, $(MAKECMDGOALS)), )
209216
endif
210217
endif
211218

219+
# Create special filter rules when dealing with debug symbols on windows
220+
ifeq ($(call isTargetOs, windows), true)
221+
ifeq ($(SHIP_DEBUG_SYMBOLS), )
222+
JDK_SYMBOLS_EXCLUDE_PATTERN := %.pdb
223+
else
224+
ifeq ($(SHIP_DEBUG_SYMBOLS), public)
225+
JDK_SYMBOLS_EXCLUDE_PATTERN := \
226+
$(filter-out \
227+
%.stripped.pdb, \
228+
$(filter %.pdb, $(ALL_JDK_FILES)) \
229+
)
230+
endif
231+
endif
232+
endif
233+
212234
JDK_BUNDLE_FILES := \
213235
$(filter-out \
214236
$(JDK_SYMBOLS_EXCLUDE_PATTERN) \
@@ -218,13 +240,14 @@ ifneq ($(filter product-bundles% legacy-bundles, $(MAKECMDGOALS)), )
218240
, \
219241
$(ALL_JDK_FILES) \
220242
)
243+
221244
JDK_SYMBOLS_BUNDLE_FILES := \
222245
$(filter \
223246
$(JDK_SYMBOLS_EXCLUDE_PATTERN) \
224247
$(SYMBOLS_EXCLUDE_PATTERN) \
225248
, \
226249
$(filter-out \
227-
$(JDK_IMAGE_HOMEDIR)/demo/% \
250+
$(JDK_IMAGE_HOMEDIR)/demo/% %.stripped.pdb \
228251
, \
229252
$(ALL_JDK_SYMBOLS_FILES) \
230253
) \
@@ -245,29 +268,116 @@ ifneq ($(filter product-bundles% legacy-bundles, $(MAKECMDGOALS)), )
245268
endif
246269
endif
247270

271+
# Create special filter rules when dealing with debug symbols on windows
272+
ifeq ($(call isTargetOs, windows), true)
273+
ifeq ($(SHIP_DEBUG_SYMBOLS), )
274+
JRE_SYMBOLS_EXCLUDE_PATTERN := %.pdb
275+
else
276+
ifeq ($(SHIP_DEBUG_SYMBOLS), public)
277+
JRE_SYMBOLS_EXCLUDE_PATTERN := \
278+
$(filter-out \
279+
%.stripped.pdb, \
280+
$(filter %.pdb, $(ALL_JRE_FILES)) \
281+
)
282+
endif
283+
endif
284+
endif
285+
248286
JRE_BUNDLE_FILES := $(filter-out \
249287
$(JRE_SYMBOLS_EXCLUDE_PATTERN) \
250288
$(SYMBOLS_EXCLUDE_PATTERN), \
251289
$(ALL_JRE_FILES))
252290

253-
$(eval $(call SetupBundleFile, BUILD_JDK_BUNDLE, \
254-
BUNDLE_NAME := $(JDK_BUNDLE_NAME), \
255-
FILES := $(JDK_BUNDLE_FILES), \
256-
SPECIAL_INCLUDES := $(JDK_SPECIAL_INCLUDES), \
257-
BASE_DIRS := $(JDK_IMAGE_DIR), \
258-
SUBDIR := $(JDK_BUNDLE_SUBDIR), \
259-
))
291+
# On Macosx release builds, when there is a code signing certificate available,
292+
# the final bundle layout can be signed.
293+
SIGN_BUNDLE := false
294+
ifeq ($(call isTargetOs, macosx)+$(DEBUG_LEVEL), true+release)
295+
ifneq ($(CODESIGN), )
296+
SIGN_BUNDLE := true
297+
endif
298+
endif
260299

261-
PRODUCT_TARGETS += $(BUILD_JDK_BUNDLE)
300+
ifeq ($(SIGN_BUNDLE), true)
301+
# Macosx release build and code signing available.
262302

263-
$(eval $(call SetupBundleFile, BUILD_JRE_BUNDLE, \
264-
BUNDLE_NAME := $(JRE_BUNDLE_NAME), \
265-
FILES := $(JRE_BUNDLE_FILES), \
266-
BASE_DIRS := $(JRE_IMAGE_DIR), \
267-
SUBDIR := $(JRE_BUNDLE_SUBDIR), \
268-
))
303+
################################################################################
304+
# JDK bundle
305+
$(eval $(call SetupCopyFiles, CREATE_JDK_BUNDLE_DIR_SIGNED, \
306+
SRC := $(JDK_IMAGE_DIR), \
307+
FILES := $(JDK_BUNDLE_FILES), \
308+
DEST := $(JDK_MACOSX_BUNDLE_DIR_SIGNED), \
309+
))
269310

270-
LEGACY_TARGETS += $(BUILD_JRE_BUNDLE)
311+
JDK_SIGNED_CODE_RESOURCES := \
312+
$(JDK_MACOSX_BUNDLE_DIR_SIGNED)/$(JDK_MACOSX_CONTENTS_SUBDIR)/_CodeSignature/CodeResources
313+
314+
$(JDK_SIGNED_CODE_RESOURCES): $(CREATE_JDK_BUNDLE_DIR_SIGNED)
315+
$(call LogWarn, Signing $(JDK_BUNDLE_NAME))
316+
$(CODESIGN) -s "$(MACOSX_CODESIGN_IDENTITY)" \
317+
--timestamp --options runtime --deep --force \
318+
$(JDK_MACOSX_BUNDLE_DIR_SIGNED)/$(JDK_MACOSX_BUNDLE_TOP_DIR) $(LOG_DEBUG)
319+
$(TOUCH) $@
320+
321+
$(eval $(call SetupBundleFile, BUILD_JDK_BUNDLE, \
322+
BUNDLE_NAME := $(JDK_BUNDLE_NAME), \
323+
FILES := \
324+
$(CREATE_JDK_BUNDLE_DIR_SIGNED) \
325+
$(JDK_SIGNED_CODE_RESOURCES), \
326+
BASE_DIRS := $(JDK_MACOSX_BUNDLE_DIR_SIGNED), \
327+
SUBDIR := $(JDK_BUNDLE_SUBDIR), \
328+
))
329+
330+
PRODUCT_TARGETS += $(BUILD_JDK_BUNDLE)
331+
332+
################################################################################
333+
# JRE bundle
334+
$(eval $(call SetupCopyFiles, CREATE_JRE_BUNDLE_DIR_SIGNED, \
335+
SRC := $(JRE_IMAGE_DIR), \
336+
FILES := $(JRE_BUNDLE_FILES), \
337+
DEST := $(JRE_MACOSX_BUNDLE_DIR_SIGNED), \
338+
))
339+
340+
JRE_SIGNED_CODE_RESOURCES := \
341+
$(JRE_MACOSX_BUNDLE_DIR_SIGNED)/$(JRE_MACOSX_CONTENTS_SUBDIR)/_CodeSignature/CodeResources
342+
343+
$(JRE_SIGNED_CODE_RESOURCES): $(CREATE_JRE_BUNDLE_DIR_SIGNED)
344+
$(call LogWarn, Signing $(JRE_BUNDLE_NAME))
345+
$(CODESIGN) -s "$(MACOSX_CODESIGN_IDENTITY)" \
346+
--timestamp --options runtime --deep --force \
347+
$(JRE_MACOSX_BUNDLE_DIR_SIGNED)/$(JRE_MACOSX_BUNDLE_TOP_DIR) $(LOG_DEBUG)
348+
$(TOUCH) $@
349+
350+
$(eval $(call SetupBundleFile, BUILD_JRE_BUNDLE, \
351+
BUNDLE_NAME := $(JRE_BUNDLE_NAME), \
352+
FILES := \
353+
$(CREATE_JRE_BUNDLE_DIR_SIGNED) \
354+
$(JRE_SIGNED_CODE_RESOURCES), \
355+
BASE_DIRS := $(JRE_MACOSX_BUNDLE_DIR_SIGNED), \
356+
SUBDIR := $(JRE_BUNDLE_SUBDIR), \
357+
))
358+
359+
LEGACY_TARGETS += $(BUILD_JRE_BUNDLE)
360+
else
361+
# Not a Macosx release build or code signing not available.
362+
$(eval $(call SetupBundleFile, BUILD_JDK_BUNDLE, \
363+
BUNDLE_NAME := $(JDK_BUNDLE_NAME), \
364+
FILES := $(JDK_BUNDLE_FILES), \
365+
SPECIAL_INCLUDES := $(JDK_SPECIAL_INCLUDES), \
366+
BASE_DIRS := $(JDK_IMAGE_DIR), \
367+
SUBDIR := $(JDK_BUNDLE_SUBDIR), \
368+
))
369+
370+
PRODUCT_TARGETS += $(BUILD_JDK_BUNDLE)
371+
372+
$(eval $(call SetupBundleFile, BUILD_JRE_BUNDLE, \
373+
BUNDLE_NAME := $(JRE_BUNDLE_NAME), \
374+
FILES := $(JRE_BUNDLE_FILES), \
375+
BASE_DIRS := $(JRE_IMAGE_DIR), \
376+
SUBDIR := $(JRE_BUNDLE_SUBDIR), \
377+
))
378+
379+
LEGACY_TARGETS += $(BUILD_JRE_BUNDLE)
380+
endif
271381

272382
ifeq ($(COPY_DEBUG_SYMBOLS), true)
273383
$(eval $(call SetupBundleFile, BUILD_JDK_SYMBOLS_BUNDLE, \

make/CompileToolsJdk.gmk

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2011, 2019, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
33
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
#
55
# This code is free software; you can redistribute it and/or modify it
@@ -40,7 +40,6 @@ $(eval $(call IncludeCustomExtension, CompileTools.gmk))
4040
# Use += to be able to add to this from a custom extension
4141
BUILD_TOOLS_SRC_DIRS += \
4242
$(TOPDIR)/make/jdk/src/classes \
43-
$(BUILDTOOLS_OUTPUTDIR)/interim_cldrconverter_classes \
4443
$(BUILDTOOLS_OUTPUTDIR)/interim_tzdb_classes \
4544
#
4645

make/CreateJmods.gmk

Lines changed: 59 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
# Copyright (c) 2014, 2019, Oracle and/or its affiliates. All rights reserved.
1+
#
2+
# Copyright (c) 2014, 2020, Oracle and/or its affiliates. All rights reserved.
23
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
34
#
45
# This code is free software; you can redistribute it and/or modify it
@@ -58,12 +59,58 @@ $(call FillFindCache, \
5859
)
5960

6061
ifneq ($(LIBS_DIR), )
61-
JMOD_FLAGS += --libs $(LIBS_DIR)
6262
DEPS += $(call FindFiles, $(LIBS_DIR))
63+
ifeq ($(call isTargetOs, windows)+$(SHIP_DEBUG_SYMBOLS), true+public)
64+
# For public debug symbols on Windows, we have to use stripped pdbs and rename them
65+
rename_stripped = $(patsubst %.stripped.pdb,%.pdb,$1)
66+
LIBS_DIR_FILTERED := $(subst modules_libs,modules_libs_filtered, $(LIBS_DIR))
67+
FILES_LIBS := $(filter-out %.pdb, $(call FindFiles, $(LIBS_DIR))) \
68+
$(filter %.stripped.pdb, $(call FindFiles, $(LIBS_DIR)))
69+
$(eval $(call SetupCopyFiles, COPY_FILTERED_LIBS, \
70+
SRC := $(LIBS_DIR), \
71+
DEST := $(LIBS_DIR_FILTERED), \
72+
FILES := $(FILES_LIBS), \
73+
NAME_MACRO := rename_stripped, \
74+
))
75+
DEPS += $(COPY_FILTERED_LIBS)
76+
JMOD_FLAGS += --libs $(LIBS_DIR_FILTERED)
77+
else
78+
JMOD_FLAGS += --libs $(LIBS_DIR)
79+
endif
6380
endif
6481
ifneq ($(CMDS_DIR), )
65-
JMOD_FLAGS += --cmds $(CMDS_DIR)
6682
DEPS += $(call FindFiles, $(CMDS_DIR))
83+
ifeq ($(call isTargetOs, windows)+$(SHIP_DEBUG_SYMBOLS), true+public)
84+
# For public debug symbols on Windows, we have to use stripped pdbs, rename them
85+
# and filter out a few launcher pdbs where there's a lib that goes by the same name
86+
rename_stripped = $(patsubst %.stripped.pdb,%.pdb,$1)
87+
CMDS_DIR_FILTERED := $(subst modules_cmds,modules_cmds_filtered, $(CMDS_DIR))
88+
FILES_CMDS := $(filter-out %.pdb, $(call FindFiles, $(CMDS_DIR))) \
89+
$(filter-out %jimage.stripped.pdb %jpackage.stripped.pdb %java.stripped.pdb, \
90+
$(filter %.stripped.pdb, $(call FindFiles, $(CMDS_DIR))))
91+
$(eval $(call SetupCopyFiles, COPY_FILTERED_CMDS, \
92+
SRC := $(CMDS_DIR), \
93+
DEST := $(CMDS_DIR_FILTERED), \
94+
FILES := $(FILES_CMDS), \
95+
NAME_MACRO := rename_stripped, \
96+
))
97+
DEPS += $(COPY_FILTERED_CMDS)
98+
JMOD_FLAGS += --cmds $(CMDS_DIR_FILTERED)
99+
else ifeq ($(call isTargetOs, windows)+$(SHIP_DEBUG_SYMBOLS), true+full)
100+
# For full debug symbols on Windows, we have to filter out a few launcher pdbs
101+
# where there's a lib that goes by the same name
102+
CMDS_DIR_FILTERED := $(subst modules_cmds,modules_cmds_filtered, $(CMDS_DIR))
103+
$(eval $(call SetupCopyFiles, COPY_FILTERED_CMDS, \
104+
SRC := $(CMDS_DIR), \
105+
DEST := $(CMDS_DIR_FILTERED), \
106+
FILES := $(filter-out %jimage.pdb %jpackage.pdb %java.pdb, \
107+
$(call FindFiles, $(CMDS_DIR))), \
108+
))
109+
DEPS += $(COPY_FILTERED_CMDS)
110+
JMOD_FLAGS += --cmds $(CMDS_DIR_FILTERED)
111+
else
112+
JMOD_FLAGS += --cmds $(CMDS_DIR)
113+
endif
67114
endif
68115
ifneq ($(CONF_DIR), )
69116
JMOD_FLAGS += --config $(CONF_DIR)
@@ -159,7 +206,15 @@ ifeq ($(INTERIM_JMOD), true)
159206
INTERIM_MSG := interim$(SPACE)
160207
endif
161208

162-
JMOD_FLAGS += --exclude '**{_the.*,_*.marker,*.diz,*.debuginfo,*.dSYM/**,*.dSYM,*.pdb,*.map}'
209+
ifeq ($(call isTargetOs, windows), true)
210+
ifeq ($(SHIP_DEBUG_SYMBOLS), )
211+
JMOD_FLAGS += --exclude '**{_the.*,_*.marker,*.diz,*.pdb,*.map}'
212+
else
213+
JMOD_FLAGS += --exclude '**{_the.*,_*.marker,*.diz,*.map}'
214+
endif
215+
else
216+
JMOD_FLAGS += --exclude '**{_the.*,_*.marker,*.diz,*.debuginfo,*.dSYM/**,*.dSYM}'
217+
endif
163218

164219
# Create jmods in the support dir and then move them into place to keep the
165220
# module path in $(IMAGES_OUTPUTDIR)/jmods valid at all times.

make/GenerateLinkOptData.gmk

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
33
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
#
55
# This code is free software; you can redistribute it and/or modify it
@@ -104,6 +104,17 @@ $(eval $(call SetupCopyFiles, COPY_CLASSLIST, \
104104

105105
TARGETS += $(COPY_CLASSLIST)
106106

107+
# In case of shipping public debug symbols on windows, there is another temporary
108+
# location from where jmods are compiled - need to deploy classlist there, too.
109+
ifeq ($(call isTargetOs, windows)+$(SHIP_DEBUG_SYMBOLS), true+public)
110+
$(eval $(call SetupCopyFiles, COPY_CLASSLIST_TO_FILTERED, \
111+
FILES := $(CLASSLIST_FILE), \
112+
DEST := $(SUPPORT_OUTPUTDIR)/modules_libs_filtered/java.base, \
113+
))
114+
115+
TARGETS += $(COPY_CLASSLIST_TO_FILTERED)
116+
endif
117+
107118
# Copy the default_jli_trace.txt file into jdk.jlink
108119
$(eval $(call SetupCopyFiles, COPY_JLI_TRACE, \
109120
FILES := $(JLI_TRACE_FILE), \

0 commit comments

Comments
 (0)