1 | #
|
---|
2 | # Copyright (c) 1997, 2010, 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 | include $(JDK_TOPDIR)/make/docs/CORE_PKGS.gmk
|
---|
27 | include $(JDK_TOPDIR)/make/docs/NON_CORE_PKGS.gmk
|
---|
28 |
|
---|
29 | #
|
---|
30 | # Perform release engineering tasks.
|
---|
31 | #
|
---|
32 | # images An image is what the product looks like when it is
|
---|
33 | # installed.
|
---|
34 | #
|
---|
35 |
|
---|
36 | IMAGE_BINDIR = bin
|
---|
37 |
|
---|
38 | # The compiler should not issue a "Sun Propietary" warning when compiling
|
---|
39 | # classes in the com.sun.java.swing.plaf packages, since we've always
|
---|
40 | # allowed, and even advocated, extending them (see bug 6476749).
|
---|
41 | #
|
---|
42 | # This approach is NOT to be used as a general purpose way to avoid such
|
---|
43 | # compiler warnings for non-core packages. The correct way is to document
|
---|
44 | # the packages in NON_CORE_PKGS.gmk, and include them in the NON_CORE_PKGS
|
---|
45 | # definition.
|
---|
46 | #
|
---|
47 | # Swing has taken this approach only as a temporary measure to avoid
|
---|
48 | # the compiler warnings until we can properly document these packages.
|
---|
49 | # This is covered under 6491853.
|
---|
50 | EXCLUDE_PROPWARN_PKGS = com.sun.java.swing.plaf \
|
---|
51 | com.sun.java.swing.plaf.windows \
|
---|
52 | com.sun.java.swing.plaf.motif \
|
---|
53 | com.sun.java.swing.plaf.gtk \
|
---|
54 | com.sun.java.swing.plaf.nimbus
|
---|
55 |
|
---|
56 | # 64-bit solaris has a few special cases. We define the variable
|
---|
57 | # SOLARIS64 for use in this Makefile to easily test those cases
|
---|
58 | ifeq ($(PLATFORM), solaris)
|
---|
59 | ifeq ($(ARCH_DATA_MODEL), 64)
|
---|
60 | SOLARIS64 = true
|
---|
61 | IMAGE_BINDIR = bin/$(ARCH)
|
---|
62 | endif
|
---|
63 | endif
|
---|
64 |
|
---|
65 | JTG_DOCS = $(JDK_TOPDIR)/src/solaris/doc
|
---|
66 |
|
---|
67 | #We use this for man page header
|
---|
68 | jdkversion := $(JDK_MAJOR_VERSION).$(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION)
|
---|
69 |
|
---|
70 | # Text documents on windows use this suffix
|
---|
71 | ifeq ($(filter-out windows os2, $(PLATFORM)),)
|
---|
72 | TEXT_SUFFIX = .txt
|
---|
73 | endif
|
---|
74 |
|
---|
75 | # The base names of all the license and document files for the jdk and jre
|
---|
76 | ifdef OPENJDK
|
---|
77 | # Where to find these files
|
---|
78 | SHARE_JDK_DOC_SRC = $(JDK_TOPDIR)
|
---|
79 | SHARE_JRE_DOC_SRC = $(JDK_TOPDIR)
|
---|
80 | # Same files for jdk and jre, no name changes
|
---|
81 | LICENSE_DOCLIST_JDK = LICENSE ASSEMBLY_EXCEPTION
|
---|
82 | LICENSE_DOCLIST_JRE = LICENSE ASSEMBLY_EXCEPTION
|
---|
83 | OTHER_DOCLIST_JDK = THIRD_PARTY_README
|
---|
84 | OTHER_DOCLIST_JRE = THIRD_PARTY_README
|
---|
85 | else
|
---|
86 | # Where to find these files
|
---|
87 | SHARE_JDK_DOC_SRC = $(CLOSED_SHARE_SRC)/doc/jdk
|
---|
88 | SHARE_JRE_DOC_SRC = $(CLOSED_SHARE_SRC)/doc/jre
|
---|
89 | # Select the pre-release or FCS license version based on the build milestone.
|
---|
90 | LICENSE_VERSION=.pre
|
---|
91 | ifeq ($(MILESTONE), fcs)
|
---|
92 | LICENSE_VERSION=.fcs
|
---|
93 | endif
|
---|
94 | ifeq ($(filter-out windows os2, $(PLATFORM)),)
|
---|
95 | LICENSE_DOCLIST_JDK = $(subst $(LICENSE_VERSION),,\
|
---|
96 | $(shell $(CD) $(SHARE_JDK_DOC_SRC) && \
|
---|
97 | $(LS) *LICENSE*$(LICENSE_VERSION)))
|
---|
98 | LICENSE_DOCLIST_JRE = $(subst $(LICENSE_VERSION),,\
|
---|
99 | $(shell $(CD) $(SHARE_JRE_DOC_SRC) && \
|
---|
100 | $(LS) *LICENSE*$(LICENSE_VERSION)))
|
---|
101 | else
|
---|
102 | LICENSE_DOCLIST_JDK = $(subst $(LICENSE_VERSION),,\
|
---|
103 | $(shell $(CD) $(SHARE_JDK_DOC_SRC) && \
|
---|
104 | $(LS) *LICENSE*$(LICENSE_VERSION) | $(GREP) -v rtf))
|
---|
105 | LICENSE_DOCLIST_JRE = $(subst $(LICENSE_VERSION),,\
|
---|
106 | $(shell $(CD) $(SHARE_JRE_DOC_SRC) && \
|
---|
107 | $(LS) *LICENSE*$(LICENSE_VERSION) | $(GREP) -v rtf))
|
---|
108 | endif
|
---|
109 | OTHER_DOCLIST_JDK = COPYRIGHT README.html README_ja.html README_zh_CN.html
|
---|
110 | OTHER_DOCLIST_JRE = COPYRIGHT Welcome.html
|
---|
111 | JRE_NAMECHANGE_DOCLIST = README
|
---|
112 | endif
|
---|
113 |
|
---|
114 | # Paths to these files we need
|
---|
115 | JDK_LICENSES = $(LICENSE_DOCLIST_JDK:%=$(JDK_IMAGE_DIR)/%)
|
---|
116 | JDK64_LICENSES = $(LICENSE_DOCLIST_JDK:%=$(JDK_IMAGE_DIR)/%64)
|
---|
117 | JDK_DOCFILES = $(OTHER_DOCLIST_JDK:%=$(JDK_IMAGE_DIR)/%)
|
---|
118 |
|
---|
119 | JRE_LICENSES = $(LICENSE_DOCLIST_JRE:%=$(JRE_IMAGE_DIR)/%)
|
---|
120 | JRE64_LICENSES = $(LICENSE_DOCLIST_JRE:%=$(JRE_IMAGE_DIR)/%64)
|
---|
121 | JRE_DOCFILES = $(OTHER_DOCLIST_JRE:%=$(JRE_IMAGE_DIR)/%)
|
---|
122 | JRE_DOCFILES += $(JRE_NAMECHANGE_DOCLIST:%=$(JRE_IMAGE_DIR)/%$(TEXT_SUFFIX))
|
---|
123 |
|
---|
124 | # absolute directory names: note, these must exist prior to build
|
---|
125 | # time - they are created in the main Makefile.
|
---|
126 | JRE_IMAGE_BINDIR = $(JRE_IMAGE_DIR)/bin
|
---|
127 | JRE_IMAGE_THREADIR = $(JRE_IMAGE_DIR)/bin/*/native_threads
|
---|
128 |
|
---|
129 | MAINMANIFEST = $(JDK_TOPDIR)/make/tools/manifest.mf
|
---|
130 | BEANMANIFEST = $(JDK_TOPDIR)/make/javax/swing/beaninfo/manifest
|
---|
131 |
|
---|
132 | #
|
---|
133 | # Man pages
|
---|
134 | #
|
---|
135 |
|
---|
136 | JRE_MAN_PAGES = \
|
---|
137 | java.1 \
|
---|
138 | keytool.1 \
|
---|
139 | orbd.1 \
|
---|
140 | pack200.1 \
|
---|
141 | policytool.1 \
|
---|
142 | rmid.1 \
|
---|
143 | rmiregistry.1 \
|
---|
144 | servertool.1 \
|
---|
145 | tnameserv.1 \
|
---|
146 | unpack200.1
|
---|
147 |
|
---|
148 | ifeq ($(ARCH_DATA_MODEL),32)
|
---|
149 | JRE_MAN_PAGES += javaws.1
|
---|
150 | endif
|
---|
151 |
|
---|
152 | JDK_MAN_PAGES = \
|
---|
153 | $(JRE_MAN_PAGES) \
|
---|
154 | appletviewer.1 \
|
---|
155 | apt.1 \
|
---|
156 | extcheck.1 \
|
---|
157 | idlj.1 \
|
---|
158 | jar.1 \
|
---|
159 | jarsigner.1 \
|
---|
160 | javac.1 \
|
---|
161 | javadoc.1 \
|
---|
162 | javah.1 \
|
---|
163 | javap.1 \
|
---|
164 | jconsole.1 \
|
---|
165 | jdb.1 \
|
---|
166 | jhat.1 \
|
---|
167 | jinfo.1 \
|
---|
168 | jmap.1 \
|
---|
169 | jps.1 \
|
---|
170 | jrunscript.1 \
|
---|
171 | jsadebugd.1 \
|
---|
172 | jstack.1 \
|
---|
173 | jstat.1 \
|
---|
174 | jstatd.1 \
|
---|
175 | native2ascii.1 \
|
---|
176 | rmic.1 \
|
---|
177 | schemagen.1 \
|
---|
178 | serialver.1 \
|
---|
179 | wsgen.1 \
|
---|
180 | wsimport.1 \
|
---|
181 | xjc.1
|
---|
182 |
|
---|
183 | ifeq ($(PLATFORM), solaris)
|
---|
184 | MANBASEDIRS=$(JDK_TOPDIR)/src/solaris/doc $(IMPORTDOCDIR)
|
---|
185 | MAN1SUBDIR=sun/man/man1
|
---|
186 | endif # solaris
|
---|
187 |
|
---|
188 | ifeq ($(PLATFORM), linux)
|
---|
189 | MANBASEDIRS=$(JDK_TOPDIR)/src/linux/doc $(IMPORTDOCDIR)
|
---|
190 | MAN1SUBDIR=man
|
---|
191 | JA_DIRNAME=ja_JP.$(JA_SOURCE_ENCODING)
|
---|
192 | endif # linux
|
---|
193 |
|
---|
194 | define copy-man-pages
|
---|
195 | $(MKDIR) -p $1/man/man1
|
---|
196 | for manbase in $(MANBASEDIRS:%=%/$(MAN1SUBDIR)) ; do \
|
---|
197 | for manpage in $2; do \
|
---|
198 | if [ -f $${manbase}/$${manpage} ] ; then \
|
---|
199 | $(CP) $${manbase}/$${manpage} $1/man/man1 ; \
|
---|
200 | for ja_encoding in $(JA_TARGET_ENCODINGS); do \
|
---|
201 | ja_dir="ja"; \
|
---|
202 | if [ "$${ja_encoding}" != "$(JA_SOURCE_ENCODING)" ]; then \
|
---|
203 | ja_dir="ja_JP.$${ja_encoding}"; \
|
---|
204 | fi; \
|
---|
205 | $(MKDIR) -p $1/man/$${ja_dir}/man1; \
|
---|
206 | $(CAT) $${manbase}/ja/$${manpage} \
|
---|
207 | | $(NATIVE2ASCII) -encoding $(JA_SOURCE_ENCODING) \
|
---|
208 | | $(SED) 's/@@VERSION@@/$(jdkversion)/g' \
|
---|
209 | | $(NATIVE2ASCII) -reverse -encoding $${ja_encoding} \
|
---|
210 | > $1/man/$${ja_dir}/man1/$${manpage}; \
|
---|
211 | done; \
|
---|
212 | fi; \
|
---|
213 | done; \
|
---|
214 | done
|
---|
215 | $(java-vm-cleanup)
|
---|
216 | if [ "$(JA_DIRNAME)" != "" ] ; then \
|
---|
217 | $(MV) $1/man/ja $1/man/$(JA_DIRNAME); \
|
---|
218 | $(CD) $1/man && $(LN) -s $(JA_DIRNAME) ja; \
|
---|
219 | fi
|
---|
220 | endef
|
---|
221 |
|
---|
222 | #
|
---|
223 | # Targets.
|
---|
224 | #
|
---|
225 | INITIAL_IMAGE_JRE=initial-image-jre
|
---|
226 | INITIAL_IMAGE_JDK=initial-image-jdk
|
---|
227 | ifeq ($(PLATFORM), solaris)
|
---|
228 | ifeq ($(ARCH_DATA_MODEL), 64)
|
---|
229 | INITIAL_IMAGE_JRE=initial-image-jre-sol64
|
---|
230 | INITIAL_IMAGE_JDK=initial-image-jdk-sol64
|
---|
231 | endif
|
---|
232 | endif
|
---|
233 |
|
---|
234 | images images-clobber \
|
---|
235 | initial-image-jre initial-image-jdk \
|
---|
236 | initial-image-jre-sol64 initial-image-jdk-sol64 \
|
---|
237 | trim-image-jre trim-image-jdk \
|
---|
238 | process-image-jre process-image-jdk \
|
---|
239 | compare-image \
|
---|
240 | sec-files sec-files-win jgss-files ::
|
---|
241 | @$(ECHO) ">>>Making "$@" @ `$(DATE)` ..."
|
---|
242 |
|
---|
243 | # Order is important here, trim jre after jdk image is created
|
---|
244 | images:: sanity-images post-sanity-images \
|
---|
245 | $(INITIAL_IMAGE_JRE) $(INITIAL_IMAGE_JDK) \
|
---|
246 | trim-image-jre trim-image-jdk \
|
---|
247 | process-image-jre process-image-jdk sec-files sec-files-win jgss-files
|
---|
248 |
|
---|
249 | # Don't use these
|
---|
250 | image-jre:: initial-image-jre trim-image-jre process-image-jre
|
---|
251 | image-jdk:: initial-image-jdk trim-image-jdk process-image-jdk
|
---|
252 |
|
---|
253 | #
|
---|
254 | # Sources we ship in the SDK.
|
---|
255 | #
|
---|
256 | SOURCES = \
|
---|
257 | java/applet \
|
---|
258 | java/awt \
|
---|
259 | java/beans \
|
---|
260 | java/io \
|
---|
261 | java/lang \
|
---|
262 | java/math \
|
---|
263 | java/net \
|
---|
264 | java/nio \
|
---|
265 | java/rmi \
|
---|
266 | java/security \
|
---|
267 | java/sql \
|
---|
268 | java/text \
|
---|
269 | java/util \
|
---|
270 | com/sun/corba \
|
---|
271 | com/sun/image/codec/jpeg \
|
---|
272 | com/sun/imageio \
|
---|
273 | com/sun/java/swing \
|
---|
274 | com/sun/javadoc \
|
---|
275 | com/sun/jmx \
|
---|
276 | com/sun/mirror \
|
---|
277 | com/sun/source \
|
---|
278 | com/sun/naming \
|
---|
279 | com/sun/security/auth \
|
---|
280 | com/sun/security/jgss \
|
---|
281 | javax/accessibility \
|
---|
282 | javax/annotation \
|
---|
283 | javax/script \
|
---|
284 | javax/imageio \
|
---|
285 | javax/lang \
|
---|
286 | javax/management \
|
---|
287 | javax/naming \
|
---|
288 | javax/print \
|
---|
289 | javax/rmi \
|
---|
290 | javax/security \
|
---|
291 | javax/sound \
|
---|
292 | javax/sql \
|
---|
293 | javax/swing \
|
---|
294 | javax/tools \
|
---|
295 | javax/xml \
|
---|
296 | com/sun/org/apache \
|
---|
297 | com/sun/java_cup \
|
---|
298 | com/sun/jlex \
|
---|
299 | org/ietf \
|
---|
300 | org/omg \
|
---|
301 | org/w3c/dom \
|
---|
302 | org/xml/sax \
|
---|
303 | sunw
|
---|
304 | #
|
---|
305 | # Directories where sources may be found. If a file with the same path
|
---|
306 | # name exists in more than one of these places, the one found last on this
|
---|
307 | # list wins.
|
---|
308 | #
|
---|
309 | SOURCE_DIRS = $(SHARE_SRC)/classes $(PLATFORM_SRC)/classes
|
---|
310 | SOURCE_DIRS += $(GENSRCDIR)
|
---|
311 | SOURCE_DIRS += $(IMPORTSRCDIR)
|
---|
312 | ifndef OPENJDK
|
---|
313 | SOURCE_DIRS += $(CLOSED_SRC)/share/classes
|
---|
314 | endif
|
---|
315 |
|
---|
316 |
|
---|
317 | #
|
---|
318 | # Specific files and directories that will be filtered out from above areas.
|
---|
319 | #
|
---|
320 | SOURCE_FILTERs = $(SCM_DIRs) 'X-*' '*-X-*' '*-template.java' ',*'
|
---|
321 | SOURCE_FILES_filter = $(SOURCE_FILTERs:%=-name % -prune -o)
|
---|
322 |
|
---|
323 | #
|
---|
324 | # Bug 4249883 - excluding some unnecessary packages from com.sun.tools
|
---|
325 | #
|
---|
326 | # Bug 5008685 - exclude jconsole from sun/tools
|
---|
327 | #
|
---|
328 | TOOLS = \
|
---|
329 |
|
---|
330 | TOOLS += \
|
---|
331 | META-INF/services/com.sun.jdi.connect.Connector \
|
---|
332 | META-INF/services/com.sun.jdi.connect.spi.TransportService \
|
---|
333 | sun/tools/asm \
|
---|
334 | sun/tools/jar \
|
---|
335 | sun/tools/java \
|
---|
336 | sun/tools/javac \
|
---|
337 | sun/tools/javap \
|
---|
338 | sun/tools/jps \
|
---|
339 | sun/tools/jstat \
|
---|
340 | sun/tools/jstatd \
|
---|
341 | sun/tools/native2ascii \
|
---|
342 | sun/tools/serialver \
|
---|
343 | sun/tools/tree \
|
---|
344 | sun/tools/util \
|
---|
345 | sun/security/tools/JarBASE64Encoder.class \
|
---|
346 | sun/security/tools/JarSigner.class \
|
---|
347 | sun/security/tools/JarSignerParameters.class \
|
---|
348 | sun/security/tools/JarSignerResources.class \
|
---|
349 | sun/security/tools/JarSignerResources_ja.class \
|
---|
350 | sun/security/tools/JarSignerResources_zh_CN.class \
|
---|
351 | sun/security/tools/SignatureFile\$$Block.class \
|
---|
352 | sun/security/tools/SignatureFile.class \
|
---|
353 | sun/security/tools/TimestampedSigner.class \
|
---|
354 | sun/rmi/rmic \
|
---|
355 | sun/applet \
|
---|
356 | sun/jvmstat \
|
---|
357 | com/sun/javadoc \
|
---|
358 | com/sun/jdi \
|
---|
359 | com/sun/jarsigner \
|
---|
360 | com/sun/mirror \
|
---|
361 | com/sun/source \
|
---|
362 | com/sun/tools/doclets \
|
---|
363 | com/sun/tools/example/debug/expr \
|
---|
364 | com/sun/tools/example/debug/tty \
|
---|
365 | com/sun/tools/extcheck \
|
---|
366 | com/sun/tools/hat \
|
---|
367 | com/sun/tools/javac \
|
---|
368 | com/sun/tools/javadoc \
|
---|
369 | com/sun/tools/apt \
|
---|
370 | com/sun/tools/javah \
|
---|
371 | com/sun/tools/corba \
|
---|
372 | com/sun/tools/internal/xjc \
|
---|
373 | com/sun/tools/internal/ws \
|
---|
374 | META-INF/services/com.sun.mirror.apt.AnnotationProcessorFactory \
|
---|
375 | META-INF/services/com.sun.tools.internal.xjc.Plugin \
|
---|
376 | com/sun/istack/internal/tools \
|
---|
377 | com/sun/istack/internal/ws \
|
---|
378 | com/sun/codemodel \
|
---|
379 | com/sun/tools/internal/jxc \
|
---|
380 | com/sun/xml/internal/rngom \
|
---|
381 | com/sun/xml/internal/xsom \
|
---|
382 | org/relaxng/datatype \
|
---|
383 | com/sun/xml/internal/dtdparser \
|
---|
384 | com/sun/tools/jdi \
|
---|
385 | com/sun/tools/script/shell \
|
---|
386 |
|
---|
387 | ifndef OS2_TEMP # disable com.sun.tools.attach (see ticket:18)
|
---|
388 | TOOLS += \
|
---|
389 | META-INF/services/com.sun.tools.attach.spi.AttachProvider \
|
---|
390 | com/sun/tools/attach \
|
---|
391 | sun/tools/attach \
|
---|
392 |
|
---|
393 | endif
|
---|
394 | TOOLS += \
|
---|
395 | sun/tools/jstack \
|
---|
396 | sun/tools/jinfo \
|
---|
397 | sun/tools/jmap
|
---|
398 |
|
---|
399 | # classes that go into jsse.jar
|
---|
400 | JSSE_CLASSES_DIRS = \
|
---|
401 | sun/security/provider/Sun.class \
|
---|
402 | sun/security/rsa/SunRsaSign.class \
|
---|
403 | sun/security/ssl \
|
---|
404 | com/sun/net/ssl/internal/ssl
|
---|
405 |
|
---|
406 | # files under $(OUTPUTDIR) that need to go into sec-bin.zip for builds
|
---|
407 | # where the corresponding sources are not available
|
---|
408 | SEC_FILES_DIRS = \
|
---|
409 | classes/javax/net \
|
---|
410 | classes/javax/security/cert \
|
---|
411 | classes/com/sun/net/ssl \
|
---|
412 | classes/com/sun/security/cert \
|
---|
413 | classes/sun/net/www/protocol/https \
|
---|
414 | classes/sun/security/pkcs12 \
|
---|
415 | classes/sun/security/ssl \
|
---|
416 | classes/sun/security/krb5/*.class \
|
---|
417 | classes/sun/security/krb5/internal/*.class \
|
---|
418 | classes/sun/security/krb5/internal/ccache \
|
---|
419 | classes/sun/security/krb5/internal/crypto \
|
---|
420 | classes/sun/security/krb5/internal/ktab \
|
---|
421 | classes/sun/security/krb5/internal/rcache \
|
---|
422 | classes/sun/security/krb5/internal/util \
|
---|
423 | classes/sun/security/jgss/spi/GSSContextSpi.class
|
---|
424 |
|
---|
425 | # files under $(OUTPUTDIR) that need to go into sec-windows-win.zip for builds
|
---|
426 | # where the corresponding sources are not available
|
---|
427 | SEC_FILES_WIN_DIRS = \
|
---|
428 | classes/sun/security/krb5/internal/tools
|
---|
429 |
|
---|
430 | # files under $(BINDIR) that need to go into jgss_files.zip for builds
|
---|
431 | # where the corresponding sources are not available
|
---|
432 | JGSS_FILES_DIRS = \
|
---|
433 | bin/w2k_lsa_auth.dll \
|
---|
434 | bin/w2k_lsa_auth.map \
|
---|
435 | bin/w2k_lsa_auth.pdb
|
---|
436 |
|
---|
437 | # The following get removed from the SDK image.
|
---|
438 | NOTJDKTOOLS = \
|
---|
439 | java_vm
|
---|
440 |
|
---|
441 | # The following get removed from the JRE after the bulk-copy of BINDIR...
|
---|
442 | NOTJRETOOLS = \
|
---|
443 | appletviewer$(EXE_SUFFIX) \
|
---|
444 | extcheck$(EXE_SUFFIX) \
|
---|
445 | idlj$(EXE_SUFFIX) \
|
---|
446 | jar$(EXE_SUFFIX) \
|
---|
447 | jarsigner$(EXE_SUFFIX) \
|
---|
448 | java-rmi.cgi \
|
---|
449 | javac$(EXE_SUFFIX) \
|
---|
450 | javadoc$(EXE_SUFFIX) \
|
---|
451 | apt$(EXE_SUFFIX) \
|
---|
452 | javah$(EXE_SUFFIX) \
|
---|
453 | javap$(EXE_SUFFIX) \
|
---|
454 | jdb$(EXE_SUFFIX) \
|
---|
455 | jps$(EXE_SUFFIX) \
|
---|
456 | jrunscript$(EXE_SUFFIX) \
|
---|
457 | jstat$(EXE_SUFFIX) \
|
---|
458 | jstatd$(EXE_SUFFIX) \
|
---|
459 | jstack$(EXE_SUFFIX) \
|
---|
460 | packagebean$(SCRIPT_SUFFIX) \
|
---|
461 | rmic$(EXE_SUFFIX) \
|
---|
462 | serialver$(EXE_SUFFIX) \
|
---|
463 | unregbean$(EXE_SUFFIX) \
|
---|
464 | jconsole$(EXE_SUFFIX) \
|
---|
465 | jinfo$(EXE_SUFFIX) \
|
---|
466 | jmap$(EXE_SUFFIX) \
|
---|
467 | native2ascii$(EXE_SUFFIX) \
|
---|
468 | xjc$(EXE_SUFFIX) \
|
---|
469 | wsgen$(EXE_SUFFIX) \
|
---|
470 | wsimport$(EXE_SUFFIX) \
|
---|
471 | schemagen$(EXE_SUFFIX) \
|
---|
472 | jsadebugd$(EXE_SUFFIX) \
|
---|
473 | jhat$(EXE_SUFFIX)
|
---|
474 |
|
---|
475 | # The following get removed from the JRE after the bulk-copy of LIBDIR...
|
---|
476 | NOTJRELIBS = tools.jar \
|
---|
477 | jconsole.jar
|
---|
478 |
|
---|
479 | ifeq ($(INCLUDE_SA), true)
|
---|
480 | NOTJRELIBS += sa-jdi.jar
|
---|
481 |
|
---|
482 | # The following get removed from the JRE after the bulk-copy of LIBDIR...
|
---|
483 | NOTJRE_SHARED_LIBS = $(SALIB_NAME)
|
---|
484 | else
|
---|
485 | NOTJRE_SHARED_LIBS =
|
---|
486 | endif
|
---|
487 |
|
---|
488 | # Attach library is JDK only
|
---|
489 | NOTJRE_SHARED_LIBS += $(LIB_PREFIX)attach.$(LIBRARY_SUFFIX)
|
---|
490 |
|
---|
491 | #
|
---|
492 | ###### RULES
|
---|
493 |
|
---|
494 | # Processing license files from source area to image area
|
---|
495 | # These will be modified to have the platform specific EOL chars.
|
---|
496 | define process-doc-file
|
---|
497 | $(prep-target)
|
---|
498 | $(SED) 's/$$//g' $< > $@
|
---|
499 | $(CHMOD) 444 $@
|
---|
500 | endef
|
---|
501 |
|
---|
502 | # JDK files
|
---|
503 | $(JDK_IMAGE_DIR)/%: $(SHARE_JDK_DOC_SRC)/%
|
---|
504 | $(process-doc-file)
|
---|
505 | # Removes LICENSE_VERSION or not
|
---|
506 | ifdef LICENSE_VERSION
|
---|
507 | $(JDK_IMAGE_DIR)/%: $(SHARE_JDK_DOC_SRC)/%$(LICENSE_VERSION)
|
---|
508 | $(process-doc-file)
|
---|
509 | $(JDK_IMAGE_DIR)/%64: $(SHARE_JDK_DOC_SRC)/%$(LICENSE_VERSION)
|
---|
510 | $(process-doc-file)
|
---|
511 | else
|
---|
512 | $(JDK_IMAGE_DIR)/%64: $(SHARE_JDK_DOC_SRC)/%
|
---|
513 | $(process-doc-file)
|
---|
514 | endif
|
---|
515 |
|
---|
516 | # JRE files
|
---|
517 | $(JRE_IMAGE_DIR)/%: $(SHARE_JRE_DOC_SRC)/%
|
---|
518 | $(process-doc-file)
|
---|
519 | # Add $(TEXT_SUFFIX) suffix
|
---|
520 | ifdef TEXT_SUFFIX
|
---|
521 | $(JRE_IMAGE_DIR)/%$(TEXT_SUFFIX): $(SHARE_JRE_DOC_SRC)/%
|
---|
522 | $(process-doc-file)
|
---|
523 | endif
|
---|
524 | # Removes LICENSE_VERSION or not
|
---|
525 | ifdef LICENSE_VERSION
|
---|
526 | $(JRE_IMAGE_DIR)/%: $(SHARE_JRE_DOC_SRC)/%$(LICENSE_VERSION)
|
---|
527 | $(process-doc-file)
|
---|
528 | $(JRE_IMAGE_DIR)/%64: $(SHARE_JRE_DOC_SRC)/%$(LICENSE_VERSION)
|
---|
529 | $(process-doc-file)
|
---|
530 | else
|
---|
531 | $(JRE_IMAGE_DIR)/%64: $(SHARE_JRE_DOC_SRC)/%
|
---|
532 | $(process-doc-file)
|
---|
533 | endif
|
---|
534 |
|
---|
535 | # Differences tool
|
---|
536 | DIRDIFF_JARFILE = $(BUILDTOOLJARDIR)/dirdiff.jar
|
---|
537 |
|
---|
538 | ######################################################
|
---|
539 | # List of directories in classes directory that should NOT be in rt.jar
|
---|
540 | # sun/nio/cs/ext/ will go into charsets.jar
|
---|
541 | ######################################################
|
---|
542 |
|
---|
543 | NOT_RT_JAR_LIST = $(ABS_TEMPDIR)/not_rt_jar.list
|
---|
544 |
|
---|
545 | $(NOT_RT_JAR_LIST): FRC
|
---|
546 | $(prep-target)
|
---|
547 | $(ECHO) "#\n" >> $@
|
---|
548 | $(ECHO) "# List of subdirectories not in include in rt.jar" >> $@
|
---|
549 | $(ECHO) "# Directories must contain trailing '/'." >> $@
|
---|
550 | $(ECHO) "com/sun/javadoc/" >> $@
|
---|
551 | $(ECHO) "com/sun/jdi/" >> $@
|
---|
552 | $(ECHO) "com/sun/jarsigner/" >> $@
|
---|
553 | $(ECHO) "com/sun/mirror/" >> $@
|
---|
554 | $(ECHO) "com/sun/source/" >> $@
|
---|
555 | $(ECHO) "com/sun/istack/internal/tools/" >> $@
|
---|
556 | $(ECHO) "com/sun/istack/internal/ws/" >> $@
|
---|
557 | $(ECHO) "META-INF/services/com.sun.jdi.connect.Connector" >> $@
|
---|
558 | $(ECHO) "META-INF/services/com.sun.jdi.connect.spi.TransportService" >> $@
|
---|
559 | $(ECHO) "META-INF/services/com.sun.mirror.apt.AnnotationProcessorFactory" >> $@
|
---|
560 | $(ECHO) "META-INF/services/com.sun.tools.internal.xjc.Plugin" >> $@
|
---|
561 | $(ECHO) "com/sun/tools/" >> $@
|
---|
562 | $(ECHO) "sun/jvmstat/" >> $@
|
---|
563 | $(ECHO) "sun/nio/cs/ext/" >> $@
|
---|
564 | $(ECHO) "sun/rmi/rmic/" >> $@
|
---|
565 | $(ECHO) "sun/tools/asm/" >> $@
|
---|
566 | $(ECHO) "sun/tools/java/" >> $@
|
---|
567 | $(ECHO) "sun/tools/javac/" >> $@
|
---|
568 | $(ECHO) "sun/tools/javap/" >> $@
|
---|
569 | $(ECHO) "sun/tools/jconsole/" >> $@
|
---|
570 | $(ECHO) "sun/tools/jps/" >> $@
|
---|
571 | $(ECHO) "sun/tools/jstat/" >> $@
|
---|
572 | $(ECHO) "sun/tools/jstatd/" >> $@
|
---|
573 | $(ECHO) "sun/tools/native2ascii/" >> $@
|
---|
574 | $(ECHO) "sun/tools/serialver/" >> $@
|
---|
575 | $(ECHO) "sun/tools/tree/" >> $@
|
---|
576 | $(ECHO) "sun/tools/util/" >> $@
|
---|
577 | $(ECHO) "sun/security/tools/JarBASE64Encoder.class" >> $@
|
---|
578 | $(ECHO) "sun/security/tools/JarSigner.class" >> $@
|
---|
579 | $(ECHO) "sun/security/tools/JarSignerParameters.class" >> $@
|
---|
580 | $(ECHO) "sun/security/tools/JarSignerResources.class" >> $@
|
---|
581 | $(ECHO) "sun/security/tools/JarSignerResources_ja.class" >> $@
|
---|
582 | $(ECHO) "sun/security/tools/JarSignerResources_zh_CN.class" >> $@
|
---|
583 | $(ECHO) "sun/security/tools/SignatureFile\$$Block.class" >> $@
|
---|
584 | $(ECHO) "sun/security/tools/SignatureFile.class" >> $@
|
---|
585 | $(ECHO) "sun/security/tools/TimestampedSigner.class" >> $@
|
---|
586 | $(ECHO) "sun/security/provider/Sun.class" >> $@
|
---|
587 | $(ECHO) "sun/security/rsa/SunRsaSign.class" >> $@
|
---|
588 | $(ECHO) "sun/security/ssl/" >> $@
|
---|
589 | $(ECHO) "com/sun/net/ssl/internal/ssl/" >> $@
|
---|
590 | $(ECHO) "javax/crypto/" >> $@
|
---|
591 | $(ECHO) "sun/security/internal/" >> $@
|
---|
592 | $(ECHO) "com/sun/crypto/provider/" >> $@
|
---|
593 | $(ECHO) "META-INF/services/com.sun.tools.attach.spi.AttachProvider" >> $@
|
---|
594 | $(ECHO) "com/sun/tools/attach/" >> $@
|
---|
595 | $(ECHO) "org/relaxng/datatype/" >> $@
|
---|
596 | $(ECHO) "com/sun/codemodel/" >> $@
|
---|
597 | $(ECHO) "com/sun/xml/internal/dtdparser/" >> $@
|
---|
598 | $(ECHO) "com/sun/xml/internal/rngom/" >> $@
|
---|
599 | $(ECHO) "com/sun/xml/internal/xsom/" >> $@
|
---|
600 | $(ECHO) "com/sun/tools/script/shell/" >> $@
|
---|
601 | $(ECHO) "sun/tools/attach/" >> $@
|
---|
602 | $(ECHO) "sun/tools/jstack/" >> $@
|
---|
603 | $(ECHO) "sun/tools/jinfo/" >> $@
|
---|
604 | $(ECHO) "sun/tools/jmap/" >> $@
|
---|
605 |
|
---|
606 |
|
---|
607 | # File order list for rt.jar
|
---|
608 | # - sun.applet is included, till hotjava stops relying on it.
|
---|
609 | # - sun.tools.jar is included, needs cleanup.
|
---|
610 | #
|
---|
611 | REORDER_TEMPDIR=$(ABS_TEMPDIR)/reorder
|
---|
612 | TOTAL_JAR_FILELIST=$(REORDER_TEMPDIR)/file_list
|
---|
613 |
|
---|
614 | JARFILELISTS_TEMPDIR=$(ABS_TEMPDIR)/jarfilelists
|
---|
615 | RT_JAR_FILELIST=$(JARFILELISTS_TEMPDIR)/rt_jar_list
|
---|
616 | RES_JAR_FILELIST=$(JARFILELISTS_TEMPDIR)/resources_jar_list
|
---|
617 |
|
---|
618 | JARREORDER_JARFILE = $(ABS_BUILDTOOLJARDIR)/jarreorder.jar
|
---|
619 |
|
---|
620 | $(TOTAL_JAR_FILELIST): $(JARREORDER_JARFILE) $(NOT_RT_JAR_LIST)
|
---|
621 | $(prep-target)
|
---|
622 | $(RM) $@.temp
|
---|
623 | ($(CD) $(CLASSBINDIR) && \
|
---|
624 | $(BOOT_JAVA_CMD) -jar $(JARREORDER_JARFILE) \
|
---|
625 | -o $@.temp $(ABS_LIBDIR)/classlist $(NOT_RT_JAR_LIST) . )
|
---|
626 | $(MV) $@.temp $@
|
---|
627 | @($(CD) $(CLASSBINDIR) && $(java-vm-cleanup))
|
---|
628 |
|
---|
629 | # Create the rt.jar file list & non-class files list
|
---|
630 |
|
---|
631 | JARSPLIT_JARFILE = $(BUILDTOOLJARDIR)/jarsplit.jar
|
---|
632 |
|
---|
633 | $(RT_JAR_FILELIST) + $(RES_JAR_FILELIST): \
|
---|
634 | $(TOTAL_JAR_FILELIST) $(JARSPLIT_JARFILE)
|
---|
635 | @$(RM) $(RT_JAR_FILELIST) $(RES_JAR_FILELIST)
|
---|
636 | $(MKDIR) -p $(JARFILELISTS_TEMPDIR)
|
---|
637 | $(BOOT_JAVA_CMD) -jar $(JARSPLIT_JARFILE) \
|
---|
638 | $(TOTAL_JAR_FILELIST) \
|
---|
639 | -o $(RT_JAR_FILELIST) $(RES_JAR_FILELIST)
|
---|
640 | @$(java-vm-cleanup)
|
---|
641 |
|
---|
642 | # Create the manifest file.
|
---|
643 | JAR_MANIFEST_FILE=$(TEMPDIR)/manifest.tmp
|
---|
644 | $(JAR_MANIFEST_FILE): $(MAINMANIFEST) $(BEANMANIFEST)
|
---|
645 | $(prep-target)
|
---|
646 | $(SED) -e "s#@@RELEASE@@#$(RELEASE)#" \
|
---|
647 | -e "s#@@COMPANY_NAME@@#$(COMPANY_NAME)#" \
|
---|
648 | $(MAINMANIFEST) >> $@
|
---|
649 | $(ECHO) >> $@
|
---|
650 | $(CAT) $(BEANMANIFEST) >> $@
|
---|
651 |
|
---|
652 | # Create resources.jar containing non-class files
|
---|
653 | RESOURCES_JAR=$(TEMPDIR)/resources-orig.jar
|
---|
654 | RES_JAR_ARGLIST=$(RES_JAR_FILELIST)_args
|
---|
655 | $(RES_JAR_ARGLIST): $(RES_JAR_FILELIST)
|
---|
656 | $(prep-target)
|
---|
657 | $(SED) -e "s@^@-C $(CLASSBINDIR) @" $< > $@
|
---|
658 | $(RESOURCES_JAR): $(RES_JAR_ARGLIST) $(JAR_MANIFEST_FILE)
|
---|
659 | $(prep-target)
|
---|
660 | $(BOOT_JAR_CMD) c0mf $(JAR_MANIFEST_FILE) $@ \
|
---|
661 | @$(RES_JAR_ARGLIST) $(JAR_JFLAGS)
|
---|
662 | @$(java-vm-cleanup)
|
---|
663 |
|
---|
664 | # Create jsse.jar containing SunJSSE implementation classes
|
---|
665 | JSSE_JAR=$(TEMPDIR)/jsse-orig.jar
|
---|
666 | $(JSSE_JAR): $(JSSE_CLASSES_DIRS:%=$(CLASSBINDIR)/%) \
|
---|
667 | $(wildcard $(JSSE_CLASSES_DIRS:%=$(CLASSBINDIR)/%/*)) \
|
---|
668 | $(JAR_MANIFEST_FILE)
|
---|
669 | $(prep-target)
|
---|
670 | $(BOOT_JAR_CMD) c0mf $(JAR_MANIFEST_FILE) $@ \
|
---|
671 | $(JSSE_CLASSES_DIRS:%=-C $(CLASSBINDIR) %) \
|
---|
672 | $(JAR_JFLAGS)
|
---|
673 | @$(java-vm-cleanup)
|
---|
674 |
|
---|
675 | # Create sec-bin.zip
|
---|
676 | SEC_FILES_ZIP=$(ABS_TEMPDIR)/sec-bin.zip
|
---|
677 | sec-files::
|
---|
678 | $(prep-target)
|
---|
679 | $(RM) $(SEC_FILES_ZIP)
|
---|
680 | $(CD) $(OUTPUTDIR) && \
|
---|
681 | $(ZIPEXE) -rq9 $(SEC_FILES_ZIP) $(SEC_FILES_DIRS)
|
---|
682 | @$(java-vm-cleanup)
|
---|
683 |
|
---|
684 | # Create sec-windows-bin.zip
|
---|
685 | SEC_FILES_WIN_ZIP=$(ABS_TEMPDIR)/sec-windows-bin.zip
|
---|
686 | sec-files-win::
|
---|
687 | ifeq ($(PLATFORM), windows)
|
---|
688 | $(prep-target)
|
---|
689 | $(RM) $(SEC_FILES_WIN_ZIP)
|
---|
690 | $(CD) $(OUTPUTDIR) && \
|
---|
691 | $(ZIPEXE) -rq9 $(SEC_FILES_WIN_ZIP) $(SEC_FILES_WIN_DIRS)
|
---|
692 | @$(java-vm-cleanup)
|
---|
693 | endif
|
---|
694 |
|
---|
695 | # Create JGSS files that contains the native Kerberos library
|
---|
696 | JGSS_WIN32_FILES_ZIP=$(ABS_TEMPDIR)/jgss-windows-i586-bin.zip
|
---|
697 | JGSS_WIN64_FILES_ZIP=$(ABS_TEMPDIR)/jgss-windows-x64-bin.zip
|
---|
698 | jgss-files::
|
---|
699 | ifeq ($(PLATFORM), windows)
|
---|
700 | $(prep-target)
|
---|
701 | ifeq ($(ARCH_DATA_MODEL), 32)
|
---|
702 | $(RM) $(JGSS_WIN32_FILES_ZIP)
|
---|
703 | $(CD) $(OUTPUTDIR) && \
|
---|
704 | $(ZIPEXE) -rq9 $(JGSS_WIN32_FILES_ZIP) $(JGSS_FILES_DIRS)
|
---|
705 | else
|
---|
706 | $(RM) $(JGSS_WIN64_FILES_ZIP)
|
---|
707 | $(CD) $(OUTPUTDIR) && \
|
---|
708 | $(ZIPEXE) -rq9 $(JGSS_WIN64_FILES_ZIP) $(JGSS_FILES_DIRS)
|
---|
709 | endif
|
---|
710 | @$(java-vm-cleanup)
|
---|
711 | endif
|
---|
712 |
|
---|
713 | # Create rt.jar
|
---|
714 | RT_JAR=$(ABS_TEMPDIR)/rt-orig.jar
|
---|
715 | RT_JAR_ARGLIST=$(RT_JAR_FILELIST)_args
|
---|
716 | $(RT_JAR_ARGLIST): $(RT_JAR_FILELIST)
|
---|
717 | $(prep-target)
|
---|
718 | $(SED) -e "s@^@-C $(CLASSBINDIR) @" $< > $@
|
---|
719 | $(RT_JAR): $(RT_JAR_ARGLIST) $(JAR_MANIFEST_FILE)
|
---|
720 | $(prep-target)
|
---|
721 | $(BOOT_JAR_CMD) c0mf $(JAR_MANIFEST_FILE) $@ \
|
---|
722 | @$(RT_JAR_ARGLIST) $(JAR_JFLAGS)
|
---|
723 | @$(java-vm-cleanup)
|
---|
724 |
|
---|
725 | # Meta-index construction to make core class loaders lazier
|
---|
726 |
|
---|
727 | BUILDMETAINDEX_JARFILE = $(ABS_BUILDTOOLJARDIR)/buildmetaindex.jar
|
---|
728 |
|
---|
729 | ######################################################
|
---|
730 | # JRE Image
|
---|
731 | ######################################################
|
---|
732 |
|
---|
733 | initial-image-jre-setup:
|
---|
734 | $(RM) -r $(JRE_IMAGE_DIR)
|
---|
735 | $(MKDIR) -p $(JRE_IMAGE_DIR)
|
---|
736 |
|
---|
737 | # 64-bit solaris jre image contains only the 64-bit add-on files.
|
---|
738 | initial-image-jre-sol64:: initial-image-jre-setup \
|
---|
739 | $(JRE_LICENSES) $(JRE64_LICENSES)
|
---|
740 | @# Use tar instead of cp to preserve the symbolic links
|
---|
741 | for dir in bin lib ; do \
|
---|
742 | ( $(CD) $(OUTPUTDIR) && \
|
---|
743 | $(TAR) cf - `$(FIND) $$dir -name '$(ARCH)' -print` | \
|
---|
744 | ($(CD) $(JRE_IMAGE_DIR) && $(TAR) xf -) ) ; \
|
---|
745 | done
|
---|
746 | @# Remove some files from the jre area
|
---|
747 | for t in $(NOTJRETOOLS) ; do \
|
---|
748 | $(RM) $(JRE_IMAGE_DIR)/bin$(ISA_DIR)/$$t ; \
|
---|
749 | done
|
---|
750 | for l in $(NOTJRELIBS) ; do \
|
---|
751 | $(RM) $(JRE_IMAGE_DIR)/lib/$$l ; \
|
---|
752 | done
|
---|
753 | $(RM) `$(FIND) $(JRE_IMAGE_DIR)/lib -name 'orb.idl'`
|
---|
754 | $(RM) `$(FIND) $(JRE_IMAGE_DIR)/lib -name 'ir.idl'`
|
---|
755 |
|
---|
756 | # Construct an initial jre image (initial jdk jre) no trimming or stripping
|
---|
757 | initial-image-jre:: initial-image-jre-setup \
|
---|
758 | $(JRE_LICENSES) $(JRE_DOCFILES) \
|
---|
759 | $(RT_JAR) $(RESOURCES_JAR) $(JSSE_JAR) \
|
---|
760 | $(BUILDMETAINDEX_JARFILE)
|
---|
761 | @# Copy in bin directory
|
---|
762 | $(CD) $(OUTPUTDIR) && $(FIND) bin -depth | $(CPIO) -pdum $(JRE_IMAGE_DIR)
|
---|
763 | @# CTE plugin security change require new empty directory lib/applet
|
---|
764 | $(MKDIR) -p $(JRE_IMAGE_DIR)/lib/applet
|
---|
765 | @# Copy in lib directory
|
---|
766 | $(CD) $(OUTPUTDIR) && $(FIND) lib -depth | $(CPIO) -pdum $(JRE_IMAGE_DIR)
|
---|
767 | @# Make sure all directories are read/execute for everyone
|
---|
768 | $(CHMOD) a+rx `$(FIND) $(JRE_IMAGE_DIR) -type d`
|
---|
769 | @# Remove some files from the jre area
|
---|
770 | for t in $(NOTJRETOOLS) ; do \
|
---|
771 | $(RM) $(JRE_IMAGE_DIR)/bin$(ISA_DIR)/$$t ; \
|
---|
772 | done
|
---|
773 | for l in $(NOTJRELIBS) ; do \
|
---|
774 | $(RM) $(JRE_IMAGE_DIR)/lib/$$l ; \
|
---|
775 | done
|
---|
776 | @# Remove orb.idl and ir.idl from jre
|
---|
777 | $(FIND) $(JRE_IMAGE_DIR)/lib -name 'orb.idl' -exec $(RM) \{} \;
|
---|
778 | $(FIND) $(JRE_IMAGE_DIR)/lib -name 'ir.idl' -exec $(RM) \{} \;
|
---|
779 | @# Copy in rt.jar & resources.jar file
|
---|
780 | $(CP) $(RT_JAR) $(JRE_IMAGE_DIR)/lib/rt.jar
|
---|
781 | $(CP) $(RESOURCES_JAR) $(JRE_IMAGE_DIR)/lib/resources.jar
|
---|
782 | $(CP) $(JSSE_JAR) $(JRE_IMAGE_DIR)/lib/jsse.jar
|
---|
783 | @# Generate meta-index to make boot and extension class loaders lazier
|
---|
784 | $(CD) $(JRE_IMAGE_DIR)/lib && \
|
---|
785 | $(BOOT_JAVA_CMD) -jar $(BUILDMETAINDEX_JARFILE) \
|
---|
786 | -o meta-index *.jar
|
---|
787 | @$(CD) $(JRE_IMAGE_DIR)/lib && $(java-vm-cleanup)
|
---|
788 | $(CD) $(JRE_IMAGE_DIR)/lib/ext && \
|
---|
789 | $(BOOT_JAVA_CMD) -jar $(BUILDMETAINDEX_JARFILE) \
|
---|
790 | -o meta-index *.jar
|
---|
791 | @$(CD) $(JRE_IMAGE_DIR)/lib/ext && $(java-vm-cleanup)
|
---|
792 | ifeq ($(filter-out windows os2, $(PLATFORM)),)
|
---|
793 | @# Remove certain *.lib files
|
---|
794 | $(CD) $(JRE_IMAGE_DIR)/lib && \
|
---|
795 | $(RM) java.$(LIB_SUFFIX) jvm.$(LIB_SUFFIX) \
|
---|
796 | hpi.$(LIB_SUFFIX) awt.$(LIB_SUFFIX) jawt.$(LIB_SUFFIX)
|
---|
797 | else
|
---|
798 | $(call copy-man-pages,$(JRE_IMAGE_DIR),$(JRE_MAN_PAGES))
|
---|
799 | endif # windows || OS/2
|
---|
800 |
|
---|
801 | # Trim out any extra files not for the jre shipment but wanted in the jdk jre.
|
---|
802 | # (Note the jdk WILL want the jre image before this trimming)
|
---|
803 | # Removes server VM on Windows 32bit.
|
---|
804 | # Remove certain shared libraries that should not be in the jre image
|
---|
805 | # but should be in the jdk jre image.
|
---|
806 | trim-image-jre::
|
---|
807 | ifeq ($(PLATFORM), windows)
|
---|
808 | ifeq ($(ARCH_DATA_MODEL), 32)
|
---|
809 | $(RM) -r $(JRE_IMAGE_DIR)/bin/server
|
---|
810 | endif
|
---|
811 | ifdef NOTJRE_SHARED_LIBS
|
---|
812 | for l in $(NOTJRE_SHARED_LIBS) ; do \
|
---|
813 | $(RM) $(JRE_IMAGE_DIR)/bin/$$l ; \
|
---|
814 | done ;
|
---|
815 | endif
|
---|
816 | else # PLATFORM
|
---|
817 | ifdef NOTJRE_SHARED_LIBS
|
---|
818 | for l in $(NOTJRE_SHARED_LIBS) ; do \
|
---|
819 | $(RM) $(JRE_IMAGE_DIR)/lib/$(LIBARCH)/$$l ; \
|
---|
820 | done ;
|
---|
821 | endif
|
---|
822 | endif # PLATFORM
|
---|
823 |
|
---|
824 | # Get list of all Elf files in the jre
|
---|
825 | JRE_ELF_LIST=$(TEMPDIR)/jre-elf-files.list
|
---|
826 | $(JRE_ELF_LIST):
|
---|
827 | ifneq ($(filter-out windows os2, $(PLATFORM)),)
|
---|
828 | $(RM) $@
|
---|
829 | $(FIND) $(JRE_IMAGE_DIR)/lib -type f -name \*.$(LIB_SUFFIX) >> $@
|
---|
830 | $(FILE) `$(FIND) $(JRE_IMAGE_DIR)/bin -type f -name \*$(EXE_SUFFIX)` \
|
---|
831 | | $(EGREP) 'ELF' | $(CUT) -d':' -f1 >> $@
|
---|
832 | endif
|
---|
833 |
|
---|
834 | # Post process the image (strips and mcs on Elf files we are shipping)
|
---|
835 | # (Note the jdk WILL want the jre image before this processing)
|
---|
836 | process-image-jre:: $(JRE_ELF_LIST)
|
---|
837 | ifneq ($(POST_STRIP_PROCESS), )
|
---|
838 | for f in `$(CAT) $(JRE_ELF_LIST)`; do \
|
---|
839 | $(CHMOD) u+w $${f}; \
|
---|
840 | $(ECHO) $(POST_STRIP_PROCESS) $${f}; \
|
---|
841 | $(POST_STRIP_PROCESS) $${f}; \
|
---|
842 | $(CHMOD) go-w $${f}; \
|
---|
843 | done
|
---|
844 | endif
|
---|
845 | ifneq ($(POST_MCS_PROCESS), )
|
---|
846 | for f in `$(CAT) $(JRE_ELF_LIST)`; do \
|
---|
847 | $(CHMOD) u+w $${f}; \
|
---|
848 | $(ECHO) $(POST_MCS_PROCESS) $${f}; \
|
---|
849 | $(POST_MCS_PROCESS) $${f}; \
|
---|
850 | $(CHMOD) go-w $${f}; \
|
---|
851 | done
|
---|
852 | endif
|
---|
853 | $(RM) $(JRE_ELF_LIST)
|
---|
854 |
|
---|
855 | ######################################################
|
---|
856 | # JDK Image
|
---|
857 | ######################################################
|
---|
858 | # Note: cpio ($(CPIO)) sometimes leaves directories without rx access.
|
---|
859 |
|
---|
860 | initial-image-jdk-setup:
|
---|
861 | $(RM) -r $(JDK_IMAGE_DIR)
|
---|
862 | $(MKDIR) -p $(JDK_IMAGE_DIR)/jre
|
---|
863 | ($(CD) $(JRE_IMAGE_DIR) && $(FIND) . -depth -print \
|
---|
864 | | $(CPIO) -pdum $(JDK_IMAGE_DIR)/jre )
|
---|
865 | $(RM) -rf $(JDK_IMAGE_DIR)/jre/man
|
---|
866 | $(CHMOD) a+rx `$(FIND) $(JDK_IMAGE_DIR) -type d`
|
---|
867 |
|
---|
868 | initial-image-jdk64-bindemos:
|
---|
869 | for dir in bin demo ; do \
|
---|
870 | ( $(CD) $(OUTPUTDIR) && \
|
---|
871 | $(TAR) cf - `$(FIND) $$dir -name '$(LIBARCH)' -print` | \
|
---|
872 | ($(CD) $(JDK_IMAGE_DIR) && $(TAR) xf -) ) ; \
|
---|
873 | done
|
---|
874 |
|
---|
875 | # Solaris 64 bit image is special
|
---|
876 | initial-image-jdk-sol64:: initial-image-jdk-setup \
|
---|
877 | initial-image-jdk64-bindemos \
|
---|
878 | $(JDK_LICENSES) $(JDK64_LICENSES)
|
---|
879 |
|
---|
880 | # DB files to add
|
---|
881 | ifdef OPENJDK
|
---|
882 |
|
---|
883 | initial-image-jdk-db:
|
---|
884 |
|
---|
885 | else
|
---|
886 |
|
---|
887 | # Create the list of db *.zip files to bundle with jdk
|
---|
888 | ABS_DB_PATH :=$(call FullPath,$(CLOSED_SHARE_SRC)/db)
|
---|
889 | DB_ZIP_LIST = $(shell $(LS) $(ABS_DB_PATH)/*.zip 2>/dev/null)
|
---|
890 |
|
---|
891 | initial-image-jdk-db: $(DB_ZIP_LIST)
|
---|
892 | $(MKDIR) -p $(JDK_IMAGE_DIR)/db
|
---|
893 | for d in $(DB_ZIP_LIST); do \
|
---|
894 | ($(CD) $(JDK_IMAGE_DIR)/db && $(UNZIP) -o $$d); \
|
---|
895 | done
|
---|
896 |
|
---|
897 | endif
|
---|
898 |
|
---|
899 | # Standard jdk image
|
---|
900 | initial-image-jdk:: initial-image-jdk-setup \
|
---|
901 | initial-image-jdk-db \
|
---|
902 | $(JDK_LICENSES) $(JDK_DOCFILES)
|
---|
903 | $(MKDIR) $(JDK_IMAGE_DIR)/lib
|
---|
904 | @#
|
---|
905 | @# Copy in the jars in lib that only belong in the JDK
|
---|
906 | @#
|
---|
907 | for l in $(NOTJRELIBS); do \
|
---|
908 | if [ -r $(LIBDIR)/$$l ]; then \
|
---|
909 | $(CP) $(LIBDIR)/$$l $(JDK_IMAGE_DIR)/lib; \
|
---|
910 | fi; \
|
---|
911 | done
|
---|
912 | ifeq ($(filter-out windows os2, $(PLATFORM)),)
|
---|
913 | @#
|
---|
914 | @# lib/
|
---|
915 | @#
|
---|
916 | $(CP) $(LIBDIR)/$(LIB_PREFIX)jvm.$(LIB_SUFFIX) $(JDK_IMAGE_DIR)/lib
|
---|
917 | $(CP) $(LIBDIR)/$(LIB_PREFIX)jawt.$(LIB_SUFFIX) $(JDK_IMAGE_DIR)/lib
|
---|
918 | @#
|
---|
919 | @# bin/
|
---|
920 | @#
|
---|
921 | @# copy all EXE files and only certain DLL files from BINDIR
|
---|
922 | $(MKDIR) -p $(JDK_IMAGE_DIR)/bin
|
---|
923 | $(CP) $(BINDIR)/*$(EXE_SUFFIX) $(JDK_IMAGE_DIR)/bin
|
---|
924 | $(CP) $(BINDIR)/jli.$(LIBRARY_SUFFIX) $(JDK_IMAGE_DIR)/bin
|
---|
925 | ifeq ($(ARCH_DATA_MODEL), 32)
|
---|
926 | ifeq ($(COMPILER_VERSION), VS2003)
|
---|
927 | $(CP) $(BINDIR)/msvc*71.$(LIBRARY_SUFFIX) $(JDK_IMAGE_DIR)/bin
|
---|
928 | endif
|
---|
929 | endif
|
---|
930 | else # PLATFORM
|
---|
931 | @#
|
---|
932 | @# bin/
|
---|
933 | @#
|
---|
934 | ($(CD) $(BINDIR)/.. && $(TAR) cf - \
|
---|
935 | `$(FIND) bin \( -type f -o -type l \) -print `) | \
|
---|
936 | ($(CD) $(JDK_IMAGE_DIR) && $(TAR) xf -)
|
---|
937 | endif # PLATFORM
|
---|
938 | @#
|
---|
939 | @# files that might not exist need to be touched.
|
---|
940 | @#
|
---|
941 | $(TOUCH) $(CLASSBINDIR)/META-INF/services/com.sun.tools.internal.xjc.Plugin
|
---|
942 | @#
|
---|
943 | @# lib/tools.jar
|
---|
944 | @#
|
---|
945 | $(BOOT_JAR_CMD) c0f $(LIBDIR)/tools.jar $(addprefix \
|
---|
946 | -C $(CLASSBINDIR) , $(TOOLS)) \
|
---|
947 | $(JAR_JFLAGS)
|
---|
948 | @$(java-vm-cleanup)
|
---|
949 | $(CP) $(LIBDIR)/tools.jar $(JDK_IMAGE_DIR)/lib/tools.jar
|
---|
950 | @#
|
---|
951 | @# lib/ct.sym
|
---|
952 | @#
|
---|
953 | $(MKDIR) -p $(OUTPUTDIR)/symbols/META-INF/sym
|
---|
954 | $(JAVAC_CMD) -XDprocess.packages -proc:only \
|
---|
955 | -processor com.sun.tools.javac.sym.CreateSymbols \
|
---|
956 | -Acom.sun.tools.javac.sym.Jar=$(RT_JAR) \
|
---|
957 | -Acom.sun.tools.javac.sym.Dest=$(OUTPUTDIR)/symbols/META-INF/sym/rt.jar \
|
---|
958 | $(CORE_PKGS) $(NON_CORE_PKGS) $(EXCLUDE_PROPWARN_PKGS)
|
---|
959 | $(BOOT_JAR_CMD) c0f $(LIBDIR)/ct.sym \
|
---|
960 | -C $(OUTPUTDIR)/symbols META-INF $(JAR_JFLAGS)
|
---|
961 | @$(java-vm-cleanup)
|
---|
962 | $(CP) $(LIBDIR)/ct.sym $(JDK_IMAGE_DIR)/lib/ct.sym
|
---|
963 | @#
|
---|
964 | @# CORBA supported orb.idl and ir.idl should be copied to lib
|
---|
965 | @#
|
---|
966 | $(CP) $(LIBDIR)/orb.idl $(JDK_IMAGE_DIR)/lib/orb.idl
|
---|
967 | $(CP) $(LIBDIR)/ir.idl $(JDK_IMAGE_DIR)/lib/ir.idl
|
---|
968 | ifeq ($(PLATFORM), linux)
|
---|
969 | @#
|
---|
970 | @# on Linux copy jexec from jre/lib to /lib
|
---|
971 | @#
|
---|
972 | $(CP) $(LIBDIR)/jexec $(JDK_IMAGE_DIR)/lib/jexec
|
---|
973 | endif # PLATFORM
|
---|
974 | @#
|
---|
975 | @# src.zip
|
---|
976 | @#
|
---|
977 | $(MKDIR) -p $(JDK_IMAGE_DIR)/src
|
---|
978 | @#
|
---|
979 | @# The '*-*' pattern in the find command excludes files named with dashes,
|
---|
980 | @# such as the java.nio templates for generated classes
|
---|
981 | @#
|
---|
982 | @# The Linux 'tar' command cannot handle the huge command line argument
|
---|
983 | @# generated by the more efficient solaris/windows method of copying files.
|
---|
984 | @# So for Linux, make use of the -T option (like Solaris' -I option) of
|
---|
985 | @# obtaining the list of files from a file. MKS tar has no such option.
|
---|
986 | ifeq ($(filter-out linux os2, $(PLATFORM)),)
|
---|
987 | for d in $(SOURCE_DIRS); do \
|
---|
988 | $(RM) $(ABS_TEMPDIR)/src-files.list; \
|
---|
989 | ($(CD) $$d && \
|
---|
990 | for sd in $(SOURCES) ; do \
|
---|
991 | if [ -d $$sd ] ; then \
|
---|
992 | $(FIND) $$sd $(SOURCE_FILES_filter) \
|
---|
993 | -name '*.java' -print \
|
---|
994 | >> $(ABS_TEMPDIR)/src-files.list ; \
|
---|
995 | fi; \
|
---|
996 | done ; \
|
---|
997 | ) ; \
|
---|
998 | if [ -f $(ABS_TEMPDIR)/src-files.list ] ; then \
|
---|
999 | ($(CD) $$d && $(TAR) cf - -T $(ABS_TEMPDIR)/src-files.list ) \
|
---|
1000 | | ($(CD) $(JDK_IMAGE_DIR)/src && $(TAR) xf -); \
|
---|
1001 | fi; \
|
---|
1002 | done
|
---|
1003 | else
|
---|
1004 | for d in $(SOURCE_DIRS); do \
|
---|
1005 | $(RM) $(ABS_TEMPDIR)/src-files.list; \
|
---|
1006 | ($(CD) $$d && \
|
---|
1007 | for sd in $(SOURCES) ; do \
|
---|
1008 | if [ -d $$sd ] ; then \
|
---|
1009 | $(FIND) $$sd $(SOURCE_FILES_filter) \
|
---|
1010 | -name '*.java' -print \
|
---|
1011 | >> $(ABS_TEMPDIR)/src-files.list ; \
|
---|
1012 | fi; \
|
---|
1013 | done ; \
|
---|
1014 | ) ; \
|
---|
1015 | if [ -f $(ABS_TEMPDIR)/src-files.list ] ; then \
|
---|
1016 | ($(CD) $$d && $(TAR) cf - `$(CAT) $(ABS_TEMPDIR)/src-files.list`) \
|
---|
1017 | | ($(CD) $(JDK_IMAGE_DIR)/src && $(TAR) xf -); \
|
---|
1018 | fi; \
|
---|
1019 | done
|
---|
1020 | endif
|
---|
1021 | $(RM) $(ABS_TEMPDIR)/src-files.list
|
---|
1022 | $(CHMOD) -R +w $(JDK_IMAGE_DIR)/src
|
---|
1023 | $(MKDIR) -p $(JDK_IMAGE_DIR)/src/launcher
|
---|
1024 | $(CP) $(SHARE_SRC)/bin/java.c $(JDK_IMAGE_DIR)/src/launcher
|
---|
1025 | $(CP) $(SHARE_SRC)/bin/java.h $(JDK_IMAGE_DIR)/src/launcher
|
---|
1026 | $(CP) $(SHARE_SRC)/bin/manifest_info.h $(JDK_IMAGE_DIR)/src/launcher
|
---|
1027 | $(CP) $(SHARE_SRC)/bin/parse_manifest.c $(JDK_IMAGE_DIR)/src/launcher
|
---|
1028 | $(CP) $(SHARE_SRC)/bin/version_comp.c $(JDK_IMAGE_DIR)/src/launcher
|
---|
1029 | $(CP) $(SHARE_SRC)/bin/version_comp.h $(JDK_IMAGE_DIR)/src/launcher
|
---|
1030 | $(CP) $(SHARE_SRC)/bin/wildcard.h $(JDK_IMAGE_DIR)/src/launcher
|
---|
1031 | $(CP) $(SHARE_SRC)/bin/wildcard.c $(JDK_IMAGE_DIR)/src/launcher
|
---|
1032 | $(CP) $(SHARE_SRC)/bin/jli_util.h $(JDK_IMAGE_DIR)/src/launcher
|
---|
1033 | $(CP) $(SHARE_SRC)/bin/jli_util.c $(JDK_IMAGE_DIR)/src/launcher
|
---|
1034 | $(CP) $(SHARE_SRC)/bin/splashscreen_stubs.c $(JDK_IMAGE_DIR)/src/launcher
|
---|
1035 | $(CP) $(SHARE_SRC)/bin/splashscreen.h $(JDK_IMAGE_DIR)/src/launcher
|
---|
1036 | $(CP) $(PLATFORM_SRC)/bin/java_md.c $(JDK_IMAGE_DIR)/src/launcher
|
---|
1037 | $(CP) $(PLATFORM_SRC)/bin/java_md.h $(JDK_IMAGE_DIR)/src/launcher
|
---|
1038 | $(CD) $(JDK_IMAGE_DIR)/src && $(ZIPEXE) -qr ../src.zip *
|
---|
1039 | $(RM) -r $(JDK_IMAGE_DIR)/src
|
---|
1040 | @#
|
---|
1041 | @# demo, include
|
---|
1042 | @#
|
---|
1043 | $(CP) -r -f $(DEMODIR) $(JDK_IMAGE_DIR)
|
---|
1044 | $(CP) -r -f $(SAMPLEDIR) $(JDK_IMAGE_DIR)
|
---|
1045 | $(CP) -r $(INCLUDEDIR) $(JDK_IMAGE_DIR)
|
---|
1046 | @#
|
---|
1047 | @# Swing BeanInfo generation
|
---|
1048 | @#
|
---|
1049 | $(CD) javax/swing/beaninfo && $(MAKE) swing-1.2-beans
|
---|
1050 | ifneq ($(filter-out windows os2, $(PLATFORM)),)
|
---|
1051 | $(call copy-man-pages,$(JDK_IMAGE_DIR),$(JDK_MAN_PAGES))
|
---|
1052 | endif # !windows
|
---|
1053 |
|
---|
1054 | # Trim out files we don't want to ship
|
---|
1055 | trim-image-jdk::
|
---|
1056 | @# Remove tools that should not be part of SDK.
|
---|
1057 | for t in $(NOTJDKTOOLS); do \
|
---|
1058 | $(RM) $(JDK_IMAGE_DIR)/bin/$${t}$(EXE_SUFFIX) \
|
---|
1059 | $(JDK_IMAGE_DIR)/bin/*/native_threads/$${t}$(EXE_SUFFIX); \
|
---|
1060 | done
|
---|
1061 |
|
---|
1062 | # Get list of Elf files in the jdk
|
---|
1063 | JDK_ELF_LIST=$(TEMPDIR)/jdk-elf-files.list
|
---|
1064 | $(JDK_ELF_LIST):
|
---|
1065 | ifneq ($(filter-out windows os2, $(PLATFORM)),)
|
---|
1066 | $(RM) $@
|
---|
1067 | $(FIND) $(JDK_IMAGE_DIR)/jre/lib -type f -name \*.$(LIB_SUFFIX) >> $@
|
---|
1068 | $(FILE) `$(FIND) $(JDK_IMAGE_DIR)/jre/bin -type f -name \*$(EXE_SUFFIX)` \
|
---|
1069 | | $(EGREP) 'ELF' | $(CUT) -d':' -f1 >> $@
|
---|
1070 | file `$(FIND) $(JDK_IMAGE_DIR)/bin -type f -name \*$(EXE_SUFFIX)` \
|
---|
1071 | | $(EGREP) 'ELF' | $(CUT) -d':' -f1 >> $@
|
---|
1072 | endif
|
---|
1073 |
|
---|
1074 | # Post process the image (strips and mcs on files we are shipping)
|
---|
1075 | process-image-jdk:: $(JDK_ELF_LIST)
|
---|
1076 | ifneq ($(POST_STRIP_PROCESS), )
|
---|
1077 | for f in `$(CAT) $(JDK_ELF_LIST)`; do \
|
---|
1078 | $(CHMOD) u+w $${f}; \
|
---|
1079 | $(ECHO) $(POST_STRIP_PROCESS) $${f}; \
|
---|
1080 | $(POST_STRIP_PROCESS) $${f}; \
|
---|
1081 | $(CHMOD) go-w $${f}; \
|
---|
1082 | done
|
---|
1083 | endif
|
---|
1084 | ifneq ($(POST_MCS_PROCESS), )
|
---|
1085 | for f in `$(CAT) $(JDK_ELF_LIST)`; do \
|
---|
1086 | $(CHMOD) u+w $${f}; \
|
---|
1087 | $(ECHO) $(POST_MCS_PROCESS) $${f}; \
|
---|
1088 | $(POST_MCS_PROCESS) $${f}; \
|
---|
1089 | $(CHMOD) go-w $${f}; \
|
---|
1090 | done
|
---|
1091 | endif
|
---|
1092 | $(RM) $(JDK_ELF_LIST)
|
---|
1093 |
|
---|
1094 | ###################################################################
|
---|
1095 | # What do we compare against
|
---|
1096 | ###################################################################
|
---|
1097 |
|
---|
1098 | # The temporary files and areas created
|
---|
1099 | TEMP_PREV_JRE_BASE_DIR=$(TEMPDIR)/previous_jre
|
---|
1100 | TEMP_PREV_JDK_BASE_DIR=$(TEMPDIR)/previous_jdk
|
---|
1101 | TEMP_PREV_JRE_COMPARISON=$(TEMP_PREV_JRE_BASE_DIR)/previous_jre_comparison.txt
|
---|
1102 | TEMP_PREV_JDK_COMPARISON=$(TEMP_PREV_JDK_BASE_DIR)/previous_jdk_comparison.txt
|
---|
1103 | TEMP_PREV_JRE_IMAGE_DIR=$(TEMP_PREV_JRE_BASE_DIR)/jre$(PREVIOUS_JDK_VERSION)
|
---|
1104 | TEMP_PREV_JDK_IMAGE_DIR=$(TEMP_PREV_JDK_BASE_DIR)/jdk$(PREVIOUS_JDK_VERSION)
|
---|
1105 |
|
---|
1106 | # unbundle(sourcedir,bundlename,destdir)
|
---|
1107 | # logic is slightly different if a .tar.gz file (linux)
|
---|
1108 | define unbundle
|
---|
1109 | $(RM) -r $3
|
---|
1110 | $(MKDIR) -p $3
|
---|
1111 | $(CP) $1 $3
|
---|
1112 | if [ "`$(BASENAME) $2 .gz`" != "$2" ] ; then \
|
---|
1113 | ( $(CD) $3 && ( $(GUNZIP) -dc $2 | $(TAR) xf - ) && $(RM) $2 ); \
|
---|
1114 | else \
|
---|
1115 | ( $(CD) $3 && $(TAR) xf $2 && $(RM) $2 ); \
|
---|
1116 | fi
|
---|
1117 | ( $(CD) $3 && $(RM) $2 )
|
---|
1118 | endef
|
---|
1119 |
|
---|
1120 | # In general, ignore the fastdebug tree, and changes in the demo and sample area
|
---|
1121 | COMPARE_FILTER = | $(EGREP) -v /fastdebug/ | $(EGREP) -v /demo/ | $(EGREP) -v /sample/
|
---|
1122 |
|
---|
1123 | # If a previuous image is provided, no need to install it.
|
---|
1124 | ifdef PREVIOUS_JDK_IMAGE
|
---|
1125 |
|
---|
1126 | # Just use the pre-installed images
|
---|
1127 | PREV_JRE_IMAGE_DIR=$(PREVIOUS_JDK_IMAGE)/jre
|
---|
1128 | PREV_JDK_IMAGE_DIR=$(PREVIOUS_JDK_IMAGE)
|
---|
1129 |
|
---|
1130 | else
|
---|
1131 |
|
---|
1132 | # Use the temp images we will create
|
---|
1133 | PREV_JRE_IMAGE_DIR=$(TEMP_PREV_JRE_IMAGE_DIR)
|
---|
1134 | PREV_JDK_IMAGE_DIR=$(TEMP_PREV_JDK_IMAGE_DIR)
|
---|
1135 |
|
---|
1136 | # Force the installation in this case
|
---|
1137 | compare-image:: install-previous-sanity install-previous-jre install-previous-jdk
|
---|
1138 |
|
---|
1139 | # Unbundle the jre
|
---|
1140 | $(TEMP_PREV_JRE_IMAGE_DIR)/bin/java$(EXE_SUFFIX): $(PREVIOUS_JRE_BUNDLE)
|
---|
1141 | $(call unbundle,$(PREVIOUS_JRE_BUNDLE),$(PREVIOUS_JRE_FILE),$(TEMP_PREV_JRE_BASE_DIR))
|
---|
1142 | $(TOUCH) $@
|
---|
1143 |
|
---|
1144 | # Unbundle the jdk
|
---|
1145 | $(TEMP_PREV_JDK_IMAGE_DIR)/bin/java$(EXE_SUFFIX): $(PREVIOUS_JDK_BUNDLE)
|
---|
1146 | $(call unbundle,$(PREVIOUS_JDK_BUNDLE),$(PREVIOUS_JDK_FILE),$(TEMP_PREV_JDK_BASE_DIR))
|
---|
1147 | $(TOUCH) $@
|
---|
1148 |
|
---|
1149 | endif
|
---|
1150 |
|
---|
1151 | # Make sure all images have a java in them (used as the touch file)
|
---|
1152 | install-previous-sanity:
|
---|
1153 | @if [ ! -f $(PREVIOUS_JRE_BUNDLE) ]; then \
|
---|
1154 | $(ECHO) "ERROR: You do not have access to the previous java release jre bundles. \n" \
|
---|
1155 | " Please check your access to \n" \
|
---|
1156 | " $(PREVIOUS_JRE_BUNDLE) \n" \
|
---|
1157 | " and/or check your value of ALT_PREVIOUS_RELEASE_PATH or ALT_PREVIOUS_JRE_FILE \n" \
|
---|
1158 | " This will affect you if you build the images target. \n" \
|
---|
1159 | "" >> $(ERROR_FILE) ; \
|
---|
1160 | fi
|
---|
1161 | @if [ ! -f $(PREVIOUS_JDK_BUNDLE) ]; then \
|
---|
1162 | $(ECHO) "ERROR: You do not have access to the previous java release sdk bundles. \n" \
|
---|
1163 | " Please check your access to \n" \
|
---|
1164 | " $(PREVIOUS_sdk_BUNDLE) \n" \
|
---|
1165 | " and/or check your value of ALT_PREVIOUS_RELEASE_PATH or ALT_PREVIOUS_JDK_FILE. \n" \
|
---|
1166 | " This will affect you if you build the images target. \n" \
|
---|
1167 | "" >> $(ERROR_FILE) ; \
|
---|
1168 | fi
|
---|
1169 | install-previous-jre: $(PREV_JRE_IMAGE_DIR)/bin/java$(EXE_SUFFIX)
|
---|
1170 | install-previous-jdk: $(PREV_JDK_IMAGE_DIR)/bin/java$(EXE_SUFFIX)
|
---|
1171 |
|
---|
1172 | # Create the jre comparison report
|
---|
1173 | $(TEMP_PREV_JRE_COMPARISON): install-previous-jre $(DIRDIFF_JARFILE)
|
---|
1174 | $(prep-target)
|
---|
1175 | $(BOOT_JAVA_CMD) -jar $(DIRDIFF_JARFILE) \
|
---|
1176 | $(PREV_JRE_IMAGE_DIR) $(JRE_IMAGE_DIR) | $(SORT) > $@
|
---|
1177 | @$(java-vm-cleanup)
|
---|
1178 |
|
---|
1179 | # Create the jdk comparison report
|
---|
1180 | $(TEMP_PREV_JDK_COMPARISON): install-previous-jdk $(DIRDIFF_JARFILE)
|
---|
1181 | $(prep-target)
|
---|
1182 | $(BOOT_JAVA_CMD) -jar $(DIRDIFF_JARFILE) \
|
---|
1183 | $(PREV_JDK_IMAGE_DIR) $(JDK_IMAGE_DIR) | $(SORT) > $@
|
---|
1184 | @$(java-vm-cleanup)
|
---|
1185 |
|
---|
1186 | # Clean up names in the messages printed out
|
---|
1187 | CAT_FILTER = $(SED) -e "s@$(JDK_IMAGE_DIR)@JDK_IMAGE@g" \
|
---|
1188 | -e "s@$(JRE_IMAGE_DIR)@JRE_IMAGE@g"
|
---|
1189 |
|
---|
1190 | # Report on the jre image comparison
|
---|
1191 | compare-image-jre: $(TEMP_PREV_JRE_COMPARISON)
|
---|
1192 | @$(ECHO) "JRE Image Comparison to version $(PREVIOUS_JDK_VERSION)"
|
---|
1193 | @$(ECHO) " Previous: $(PREV_JRE_IMAGE_DIR)"
|
---|
1194 | @$(ECHO) " Current: $(JRE_IMAGE_DIR)"
|
---|
1195 | @$(CAT) $< $(COMPARE_FILTER) | $(CAT_FILTER)
|
---|
1196 | ( $(ECHO) " " ; $(CAT) $< | $(CAT_FILTER) ; $(ECHO) " " ) >> $(WARNING_FILE)
|
---|
1197 |
|
---|
1198 | # Report on the jdk image comparison
|
---|
1199 | compare-image-jdk: $(TEMP_PREV_JDK_COMPARISON)
|
---|
1200 | @$(ECHO) "JDK Image Comparison to version $(PREVIOUS_JDK_VERSION)"
|
---|
1201 | @$(ECHO) " Previous: $(PREV_JDK_IMAGE_DIR)"
|
---|
1202 | @$(ECHO) " Current: $(JDK_IMAGE_DIR)"
|
---|
1203 | $(CAT) $< $(COMPARE_FILTER) | $(CAT_FILTER)
|
---|
1204 | ( $(ECHO) " " ; $(CAT) $< | $(CAT_FILTER) ; $(ECHO) " " ) >> $(WARNING_FILE)
|
---|
1205 |
|
---|
1206 | # Do both image comparisons
|
---|
1207 | compare-image:: compare-image-jre compare-image-jdk
|
---|
1208 |
|
---|
1209 | # Clean up any temp images and reports
|
---|
1210 | compare-image-clobber:
|
---|
1211 | $(RM) -r $(TEMP_PREV_JRE_BASE_DIR)
|
---|
1212 | $(RM) -r $(TEMP_PREV_JDK_BASE_DIR)
|
---|
1213 |
|
---|
1214 | ######################################################
|
---|
1215 | # clobber
|
---|
1216 | ######################################################
|
---|
1217 | images-clobber::
|
---|
1218 | $(RM) -r $(REORDER_TEMPDIR)
|
---|
1219 | $(RM) -r $(JARFILELISTS_TEMPDIR)
|
---|
1220 | ifeq ($(ARCH_DATA_MODEL), 32)
|
---|
1221 | $(CD) javax/swing/beaninfo && $(MAKE) swingbeans.clobber
|
---|
1222 | $(RM) -r $(CLASSBINDIR)/META-INF
|
---|
1223 | $(RM) $(TEMPDIR)/tmp.jar
|
---|
1224 | endif
|
---|
1225 | ifeq ($(PLATFORM), linux)
|
---|
1226 | $(RM) -r $(OUTPUTDIR)/$(ARCH)
|
---|
1227 | endif
|
---|
1228 | ifeq ($(filter-out windows os2, $(PLATFORM)),)
|
---|
1229 | $(RM) $(TEMPDIR)/rebase.input
|
---|
1230 | endif
|
---|
1231 | $(RM) -r $(JDK_IMAGE_DIR)
|
---|
1232 | $(RM) -r $(JDK_DEBUG_IMAGE_DIR)
|
---|
1233 | $(RM) -r $(JRE_IMAGE_DIR)
|
---|
1234 |
|
---|
1235 | images images-clobber::
|
---|
1236 | @$(ECHO) ">>>Finished making "$@" @ `$(DATE)` ..."
|
---|
1237 | @$(java-vm-cleanup)
|
---|
1238 |
|
---|
1239 | .PHONY: images image-jre image-jdk \
|
---|
1240 | initial-image-jre initial-image-jdk \
|
---|
1241 | initial-image-jre-sol64 initial-image-jdk-sol64 \
|
---|
1242 | initial-image-jdk-setup \
|
---|
1243 | initial-image-jdk-db \
|
---|
1244 | initial-image-jdk64-bindemos \
|
---|
1245 | initial-image-jre-setup \
|
---|
1246 | trim-image-jre trim-image-jdk \
|
---|
1247 | process-image-jre process-image-jdk \
|
---|
1248 | install-previous-jre install-previous-jdk \
|
---|
1249 | compare-image-jre compare-image-jdk \
|
---|
1250 | compare-image compare-image-clobber \
|
---|
1251 | images-clobber
|
---|
1252 |
|
---|
1253 | # Force rule
|
---|
1254 | FRC:
|
---|
1255 |
|
---|