blob: e6de98e59706b0cb50fd47a99f8acf4ef5bf24a9 [file] [log] [blame]
alanb55695602013-01-21 23:35:36 -05001#
coffeys1fcdb422016-11-09 21:09:10 +00002# Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
alanb55695602013-01-21 23:35:36 -05003# 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#
dholmesbb588872014-12-17 20:25:47 -050025
26# These lists define where a file belongs if it exists. It is perfectly fine
27# if a file does not exist on some platforms - we do not have to produce exact
28# per-platform lists. However, for clarity, platform-unique files are handled
29# in platform-specific conditionals.
30
31# On different platforms the libraries are placed into different locations in the
32# JRE:
33ifeq (, $(findstring $(OPENJDK_TARGET_OS), windows macosx))
34 # On non-windows/OSX libraries go into jre/lib/<arch>
35 LIBS_PREFIX := $(OPENJDK_TARGET_CPU_LEGACY_LIB)/
36else
37 # On OSX they go into jre/lib/ - on Windows they go into jre/bin/ and we won't use this
38 LIBS_PREFIX :=
39endif
40
41# Debug info files are tricky to deal with due to all the different platform variants
42# and because they can be zipped.
43ifeq ($(ZIP_DEBUGINFO_FILES), true)
44 # Common case and 'just works' on all platforms
45 DEBUG_SUFFIX := .diz
46else
47 # It gets complicated ...
48 ifeq ($(OPENJDK_TARGET_OS), macosx)
49 # This is a directory, not a simple file, so
50 # it needs expanding explicitly later on
51 DEBUG_SUFFIX := $(SHARED_LIBRARY_SUFFIX).dSYM
52 else
53 ifeq ($(OPENJDK_TARGET_OS), windows)
54 DEBUG_SUFFIX := .map .pdb
55 else
56 DEBUG_SUFFIX := .debuginfo
57 endif
58 endif
59endif
60
61# Expand the contents of the .dSYM directories on macosx.
62# Param 1 - debug files list eg libFoo.dylib.dSYM or libFoo.diz (if zipped)
63# Param 2 - libraries list eg Foo
64# On macosx if not zipping debuginfo files we expand the contents of the .dSYM directories,
65# else we return the original list of .diz files.
66# On other OS we return the original list of debuginfo files (whether zipped or not)
67#
68define expand-debuginfo
69 $(if $(and $(filter-out true, $(ZIP_DEBUGINFO_FILES)), $(filter macosx, $(OPENJDK_TARGET_OS))), \
70 $(foreach i, $1, $(addsuffix /Contents/Info.plist, $i)) \
71 $(foreach i, $2, $(addsuffix /Contents/Resources/DWARF/$i, $(filter $i.%, $1))), \
72 $1)
73endef
74
75# Common executable files
alanb55695602013-01-21 23:35:36 -050076PROFILE_1_JRE_BIN_FILES := \
77 java$(EXE_SUFFIX) \
78 keytool$(EXE_SUFFIX)
79
dholmesbb588872014-12-17 20:25:47 -050080ifeq ($(OPENJDK_TARGET_OS), windows)
81 PROFILE_1_JRE_BIN_FILES += javaw$(EXE_SUFFIX)
82endif
83
84PROFILE_1_LIBRARIES := \
85 j2pkcs11 \
86 java \
87 jsig \
88 net \
89 nio \
90 sunec \
91 verify \
92 zip
93
94ifeq ($(OPENJDK_TARGET_OS), windows)
95 PROFILE_1_LIBRARIES += msvcrt100
96endif
97
98PROFILE_1_LIBRARIES := $(addprefix $(LIBRARY_PREFIX), $(PROFILE_1_LIBRARIES))
99PROFILE_1_DEBUG_FILES := $(foreach i, $(DEBUG_SUFFIX), $(addsuffix $i, $(PROFILE_1_LIBRARIES)))
100PROFILE_1_LIBRARIES := $(addsuffix $(SHARED_LIBRARY_SUFFIX), $(PROFILE_1_LIBRARIES))
101PROFILE_1_DEBUG_FILES := $(call expand-debuginfo, $(PROFILE_1_DEBUG_FILES), $(PROFILE_1_LIBRARIES))
102PROFILE_1_LIBRARIES += $(PROFILE_1_DEBUG_FILES)
103
104# Note: libjsig exists as both the real file and a symlink in the VM directory
105# so we have to treat it with care when looking for the debuginfo files
106VM_LIBRARIES := \
107 jvm
108
109ifeq ($(OPENJDK_TARGET_OS), solaris)
110 VM_LIBRARIES += jvm_db jvm_dtrace
111endif
112
113VM_SYMLINKS := \
114 jsig
115
116VM_LIBRARIES := $(addprefix $(LIBRARY_PREFIX), $(VM_LIBRARIES))
117VM_DEBUG_FILES := $(foreach i, $(DEBUG_SUFFIX), $(addsuffix $i, $(VM_LIBRARIES)))
118VM_SYMLINKS := $(addprefix $(LIBRARY_PREFIX), $(VM_SYMLINKS))
119VM_LIBRARIES := $(addsuffix $(SHARED_LIBRARY_SUFFIX), $(VM_LIBRARIES))
120VM_DEBUG_FILES := $(call expand-debuginfo, $(VM_DEBUG_FILES), $(VM_LIBRARIES))
121VM_DEBUG_FILES += $(foreach i, $(DEBUG_SUFFIX), $(addsuffix $i, $(VM_SYMLINKS)))
122VM_SYMLINKS := $(addsuffix $(SHARED_LIBRARY_SUFFIX), $(VM_SYMLINKS))
123VM_LIBRARIES += $(VM_SYMLINKS)
124
125VM_FILES := \
126 Xusage.txt
127
128VM_DIRS := client server minimal
129
130VM_FILES := $(foreach i, $(VM_DIRS), $(addprefix $i/, $(VM_LIBRARIES) $(VM_FILES) $(VM_DEBUG_FILES)))
131
132JLI_LIBRARIES := \
133 jli
134
135ifneq ($(OPENJDK_TARGET_OS), windows)
136 JLI_SUBDIR := jli/
137else
138 JLI_SUBDIR :=
139endif
140
141JLI_LIBRARIES := $(addprefix $(JLI_SUBDIR)$(LIBRARY_PREFIX), $(JLI_LIBRARIES))
142JLI_DEBUG_FILES := $(foreach i, $(DEBUG_SUFFIX), $(addsuffix $i, $(JLI_LIBRARIES)))
143JLI_LIBRARIES := $(addsuffix $(SHARED_LIBRARY_SUFFIX), $(JLI_LIBRARIES))
144JLI_DEBUG_FILES := $(call expand-debuginfo, $(JLI_DEBUG_FILES), $(JLI_LIBRARIES))
145JLI_LIBRARIES += $(JLI_DEBUG_FILES)
146
147ifneq ($(OPENJDK_TARGET_OS), windows)
148 PROFILE_1_JRE_LIB_FILES := \
149 $(addprefix $(LIBS_PREFIX), $(PROFILE_1_LIBRARIES) $(VM_FILES) $(JLI_LIBRARIES))
150else
151 # On windows libraries go into jre/bin
152 PROFILE_1_JRE_BIN_FILES += $(PROFILE_1_LIBRARIES) $(VM_FILES) $(JLI_LIBRARIES)
153endif
154
155# Remaining jre/lib contents
156# OSX doesn't use <arch> directory
157#
158ifeq ($(OPENJDK_TARGET_OS), macosx)
159 PROFILE_1_JRE_LIB_FILES += \
160 jvm.cfg \
161 jspawnhelper
162else
163 PROFILE_1_JRE_LIB_FILES += \
164 $(OPENJDK_TARGET_CPU_LEGACY_LIB)/jvm.cfg \
165 $(OPENJDK_TARGET_CPU_LEGACY_LIB)/jspawnhelper
166endif
167
168PROFILE_1_JRE_LIB_FILES += \
alanb55695602013-01-21 23:35:36 -0500169 calendars.properties \
170 classlist \
171 content-types.properties \
172 currency.data \
173 ext/localedata.jar \
174 ext/meta-index \
dholmesc818f712013-03-20 22:39:51 -0400175 ext/sunec.jar \
alanb55695602013-01-21 23:35:36 -0500176 ext/sunjce_provider.jar \
dholmesc818f712013-03-20 22:39:51 -0400177 ext/sunpkcs11.jar \
shermancb1e7332013-04-12 09:51:04 -0700178 hijrah-config-umalqura.properties \
alanb55695602013-01-21 23:35:36 -0500179 jce.jar \
180 jsse.jar \
181 logging.properties \
182 meta-index \
183 net.properties \
184 resources.jar \
185 rt.jar \
coffeys1fcdb422016-11-09 21:09:10 +0000186 security/policy/limited/US_export_policy.jar \
187 security/policy/unlimited/US_export_policy.jar \
alanb55695602013-01-21 23:35:36 -0500188 security/blacklist \
weijunebb92d72014-04-19 12:23:02 +0800189 security/blacklisted.certs \
alanb55695602013-01-21 23:35:36 -0500190 security/cacerts \
191 security/java.policy \
192 security/java.security \
coffeys1fcdb422016-11-09 21:09:10 +0000193 security/policy/limited/local_policy.jar \
194 security/policy/unlimited/local_policy.jar \
alanb55695602013-01-21 23:35:36 -0500195 security/trusted.libraries \
shermance3566b2013-04-12 07:57:35 -0700196 tzdb.dat
alanb55695602013-01-21 23:35:36 -0500197
dholmesbb588872014-12-17 20:25:47 -0500198ifeq ($(OPENJDK_TARGET_OS), windows)
199 PROFILE_1_JRE_LIB_FILES += tzmappings
200else
201 ifeq ($(OPENJDK_TARGET_OS), solaris)
202 PROFILE_1_JRE_LIB_FILES += sdp/sdp.conf
203 endif
204endif
205
alanb55695602013-01-21 23:35:36 -0500206PROFILE_1_JRE_OTHER_FILES := \
207 COPYRIGHT \
208 LICENSE \
209 README \
210 THIRDPARTYLICENSEREADME.txt \
211 Welcome.html \
212 release
213
214PROFILE_1_JRE_JAR_FILES := \
215 ext/localedata.jar \
dholmesc818f712013-03-20 22:39:51 -0400216 ext/sunec.jar \
alanb55695602013-01-21 23:35:36 -0500217 ext/sunjce_provider.jar \
dholmesc818f712013-03-20 22:39:51 -0400218 ext/sunpkcs11.jar \
alanb55695602013-01-21 23:35:36 -0500219 jce.jar \
220 jsse.jar \
221 resources.jar \
222 rt.jar \
coffeys1fcdb422016-11-09 21:09:10 +0000223 security/policy/limited/US_export_policy.jar \
224 security/policy/unlimited/US_export_policy.jar \
225 security/policy/limited/local_policy.jar \
226 security/policy/unlimited/local_policy.jar
alanb55695602013-01-21 23:35:36 -0500227
dholmesb50620d2013-08-20 03:18:56 -0400228
alanb55695602013-01-21 23:35:36 -0500229PROFILE_2_JRE_BIN_FILES := \
230 rmid$(EXE_SUFFIX) \
231 rmiregistry$(EXE_SUFFIX)
232
dholmesbb588872014-12-17 20:25:47 -0500233ifeq ($(OPENJDK_TARGET_OS), windows)
234 PROFILE_2_JRE_BIN_FILES += java-rmi$(EXE_SUFFIX)
235endif
236
237# If you add libraries here, make sure you use the same techniques
238# as used for the other profile's libraries regarding debug files etc
mduigou645aeab2013-09-27 10:21:04 -0700239PROFILE_2_JRE_LIB_FILES :=
alanb55695602013-01-21 23:35:36 -0500240
mduigou645aeab2013-09-27 10:21:04 -0700241PROFILE_2_JRE_OTHER_FILES :=
alanb55695602013-01-21 23:35:36 -0500242
mduigou645aeab2013-09-27 10:21:04 -0700243PROFILE_2_JRE_JAR_FILES :=
alanb55695602013-01-21 23:35:36 -0500244
dholmesbb588872014-12-17 20:25:47 -0500245ifeq ($(OPENJDK_TARGET_OS), windows)
246 PROFILE_3_JRE_BIN_FILES := \
247 kinit$(EXE_SUFFIX) \
248 klist$(EXE_SUFFIX) \
249 ktab$(EXE_SUFFIX)
250else
251 PROFILE_3_JRE_BIN_FILES :=
252endif
alanb55695602013-01-21 23:35:36 -0500253
dholmesbb588872014-12-17 20:25:47 -0500254PROFILE_3_LIBRARIES := \
255 hprof \
256 instrument \
257 j2gss \
258 j2pcsc \
259 jaas_unix \
260 jaas_nt \
261 java_crw_demo \
262 jsdt \
263 management \
264 npt \
265 sctp
alanb55695602013-01-21 23:35:36 -0500266
dholmesbb588872014-12-17 20:25:47 -0500267ifeq ($(OPENJDK_TARGET_OS), windows)
268 PROFILE_3_LIBRARIES += w2k_lsa_auth
269else
270 ifeq ($(OPENJDK_TARGET_OS), macosx)
271 PROFILE_3_LIBRARIES += osxkrb5
272 endif
273endif
274
275PROFILE_3_LIBRARIES := $(addprefix $(LIBRARY_PREFIX), $(PROFILE_3_LIBRARIES))
276PROFILE_3_DEBUG_FILES := $(foreach i, $(DEBUG_SUFFIX), $(addsuffix $i, $(PROFILE_3_LIBRARIES)))
277PROFILE_3_LIBRARIES := $(addsuffix $(SHARED_LIBRARY_SUFFIX), $(PROFILE_3_LIBRARIES))
278PROFILE_3_DEBUG_FILES := $(call expand-debuginfo, $(PROFILE_3_DEBUG_FILES), $(PROFILE_3_LIBRARIES))
279PROFILE_3_LIBRARIES += $(PROFILE_3_DEBUG_FILES)
280
281ifneq ($(OPENJDK_TARGET_OS), windows)
282 PROFILE_3_JRE_LIB_FILES := \
283 $(addprefix $(LIBS_PREFIX), $(PROFILE_3_LIBRARIES))
284else
285 # On windows libraries go into jre/bin
286 PROFILE_3_JRE_BIN_FILES += $(PROFILE_3_LIBRARIES)
287endif
288
289PROFILE_3_JRE_LIB_FILES += \
alanb55695602013-01-21 23:35:36 -0500290 jvm.hprof.txt \
291 management-agent.jar \
292 management/jmxremote.access \
293 management/jmxremote.password.template \
294 management/management.properties \
295 management/snmp.acl.template
296
mduigou645aeab2013-09-27 10:21:04 -0700297PROFILE_3_JRE_OTHER_FILES :=
alanb55695602013-01-21 23:35:36 -0500298
299PROFILE_3_JRE_JAR_FILES := \
alanb55695602013-01-21 23:35:36 -0500300 management-agent.jar
301
302
dholmes8127a4f2013-03-14 01:47:59 -0400303FULL_JRE_BIN_FILES := \
alanb55695602013-01-21 23:35:36 -0500304 orbd$(EXE_SUFFIX) \
305 pack200$(EXE_SUFFIX) \
306 policytool$(EXE_SUFFIX) \
307 servertool$(EXE_SUFFIX) \
308 tnameserv$(EXE_SUFFIX) \
309 unpack200$(EXE_SUFFIX)
310
dholmesbb588872014-12-17 20:25:47 -0500311JRE_LIBRARIES := \
312 awt \
313 awt_headless \
314 awt_xawt \
315 dcpr \
316 dt_socket \
317 fontmanager \
318 jawt \
319 jdwp \
320 jfr \
321 jpeg \
322 jsound \
323 jsoundalsa \
324 kcms \
325 mlib_image \
326 splashscreen \
327 t2k \
328 unpack
329
330JRE_LIBRARIES := $(addprefix $(LIBRARY_PREFIX), $(JRE_LIBRARIES))
331JRE_DEBUG_FILES := $(foreach i, $(DEBUG_SUFFIX), $(addsuffix $i, $(JRE_LIBRARIES)))
332JRE_LIBRARIES := $(addsuffix $(SHARED_LIBRARY_SUFFIX), $(JRE_LIBRARIES))
333JRE_DEBUG_FILES := $(call expand-debuginfo, $(JRE_DEBUG_FILES), $(JRE_LIBRARIES))
334JRE_LIBRARIES += $(JRE_DEBUG_FILES)
335
336ifneq ($(OPENJDK_TARGET_OS), windows)
337 FULL_JRE_LIB_FILES := \
338 $(addprefix $(LIBS_PREFIX), $(JRE_LIBRARIES))
339else
340 # On windows libraries go into jre/bin
341 FULL_JRE_BIN_FILES += $(JRE_LIBRARIES)
342endif
343
344FULL_JRE_LIB_FILES += \
alanb55695602013-01-21 23:35:36 -0500345 charsets.jar \
346 cmm/CIEXYZ.pf \
347 cmm/GRAY.pf \
348 cmm/LINEAR_RGB.pf \
349 cmm/PYCC.pf \
350 cmm/sRGB.pf \
351 ext/cldrdata.jar \
352 ext/dnsns.jar \
dholmes3215a6c2013-03-19 06:01:14 -0400353 ext/nashorn.jar \
alanb55695602013-01-21 23:35:36 -0500354 ext/zipfs.jar \
355 flavormap.properties \
356 fontconfig.RedHat.5.bfc \
357 fontconfig.RedHat.5.properties.src \
358 fontconfig.RedHat.6.bfc \
359 fontconfig.RedHat.6.properties.src \
360 fontconfig.SuSE.10.bfc \
361 fontconfig.SuSE.10.properties.src \
362 fontconfig.SuSE.11.bfc \
363 fontconfig.SuSE.11.properties.src \
364 fontconfig.Turbo.bfc \
365 fontconfig.Turbo.properties.src \
366 fontconfig.bfc \
367 fontconfig.properties.src \
368 fonts/LucidaBrightDemiBold.ttf \
369 fonts/LucidaBrightDemiItalic.ttf \
370 fonts/LucidaBrightItalic.ttf \
371 fonts/LucidaBrightRegular.ttf \
372 fonts/LucidaSansDemiBold.ttf \
373 fonts/LucidaSansRegular.ttf \
374 fonts/LucidaTypewriterBold.ttf \
375 fonts/LucidaTypewriterRegular.ttf \
376 fonts/fonts.dir \
377 images/cursors/cursors.properties \
378 images/cursors/invalid32x32.gif \
379 images/cursors/motif_CopyDrop32x32.gif \
380 images/cursors/motif_CopyNoDrop32x32.gif \
381 images/cursors/motif_LinkDrop32x32.gif \
382 images/cursors/motif_LinkNoDrop32x32.gif \
383 images/cursors/motif_MoveDrop32x32.gif \
384 images/cursors/motif_MoveNoDrop32x32.gif \
385 jexec \
alanb1032b442013-06-25 13:53:23 +0100386 jfr.jar \
alanb55695602013-01-21 23:35:36 -0500387 oblique-fonts/LucidaSansDemiOblique.ttf \
388 oblique-fonts/LucidaSansOblique.ttf \
389 oblique-fonts/LucidaTypewriterBoldOblique.ttf \
390 oblique-fonts/LucidaTypewriterOblique.ttf \
391 oblique-fonts/fonts.dir \
392 psfont.properties.ja \
393 psfontj2d.properties \
alanb55695602013-01-21 23:35:36 -0500394 sound.properties
395
dholmes8127a4f2013-03-14 01:47:59 -0400396FULL_JRE_OTHER_FILES := \
alanb55695602013-01-21 23:35:36 -0500397 man/ja_JP.UTF-8/man1/java.1 \
398 man/ja_JP.UTF-8/man1/javaws.1 \
399 man/ja_JP.UTF-8/man1/keytool.1 \
400 man/ja_JP.UTF-8/man1/orbd.1 \
401 man/ja_JP.UTF-8/man1/pack200.1 \
402 man/ja_JP.UTF-8/man1/policytool.1 \
403 man/ja_JP.UTF-8/man1/rmid.1 \
404 man/ja_JP.UTF-8/man1/rmiregistry.1 \
405 man/ja_JP.UTF-8/man1/servertool.1 \
406 man/ja_JP.UTF-8/man1/tnameserv.1 \
407 man/ja_JP.UTF-8/man1/unpack200.1 \
408 man/man1/java.1 \
409 man/man1/javaws.1 \
410 man/man1/keytool.1 \
411 man/man1/orbd.1 \
412 man/man1/pack200.1 \
413 man/man1/policytool.1 \
414 man/man1/rmid.1 \
415 man/man1/rmiregistry.1 \
416 man/man1/servertool.1 \
417 man/man1/tnameserv.1 \
418 man/man1/unpack200.1
419
dholmes8127a4f2013-03-14 01:47:59 -0400420FULL_JRE_JAR_FILES := \
alanb55695602013-01-21 23:35:36 -0500421 charsets.jar \
422 ext/cldrdata.jar \
423 ext/dnsns.jar \
dholmes3215a6c2013-03-19 06:01:14 -0400424 ext/nashorn.jar \
dholmesb50620d2013-08-20 03:18:56 -0400425 ext/zipfs.jar \
426 jfr.jar
dholmesbb588872014-12-17 20:25:47 -0500427