annotate make/Makefile @ 3927:f1b4e0e0bdad

7089625: G1: policy for how many old regions to add to the CSet (when young gen is fixed) is broken Summary: When refactoring the code for a previous fix, a condition was not correctly negated which prevents the G1 policy from adding the correct number of old regions to the CSet when the young gen size is fixed. The changeset also fixes a small syntactical issue in g1ErgoVerbose.hpp which is causing compiler warnings. Reviewed-by: brutisso, ysr
author tonyp
date Tue, 13 Sep 2011 12:40:14 -0400
parents b76d12f4ab2d
children 2ab52cda08e5 da0999c4b733 f08d439fab8c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
a61af66fc99e Initial load
duke
parents:
diff changeset
1 #
2237
b76d12f4ab2d 7018429: JPRT: Update Makefile to use ALT_JDK_TARGET_IMPORT_PATH for copying JDK
dholmes
parents: 2199
diff changeset
2 # Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
0
a61af66fc99e Initial load
duke
parents:
diff changeset
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
a61af66fc99e Initial load
duke
parents:
diff changeset
4 #
a61af66fc99e Initial load
duke
parents:
diff changeset
5 # This code is free software; you can redistribute it and/or modify it
a61af66fc99e Initial load
duke
parents:
diff changeset
6 # under the terms of the GNU General Public License version 2 only, as
a61af66fc99e Initial load
duke
parents:
diff changeset
7 # published by the Free Software Foundation.
a61af66fc99e Initial load
duke
parents:
diff changeset
8 #
a61af66fc99e Initial load
duke
parents:
diff changeset
9 # This code is distributed in the hope that it will be useful, but WITHOUT
a61af66fc99e Initial load
duke
parents:
diff changeset
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
a61af66fc99e Initial load
duke
parents:
diff changeset
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
a61af66fc99e Initial load
duke
parents:
diff changeset
12 # version 2 for more details (a copy is included in the LICENSE file that
a61af66fc99e Initial load
duke
parents:
diff changeset
13 # accompanied this code).
a61af66fc99e Initial load
duke
parents:
diff changeset
14 #
a61af66fc99e Initial load
duke
parents:
diff changeset
15 # You should have received a copy of the GNU General Public License version
a61af66fc99e Initial load
duke
parents:
diff changeset
16 # 2 along with this work; if not, write to the Free Software Foundation,
a61af66fc99e Initial load
duke
parents:
diff changeset
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
a61af66fc99e Initial load
duke
parents:
diff changeset
18 #
1552
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 1185
diff changeset
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 1185
diff changeset
20 # or visit www.oracle.com if you need additional information or have any
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 1185
diff changeset
21 # questions.
0
a61af66fc99e Initial load
duke
parents:
diff changeset
22 #
a61af66fc99e Initial load
duke
parents:
diff changeset
23 #
a61af66fc99e Initial load
duke
parents:
diff changeset
24
a61af66fc99e Initial load
duke
parents:
diff changeset
25 # Top level gnumake file for hotspot builds
a61af66fc99e Initial load
duke
parents:
diff changeset
26 #
a61af66fc99e Initial load
duke
parents:
diff changeset
27 # Default is to build the both product images and construct an export dir.
a61af66fc99e Initial load
duke
parents:
diff changeset
28 # The default export directory name is `pwd`/export-$(PLATFORM).
a61af66fc99e Initial load
duke
parents:
diff changeset
29 #
a61af66fc99e Initial load
duke
parents:
diff changeset
30 # Use: 'gnumake help' for more information.
a61af66fc99e Initial load
duke
parents:
diff changeset
31 #
a61af66fc99e Initial load
duke
parents:
diff changeset
32 # This makefile uses the default settings for where to find compilers and
a61af66fc99e Initial load
duke
parents:
diff changeset
33 # tools, and obeys the ALT_* variable settings used by the other JDK
a61af66fc99e Initial load
duke
parents:
diff changeset
34 # workspaces.
a61af66fc99e Initial load
duke
parents:
diff changeset
35 #
a61af66fc99e Initial load
duke
parents:
diff changeset
36
a61af66fc99e Initial load
duke
parents:
diff changeset
37 # Expected/optional make variables defined on make command line:
a61af66fc99e Initial load
duke
parents:
diff changeset
38 # LP64=1 or ARCH_DATA_MODEL=64 for 64bit build
a61af66fc99e Initial load
duke
parents:
diff changeset
39 #
a61af66fc99e Initial load
duke
parents:
diff changeset
40 # Expected/optional make variables or environment variables:
a61af66fc99e Initial load
duke
parents:
diff changeset
41 # ALT_SLASH_JAVA Location of /java or J:
a61af66fc99e Initial load
duke
parents:
diff changeset
42 # ALT_BOOTDIR Previous JDK home directory for javac compiler
a61af66fc99e Initial load
duke
parents:
diff changeset
43 # ALT_OUTPUTDIR Output directory to use for hotspot build
a61af66fc99e Initial load
duke
parents:
diff changeset
44 # ALT_EXPORT_PATH Directory to export hotspot build to
a61af66fc99e Initial load
duke
parents:
diff changeset
45 # ALT_JDK_IMPORT_PATH Current JDK build (only for create_jdk rules)
2237
b76d12f4ab2d 7018429: JPRT: Update Makefile to use ALT_JDK_TARGET_IMPORT_PATH for copying JDK
dholmes
parents: 2199
diff changeset
46 # ALT_JDK_TARGET_IMPORT_PATH Current JDK build when cross-compiling
0
a61af66fc99e Initial load
duke
parents:
diff changeset
47 # ALT_BUILD_WIN_SA Building SA on Windows is disabled by default.
a61af66fc99e Initial load
duke
parents:
diff changeset
48 # Set ALT_BUILD_WIN_SA=1 to enable building SA on
a61af66fc99e Initial load
duke
parents:
diff changeset
49 # Windows.
a61af66fc99e Initial load
duke
parents:
diff changeset
50 # Version strings and numbers:
a61af66fc99e Initial load
duke
parents:
diff changeset
51 # JDK_VERSION Current JDK version (e.g. 1.6.0)
a61af66fc99e Initial load
duke
parents:
diff changeset
52 # PREVIOUS_JDK_VERSION Previous (bootdir) JDK version (e.g. 1.5.0)
a61af66fc99e Initial load
duke
parents:
diff changeset
53 # FULL_VERSION Full version string to use (e.g. "1.6.0-ea-b42")
a61af66fc99e Initial load
duke
parents:
diff changeset
54 #
a61af66fc99e Initial load
duke
parents:
diff changeset
55 # Version strings and numbers especially needed on Windows:
a61af66fc99e Initial load
duke
parents:
diff changeset
56 # COOKED_JDK_UPDATE_VERSION Just the update release number (e.g. 02)
a61af66fc99e Initial load
duke
parents:
diff changeset
57 # COOKED_BUILD_NUMBER Just the build number (e.g. 42)
a61af66fc99e Initial load
duke
parents:
diff changeset
58 # JDK_MKTG_VERSION Marketing JDK version (e.g. 6.0)
a61af66fc99e Initial load
duke
parents:
diff changeset
59 # JDK_MAJOR_VERSION Major number for version (e.g. 1) always 1?
a61af66fc99e Initial load
duke
parents:
diff changeset
60 # JDK_MINOR_VERSION Minor number for version (e.g. 6)
a61af66fc99e Initial load
duke
parents:
diff changeset
61 # JDK_MICRO_VERSION Micro number for version (e.g. 0)
a61af66fc99e Initial load
duke
parents:
diff changeset
62 #
a61af66fc99e Initial load
duke
parents:
diff changeset
63
a61af66fc99e Initial load
duke
parents:
diff changeset
64 # Default is build both product fastdebug and create export area
a61af66fc99e Initial load
duke
parents:
diff changeset
65
a61af66fc99e Initial load
duke
parents:
diff changeset
66 # Allow to build HotSpot in local directory from sources specified by GAMMADIR.
a61af66fc99e Initial load
duke
parents:
diff changeset
67 # After make/defs.make GAMMADIR is defined.
a61af66fc99e Initial load
duke
parents:
diff changeset
68 ifdef GAMMADIR
a61af66fc99e Initial load
duke
parents:
diff changeset
69 ifndef ALT_OUTPUTDIR
a61af66fc99e Initial load
duke
parents:
diff changeset
70 ALT_OUTPUTDIR := $(shell pwd)
a61af66fc99e Initial load
duke
parents:
diff changeset
71 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
72 include $(GAMMADIR)/make/defs.make
a61af66fc99e Initial load
duke
parents:
diff changeset
73 else
a61af66fc99e Initial load
duke
parents:
diff changeset
74 include defs.make
a61af66fc99e Initial load
duke
parents:
diff changeset
75 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
76
2199
d8a72fbc4be7 7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents: 2192
diff changeset
77 include $(GAMMADIR)/make/altsrc.make
0
a61af66fc99e Initial load
duke
parents:
diff changeset
78
a61af66fc99e Initial load
duke
parents:
diff changeset
79 ifneq ($(ALT_OUTPUTDIR),)
a61af66fc99e Initial load
duke
parents:
diff changeset
80 ALT_OUT=ALT_OUTPUTDIR=$(ALT_OUTPUTDIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
81 else
a61af66fc99e Initial load
duke
parents:
diff changeset
82 ALT_OUT=
a61af66fc99e Initial load
duke
parents:
diff changeset
83 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
84
a61af66fc99e Initial load
duke
parents:
diff changeset
85 # Typical C1/C2 targets made available with this Makefile
a61af66fc99e Initial load
duke
parents:
diff changeset
86 C1_VM_TARGETS=product1 fastdebug1 optimized1 jvmg1
a61af66fc99e Initial load
duke
parents:
diff changeset
87 C2_VM_TARGETS=product fastdebug optimized jvmg
a61af66fc99e Initial load
duke
parents:
diff changeset
88 KERNEL_VM_TARGETS=productkernel fastdebugkernel optimizedkernel jvmgkernel
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
89 ZERO_VM_TARGETS=productzero fastdebugzero optimizedzero jvmgzero
1692
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
90 SHARK_VM_TARGETS=productshark fastdebugshark optimizedshark jvmgshark
0
a61af66fc99e Initial load
duke
parents:
diff changeset
91
113
ba764ed4b6f2 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 0
diff changeset
92 # JDK directory list
ba764ed4b6f2 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 0
diff changeset
93 JDK_DIRS=bin include jre lib demo
ba764ed4b6f2 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 0
diff changeset
94
0
a61af66fc99e Initial load
duke
parents:
diff changeset
95 all: all_product all_fastdebug
1681
126ea7725993 6953477: Increase portability and flexibility of building Hotspot
bobv
parents: 1552
diff changeset
96 ifndef BUILD_CLIENT_ONLY
0
a61af66fc99e Initial load
duke
parents:
diff changeset
97 all_product: product product1 productkernel docs export_product
a61af66fc99e Initial load
duke
parents:
diff changeset
98 all_fastdebug: fastdebug fastdebug1 fastdebugkernel docs export_fastdebug
a61af66fc99e Initial load
duke
parents:
diff changeset
99 all_debug: jvmg jvmg1 jvmgkernel docs export_debug
1681
126ea7725993 6953477: Increase portability and flexibility of building Hotspot
bobv
parents: 1552
diff changeset
100 else
126ea7725993 6953477: Increase portability and flexibility of building Hotspot
bobv
parents: 1552
diff changeset
101 all_product: product1 docs export_product
126ea7725993 6953477: Increase portability and flexibility of building Hotspot
bobv
parents: 1552
diff changeset
102 all_fastdebug: fastdebug1 docs export_fastdebug
126ea7725993 6953477: Increase portability and flexibility of building Hotspot
bobv
parents: 1552
diff changeset
103 all_debug: jvmg1 docs export_debug
126ea7725993 6953477: Increase portability and flexibility of building Hotspot
bobv
parents: 1552
diff changeset
104 endif
0
a61af66fc99e Initial load
duke
parents:
diff changeset
105 all_optimized: optimized optimized1 optimizedkernel docs export_optimized
a61af66fc99e Initial load
duke
parents:
diff changeset
106
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
107 allzero: all_productzero all_fastdebugzero
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
108 all_productzero: productzero docs export_product
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
109 all_fastdebugzero: fastdebugzero docs export_fastdebug
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
110 all_debugzero: jvmgzero docs export_debug
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
111 all_optimizedzero: optimizedzero docs export_optimized
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
112
1692
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
113 allshark: all_productshark all_fastdebugshark
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
114 all_productshark: productshark docs export_product
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
115 all_fastdebugshark: fastdebugshark docs export_fastdebug
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
116 all_debugshark: jvmgshark docs export_debug
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
117 all_optimizedshark: optimizedshark docs export_optimized
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
118
0
a61af66fc99e Initial load
duke
parents:
diff changeset
119 # Do everything
a61af66fc99e Initial load
duke
parents:
diff changeset
120 world: all create_jdk
a61af66fc99e Initial load
duke
parents:
diff changeset
121
a61af66fc99e Initial load
duke
parents:
diff changeset
122 # Build or export docs
a61af66fc99e Initial load
duke
parents:
diff changeset
123 docs:
a61af66fc99e Initial load
duke
parents:
diff changeset
124 ifeq ($(OSNAME),windows)
a61af66fc99e Initial load
duke
parents:
diff changeset
125 @$(ECHO) "No docs ($(VM_TARGET)) for windows"
a61af66fc99e Initial load
duke
parents:
diff changeset
126 else
a61af66fc99e Initial load
duke
parents:
diff changeset
127 $(CD) $(OUTPUTDIR); \
a61af66fc99e Initial load
duke
parents:
diff changeset
128 $(MAKE) -f $(ABS_OS_MAKEFILE) \
a61af66fc99e Initial load
duke
parents:
diff changeset
129 $(MAKE_ARGS) docs
a61af66fc99e Initial load
duke
parents:
diff changeset
130 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
131
a61af66fc99e Initial load
duke
parents:
diff changeset
132 # Build variation of hotspot
a61af66fc99e Initial load
duke
parents:
diff changeset
133 $(C1_VM_TARGETS):
a61af66fc99e Initial load
duke
parents:
diff changeset
134 $(CD) $(GAMMADIR)/make; \
a61af66fc99e Initial load
duke
parents:
diff changeset
135 $(MAKE) VM_TARGET=$@ generic_build1 $(ALT_OUT)
a61af66fc99e Initial load
duke
parents:
diff changeset
136
a61af66fc99e Initial load
duke
parents:
diff changeset
137 $(C2_VM_TARGETS):
a61af66fc99e Initial load
duke
parents:
diff changeset
138 $(CD) $(GAMMADIR)/make; \
a61af66fc99e Initial load
duke
parents:
diff changeset
139 $(MAKE) VM_TARGET=$@ generic_build2 $(ALT_OUT)
a61af66fc99e Initial load
duke
parents:
diff changeset
140
a61af66fc99e Initial load
duke
parents:
diff changeset
141 $(KERNEL_VM_TARGETS):
a61af66fc99e Initial load
duke
parents:
diff changeset
142 $(CD) $(GAMMADIR)/make; \
a61af66fc99e Initial load
duke
parents:
diff changeset
143 $(MAKE) VM_TARGET=$@ generic_buildkernel $(ALT_OUT)
a61af66fc99e Initial load
duke
parents:
diff changeset
144
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
145 $(ZERO_VM_TARGETS):
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
146 $(CD) $(GAMMADIR)/make; \
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
147 $(MAKE) VM_TARGET=$@ generic_buildzero $(ALT_OUT)
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
148
1692
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
149 $(SHARK_VM_TARGETS):
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
150 $(CD) $(GAMMADIR)/make; \
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
151 $(MAKE) VM_TARGET=$@ generic_buildshark $(ALT_OUT)
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
152
0
a61af66fc99e Initial load
duke
parents:
diff changeset
153 # Build compiler1 (client) rule, different for platforms
a61af66fc99e Initial load
duke
parents:
diff changeset
154 generic_build1:
a61af66fc99e Initial load
duke
parents:
diff changeset
155 $(MKDIR) -p $(OUTPUTDIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
156 ifeq ($(OSNAME),windows)
a61af66fc99e Initial load
duke
parents:
diff changeset
157 ifeq ($(ARCH_DATA_MODEL), 32)
a61af66fc99e Initial load
duke
parents:
diff changeset
158 $(CD) $(OUTPUTDIR); \
a61af66fc99e Initial load
duke
parents:
diff changeset
159 $(NMAKE) -f $(ABS_OS_MAKEFILE) \
a61af66fc99e Initial load
duke
parents:
diff changeset
160 Variant=compiler1 \
a61af66fc99e Initial load
duke
parents:
diff changeset
161 WorkSpace=$(ABS_GAMMADIR) \
a61af66fc99e Initial load
duke
parents:
diff changeset
162 BootStrapDir=$(ABS_BOOTDIR) \
a61af66fc99e Initial load
duke
parents:
diff changeset
163 BuildUser=$(USERNAME) \
a61af66fc99e Initial load
duke
parents:
diff changeset
164 $(MAKE_ARGS) $(VM_TARGET:%1=%)
a61af66fc99e Initial load
duke
parents:
diff changeset
165 else
a61af66fc99e Initial load
duke
parents:
diff changeset
166 @$(ECHO) "No compiler1 ($(VM_TARGET)) for ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)"
a61af66fc99e Initial load
duke
parents:
diff changeset
167 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
168 else
a61af66fc99e Initial load
duke
parents:
diff changeset
169 ifeq ($(ARCH_DATA_MODEL), 32)
a61af66fc99e Initial load
duke
parents:
diff changeset
170 $(CD) $(OUTPUTDIR); \
a61af66fc99e Initial load
duke
parents:
diff changeset
171 $(MAKE) -f $(ABS_OS_MAKEFILE) \
a61af66fc99e Initial load
duke
parents:
diff changeset
172 $(MAKE_ARGS) $(VM_TARGET)
a61af66fc99e Initial load
duke
parents:
diff changeset
173 else
a61af66fc99e Initial load
duke
parents:
diff changeset
174 @$(ECHO) "No compiler1 ($(VM_TARGET)) for ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)"
a61af66fc99e Initial load
duke
parents:
diff changeset
175 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
176 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
177
a61af66fc99e Initial load
duke
parents:
diff changeset
178 # Build compiler2 (server) rule, different for platforms
a61af66fc99e Initial load
duke
parents:
diff changeset
179 generic_build2:
a61af66fc99e Initial load
duke
parents:
diff changeset
180 $(MKDIR) -p $(OUTPUTDIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
181 ifeq ($(OSNAME),windows)
a61af66fc99e Initial load
duke
parents:
diff changeset
182 $(CD) $(OUTPUTDIR); \
a61af66fc99e Initial load
duke
parents:
diff changeset
183 $(NMAKE) -f $(ABS_OS_MAKEFILE) \
a61af66fc99e Initial load
duke
parents:
diff changeset
184 Variant=compiler2 \
a61af66fc99e Initial load
duke
parents:
diff changeset
185 WorkSpace=$(ABS_GAMMADIR) \
a61af66fc99e Initial load
duke
parents:
diff changeset
186 BootStrapDir=$(ABS_BOOTDIR) \
a61af66fc99e Initial load
duke
parents:
diff changeset
187 BuildUser=$(USERNAME) \
a61af66fc99e Initial load
duke
parents:
diff changeset
188 $(MAKE_ARGS) $(VM_TARGET)
a61af66fc99e Initial load
duke
parents:
diff changeset
189 else
a61af66fc99e Initial load
duke
parents:
diff changeset
190 $(CD) $(OUTPUTDIR); \
a61af66fc99e Initial load
duke
parents:
diff changeset
191 $(MAKE) -f $(ABS_OS_MAKEFILE) \
a61af66fc99e Initial load
duke
parents:
diff changeset
192 $(MAKE_ARGS) $(VM_TARGET)
a61af66fc99e Initial load
duke
parents:
diff changeset
193 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
194
a61af66fc99e Initial load
duke
parents:
diff changeset
195 generic_buildkernel:
a61af66fc99e Initial load
duke
parents:
diff changeset
196 $(MKDIR) -p $(OUTPUTDIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
197 ifeq ($(OSNAME),windows)
a61af66fc99e Initial load
duke
parents:
diff changeset
198 ifeq ($(ARCH_DATA_MODEL), 32)
a61af66fc99e Initial load
duke
parents:
diff changeset
199 $(CD) $(OUTPUTDIR); \
a61af66fc99e Initial load
duke
parents:
diff changeset
200 $(NMAKE) -f $(ABS_OS_MAKEFILE) \
a61af66fc99e Initial load
duke
parents:
diff changeset
201 Variant=kernel \
a61af66fc99e Initial load
duke
parents:
diff changeset
202 WorkSpace=$(ABS_GAMMADIR) \
a61af66fc99e Initial load
duke
parents:
diff changeset
203 BootStrapDir=$(ABS_BOOTDIR) \
a61af66fc99e Initial load
duke
parents:
diff changeset
204 BuildUser=$(USERNAME) \
a61af66fc99e Initial load
duke
parents:
diff changeset
205 $(MAKE_ARGS) $(VM_TARGET:%kernel=%)
a61af66fc99e Initial load
duke
parents:
diff changeset
206 else
a61af66fc99e Initial load
duke
parents:
diff changeset
207 @$(ECHO) "No kernel ($(VM_TARGET)) for ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)"
a61af66fc99e Initial load
duke
parents:
diff changeset
208 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
209 else
a61af66fc99e Initial load
duke
parents:
diff changeset
210 @$(ECHO) "No kernel ($(VM_TARGET)) for OS_NAME=$(OSNAME)"
a61af66fc99e Initial load
duke
parents:
diff changeset
211 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
212
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
213 generic_buildzero:
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
214 $(MKDIR) -p $(OUTPUTDIR)
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
215 $(CD) $(OUTPUTDIR); \
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
216 $(MAKE) -f $(ABS_OS_MAKEFILE) \
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
217 $(MAKE_ARGS) $(VM_TARGET)
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
218
1692
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
219 generic_buildshark:
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
220 $(MKDIR) -p $(OUTPUTDIR)
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
221 $(CD) $(OUTPUTDIR); \
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
222 $(MAKE) -f $(ABS_OS_MAKEFILE) \
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
223 $(MAKE_ARGS) $(VM_TARGET)
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
224
0
a61af66fc99e Initial load
duke
parents:
diff changeset
225 # Export file rule
a61af66fc99e Initial load
duke
parents:
diff changeset
226 generic_export: $(EXPORT_LIST)
a61af66fc99e Initial load
duke
parents:
diff changeset
227 export_product:
a61af66fc99e Initial load
duke
parents:
diff changeset
228 $(MAKE) VM_SUBDIR=product generic_export
a61af66fc99e Initial load
duke
parents:
diff changeset
229 export_fastdebug:
a61af66fc99e Initial load
duke
parents:
diff changeset
230 $(MAKE) VM_SUBDIR=fastdebug EXPORT_SUBDIR=/fastdebug generic_export
a61af66fc99e Initial load
duke
parents:
diff changeset
231 export_debug:
a61af66fc99e Initial load
duke
parents:
diff changeset
232 $(MAKE) VM_SUBDIR=${VM_DEBUG} EXPORT_SUBDIR=/debug generic_export
a61af66fc99e Initial load
duke
parents:
diff changeset
233 export_optimized:
a61af66fc99e Initial load
duke
parents:
diff changeset
234 $(MAKE) VM_SUBDIR=optimized EXPORT_SUBDIR=/optimized generic_export
a61af66fc99e Initial load
duke
parents:
diff changeset
235 export_product_jdk:
a61af66fc99e Initial load
duke
parents:
diff changeset
236 $(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR) \
a61af66fc99e Initial load
duke
parents:
diff changeset
237 VM_SUBDIR=product generic_export
a61af66fc99e Initial load
duke
parents:
diff changeset
238 export_optimized_jdk:
a61af66fc99e Initial load
duke
parents:
diff changeset
239 $(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR) \
a61af66fc99e Initial load
duke
parents:
diff changeset
240 VM_SUBDIR=optimized generic_export
a61af66fc99e Initial load
duke
parents:
diff changeset
241 export_fastdebug_jdk:
a61af66fc99e Initial load
duke
parents:
diff changeset
242 $(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/fastdebug \
a61af66fc99e Initial load
duke
parents:
diff changeset
243 VM_SUBDIR=fastdebug generic_export
a61af66fc99e Initial load
duke
parents:
diff changeset
244 export_debug_jdk:
a61af66fc99e Initial load
duke
parents:
diff changeset
245 $(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/debug \
a61af66fc99e Initial load
duke
parents:
diff changeset
246 VM_SUBDIR=${VM_DEBUG} generic_export
a61af66fc99e Initial load
duke
parents:
diff changeset
247
a61af66fc99e Initial load
duke
parents:
diff changeset
248
a61af66fc99e Initial load
duke
parents:
diff changeset
249 # Export file copy rules
a61af66fc99e Initial load
duke
parents:
diff changeset
250 XUSAGE=$(HS_SRC_DIR)/share/vm/Xusage.txt
a61af66fc99e Initial load
duke
parents:
diff changeset
251 DOCS_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_docs
a61af66fc99e Initial load
duke
parents:
diff changeset
252 C1_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_compiler1
a61af66fc99e Initial load
duke
parents:
diff changeset
253 C2_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_compiler2
a61af66fc99e Initial load
duke
parents:
diff changeset
254 KERNEL_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_kernel
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
255 ZERO_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_zero
1692
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
256 SHARK_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_shark
0
a61af66fc99e Initial load
duke
parents:
diff changeset
257 C1_DIR=$(C1_BASE_DIR)/$(VM_SUBDIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
258 C2_DIR=$(C2_BASE_DIR)/$(VM_SUBDIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
259 KERNEL_DIR=$(KERNEL_BASE_DIR)/$(VM_SUBDIR)
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
260 ZERO_DIR=$(ZERO_BASE_DIR)/$(VM_SUBDIR)
1692
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
261 SHARK_DIR=$(SHARK_BASE_DIR)/$(VM_SUBDIR)
0
a61af66fc99e Initial load
duke
parents:
diff changeset
262
a61af66fc99e Initial load
duke
parents:
diff changeset
263 # Misc files and generated files need to come from C1 or C2 area
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
264 ifeq ($(ZERO_BUILD), true)
1692
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
265 ifeq ($(SHARK_BUILD), true)
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
266 MISC_DIR=$(SHARK_DIR)
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
267 GEN_DIR=$(SHARK_BASE_DIR)/generated
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
268 else
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
269 MISC_DIR=$(ZERO_DIR)
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
270 GEN_DIR=$(ZERO_BASE_DIR)/generated
1692
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
271 endif
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
272 else
0
a61af66fc99e Initial load
duke
parents:
diff changeset
273 ifeq ($(ARCH_DATA_MODEL), 32)
a61af66fc99e Initial load
duke
parents:
diff changeset
274 MISC_DIR=$(C1_DIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
275 GEN_DIR=$(C1_BASE_DIR)/generated
a61af66fc99e Initial load
duke
parents:
diff changeset
276 else
a61af66fc99e Initial load
duke
parents:
diff changeset
277 MISC_DIR=$(C2_DIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
278 GEN_DIR=$(C2_BASE_DIR)/generated
a61af66fc99e Initial load
duke
parents:
diff changeset
279 endif
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
280 endif
0
a61af66fc99e Initial load
duke
parents:
diff changeset
281
a61af66fc99e Initial load
duke
parents:
diff changeset
282 # Bin files (windows)
a61af66fc99e Initial load
duke
parents:
diff changeset
283 ifeq ($(OSNAME),windows)
a61af66fc99e Initial load
duke
parents:
diff changeset
284
a61af66fc99e Initial load
duke
parents:
diff changeset
285 # Get jvm.lib
a61af66fc99e Initial load
duke
parents:
diff changeset
286 $(EXPORT_LIB_DIR)/%.lib: $(MISC_DIR)/%.lib
a61af66fc99e Initial load
duke
parents:
diff changeset
287 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
288
a61af66fc99e Initial load
duke
parents:
diff changeset
289 # Other libraries (like SA)
a61af66fc99e Initial load
duke
parents:
diff changeset
290 $(EXPORT_JRE_BIN_DIR)/%.dll: $(MISC_DIR)/%.dll
a61af66fc99e Initial load
duke
parents:
diff changeset
291 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
292 $(EXPORT_JRE_BIN_DIR)/%.pdb: $(MISC_DIR)/%.pdb
a61af66fc99e Initial load
duke
parents:
diff changeset
293 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
294 $(EXPORT_JRE_BIN_DIR)/%.map: $(MISC_DIR)/%.map
a61af66fc99e Initial load
duke
parents:
diff changeset
295 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
296
a61af66fc99e Initial load
duke
parents:
diff changeset
297 # Client files always come from C1 area
a61af66fc99e Initial load
duke
parents:
diff changeset
298 $(EXPORT_CLIENT_DIR)/%.dll: $(C1_DIR)/%.dll
a61af66fc99e Initial load
duke
parents:
diff changeset
299 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
300 $(EXPORT_CLIENT_DIR)/%.pdb: $(C1_DIR)/%.pdb
a61af66fc99e Initial load
duke
parents:
diff changeset
301 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
302 $(EXPORT_CLIENT_DIR)/%.map: $(C1_DIR)/%.map
a61af66fc99e Initial load
duke
parents:
diff changeset
303 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
304
a61af66fc99e Initial load
duke
parents:
diff changeset
305 # Server files always come from C2 area
a61af66fc99e Initial load
duke
parents:
diff changeset
306 $(EXPORT_SERVER_DIR)/%.dll: $(C2_DIR)/%.dll
a61af66fc99e Initial load
duke
parents:
diff changeset
307 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
308 $(EXPORT_SERVER_DIR)/%.pdb: $(C2_DIR)/%.pdb
a61af66fc99e Initial load
duke
parents:
diff changeset
309 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
310 $(EXPORT_SERVER_DIR)/%.map: $(C2_DIR)/%.map
a61af66fc99e Initial load
duke
parents:
diff changeset
311 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
312
a61af66fc99e Initial load
duke
parents:
diff changeset
313 # Kernel files always come from kernel area
a61af66fc99e Initial load
duke
parents:
diff changeset
314 $(EXPORT_KERNEL_DIR)/%.dll: $(KERNEL_DIR)/%.dll
a61af66fc99e Initial load
duke
parents:
diff changeset
315 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
316 $(EXPORT_KERNEL_DIR)/%.pdb: $(KERNEL_DIR)/%.pdb
a61af66fc99e Initial load
duke
parents:
diff changeset
317 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
318 $(EXPORT_KERNEL_DIR)/%.map: $(KERNEL_DIR)/%.map
a61af66fc99e Initial load
duke
parents:
diff changeset
319 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
320 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
321
a61af66fc99e Initial load
duke
parents:
diff changeset
322 # Shared Library
a61af66fc99e Initial load
duke
parents:
diff changeset
323 ifneq ($(OSNAME),windows)
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
324 ifeq ($(ZERO_BUILD), true)
1692
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
325 ifeq ($(SHARK_BUILD), true)
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
326 $(EXPORT_JRE_LIB_ARCH_DIR)/%.so: $(SHARK_DIR)/%.so
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
327 $(install-file)
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
328 $(EXPORT_SERVER_DIR)/%.so: $(SHARK_DIR)/%.so
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
329 $(install-file)
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
330 else
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
331 $(EXPORT_JRE_LIB_ARCH_DIR)/%.so: $(ZERO_DIR)/%.so
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
332 $(install-file)
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
333 $(EXPORT_SERVER_DIR)/%.so: $(ZERO_DIR)/%.so
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
334 $(install-file)
1692
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
335 endif
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
336 else
1681
126ea7725993 6953477: Increase portability and flexibility of building Hotspot
bobv
parents: 1552
diff changeset
337 $(EXPORT_JRE_LIB_ARCH_DIR)/%.so: $(C1_DIR)/%.so
126ea7725993 6953477: Increase portability and flexibility of building Hotspot
bobv
parents: 1552
diff changeset
338 $(install-file)
0
a61af66fc99e Initial load
duke
parents:
diff changeset
339 $(EXPORT_JRE_LIB_ARCH_DIR)/%.so: $(C2_DIR)/%.so
a61af66fc99e Initial load
duke
parents:
diff changeset
340 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
341 $(EXPORT_CLIENT_DIR)/%.so: $(C1_DIR)/%.so
a61af66fc99e Initial load
duke
parents:
diff changeset
342 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
343 $(EXPORT_CLIENT_DIR)/64/%.so: $(C1_DIR)/%.so
a61af66fc99e Initial load
duke
parents:
diff changeset
344 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
345 $(EXPORT_SERVER_DIR)/%.so: $(C2_DIR)/%.so
a61af66fc99e Initial load
duke
parents:
diff changeset
346 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
347 $(EXPORT_SERVER_DIR)/64/%.so: $(C2_DIR)/%.so
a61af66fc99e Initial load
duke
parents:
diff changeset
348 $(install-file)
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
349 endif
0
a61af66fc99e Initial load
duke
parents:
diff changeset
350 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
351
a61af66fc99e Initial load
duke
parents:
diff changeset
352 # Jar file (sa-jdi.jar)
a61af66fc99e Initial load
duke
parents:
diff changeset
353 $(EXPORT_LIB_DIR)/%.jar: $(GEN_DIR)/%.jar
a61af66fc99e Initial load
duke
parents:
diff changeset
354 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
355
1184
7fbf850d87b7 6580131: 3/4 CompiledMethodLoad events don't produce the expected extra notifications to describe inlining
dcubed
parents: 196
diff changeset
356 # Include files (jvmti.h, jvmticmlr.h, jni.h, $(JDK_INCLUDE_SUBDIR)/jni_md.h, jmm.h)
0
a61af66fc99e Initial load
duke
parents:
diff changeset
357 $(EXPORT_INCLUDE_DIR)/%: $(GEN_DIR)/jvmtifiles/%
a61af66fc99e Initial load
duke
parents:
diff changeset
358 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
359
1184
7fbf850d87b7 6580131: 3/4 CompiledMethodLoad events don't produce the expected extra notifications to describe inlining
dcubed
parents: 196
diff changeset
360 $(EXPORT_INCLUDE_DIR)/%: $(HS_SRC_DIR)/share/vm/code/%
7fbf850d87b7 6580131: 3/4 CompiledMethodLoad events don't produce the expected extra notifications to describe inlining
dcubed
parents: 196
diff changeset
361 $(install-file)
7fbf850d87b7 6580131: 3/4 CompiledMethodLoad events don't produce the expected extra notifications to describe inlining
dcubed
parents: 196
diff changeset
362
0
a61af66fc99e Initial load
duke
parents:
diff changeset
363 $(EXPORT_INCLUDE_DIR)/%: $(HS_SRC_DIR)/share/vm/prims/%
a61af66fc99e Initial load
duke
parents:
diff changeset
364 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
365
2199
d8a72fbc4be7 7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents: 2192
diff changeset
366 HS_JNI_ARCH_SRC=$(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(HS_ARCH)/vm/jni_$(HS_ARCH).h)
d8a72fbc4be7 7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents: 2192
diff changeset
367 $(EXPORT_INCLUDE_DIR)/$(JDK_INCLUDE_SUBDIR)/jni_md.h: $(HS_JNI_ARCH_SRC)
0
a61af66fc99e Initial load
duke
parents:
diff changeset
368 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
369
a61af66fc99e Initial load
duke
parents:
diff changeset
370 $(EXPORT_INCLUDE_DIR)/%: $(HS_SRC_DIR)/share/vm/services/%
a61af66fc99e Initial load
duke
parents:
diff changeset
371 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
372
a61af66fc99e Initial load
duke
parents:
diff changeset
373 # Doc files (jvmti.html)
a61af66fc99e Initial load
duke
parents:
diff changeset
374 $(EXPORT_DOCS_DIR)/platform/jvmti/%: $(DOCS_DIR)/%
a61af66fc99e Initial load
duke
parents:
diff changeset
375 $(install-file)
a61af66fc99e Initial load
duke
parents:
diff changeset
376
a61af66fc99e Initial load
duke
parents:
diff changeset
377 # Xusage file
a61af66fc99e Initial load
duke
parents:
diff changeset
378 $(EXPORT_SERVER_DIR)/Xusage.txt $(EXPORT_CLIENT_DIR)/Xusage.txt $(EXPORT_KERNEL_DIR)/Xusage.txt: $(XUSAGE)
a61af66fc99e Initial load
duke
parents:
diff changeset
379 $(prep-target)
a61af66fc99e Initial load
duke
parents:
diff changeset
380 $(RM) $@.temp
a61af66fc99e Initial load
duke
parents:
diff changeset
381 $(SED) 's/\(separated by \)[;:]/\1$(PATH_SEP)/g' $< > $@.temp
a61af66fc99e Initial load
duke
parents:
diff changeset
382 $(MV) $@.temp $@
a61af66fc99e Initial load
duke
parents:
diff changeset
383
a61af66fc99e Initial load
duke
parents:
diff changeset
384 #
a61af66fc99e Initial load
duke
parents:
diff changeset
385 # Clean rules
a61af66fc99e Initial load
duke
parents:
diff changeset
386 #
a61af66fc99e Initial load
duke
parents:
diff changeset
387 clobber clean: clean_build clean_export clean_jdk
a61af66fc99e Initial load
duke
parents:
diff changeset
388 clean_build:
a61af66fc99e Initial load
duke
parents:
diff changeset
389 $(RM) -r $(C1_DIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
390 $(RM) -r $(C2_DIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
391 $(RM) -r $(KERNEL_DIR)
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
392 $(RM) -r $(ZERO_DIR)
1692
d2ede61b7a12 6976186: integrate Shark HotSpot changes
twisti
parents: 1681
diff changeset
393 $(RM) -r $(SHARK_DIR)
0
a61af66fc99e Initial load
duke
parents:
diff changeset
394 clean_export:
a61af66fc99e Initial load
duke
parents:
diff changeset
395 $(RM) -r $(EXPORT_PATH)
a61af66fc99e Initial load
duke
parents:
diff changeset
396 clean_jdk:
a61af66fc99e Initial load
duke
parents:
diff changeset
397 $(RM) -r $(JDK_IMAGE_DIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
398
a61af66fc99e Initial load
duke
parents:
diff changeset
399 #
a61af66fc99e Initial load
duke
parents:
diff changeset
400 # Create JDK and place this build into it
a61af66fc99e Initial load
duke
parents:
diff changeset
401 #
a61af66fc99e Initial load
duke
parents:
diff changeset
402 create_jdk: copy_jdk update_jdk
a61af66fc99e Initial load
duke
parents:
diff changeset
403
a61af66fc99e Initial load
duke
parents:
diff changeset
404 update_jdk: export_product_jdk export_fastdebug_jdk test_jdk
a61af66fc99e Initial load
duke
parents:
diff changeset
405
a61af66fc99e Initial load
duke
parents:
diff changeset
406 copy_jdk: $(JDK_IMAGE_DIR)/jre/lib/rt.jar
a61af66fc99e Initial load
duke
parents:
diff changeset
407
a61af66fc99e Initial load
duke
parents:
diff changeset
408 $(JDK_IMAGE_DIR)/jre/lib/rt.jar:
a61af66fc99e Initial load
duke
parents:
diff changeset
409 $(RM) -r $(JDK_IMAGE_DIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
410 $(MKDIR) -p $(JDK_IMAGE_DIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
411 ($(CD) $(JDK_IMPORT_PATH) && \
a61af66fc99e Initial load
duke
parents:
diff changeset
412 $(TAR) -cf - *) | \
a61af66fc99e Initial load
duke
parents:
diff changeset
413 ($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xf -)
a61af66fc99e Initial load
duke
parents:
diff changeset
414
a61af66fc99e Initial load
duke
parents:
diff changeset
415 test_jdk:
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
416 ifneq ($(ZERO_BUILD), true)
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
417 ifeq ($(ARCH_DATA_MODEL), 32)
0
a61af66fc99e Initial load
duke
parents:
diff changeset
418 $(JDK_IMAGE_DIR)/bin/java -client -version
1010
354d3184f6b2 6890308: integrate zero assembler hotspot changes
never
parents: 196
diff changeset
419 endif
0
a61af66fc99e Initial load
duke
parents:
diff changeset
420 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
421 $(JDK_IMAGE_DIR)/bin/java -server -version
a61af66fc99e Initial load
duke
parents:
diff changeset
422
a61af66fc99e Initial load
duke
parents:
diff changeset
423 copy_product_jdk:
a61af66fc99e Initial load
duke
parents:
diff changeset
424 $(RM) -r $(JDK_IMAGE_DIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
425 $(MKDIR) -p $(JDK_IMAGE_DIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
426 ($(CD) $(JDK_IMPORT_PATH) && \
113
ba764ed4b6f2 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 0
diff changeset
427 $(TAR) -cf - $(JDK_DIRS)) | \
0
a61af66fc99e Initial load
duke
parents:
diff changeset
428 ($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xf -)
a61af66fc99e Initial load
duke
parents:
diff changeset
429
a61af66fc99e Initial load
duke
parents:
diff changeset
430 copy_fastdebug_jdk:
a61af66fc99e Initial load
duke
parents:
diff changeset
431 $(RM) -r $(JDK_IMAGE_DIR)/fastdebug
a61af66fc99e Initial load
duke
parents:
diff changeset
432 $(MKDIR) -p $(JDK_IMAGE_DIR)/fastdebug
a61af66fc99e Initial load
duke
parents:
diff changeset
433 if [ -d $(JDK_IMPORT_PATH)/fastdebug ] ; then \
a61af66fc99e Initial load
duke
parents:
diff changeset
434 ($(CD) $(JDK_IMPORT_PATH)/fastdebug && \
113
ba764ed4b6f2 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 0
diff changeset
435 $(TAR) -cf - $(JDK_DIRS)) | \
0
a61af66fc99e Initial load
duke
parents:
diff changeset
436 ($(CD) $(JDK_IMAGE_DIR)/fastdebug && $(TAR) -xf -) ; \
a61af66fc99e Initial load
duke
parents:
diff changeset
437 else \
a61af66fc99e Initial load
duke
parents:
diff changeset
438 ($(CD) $(JDK_IMPORT_PATH) && \
113
ba764ed4b6f2 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 0
diff changeset
439 $(TAR) -cf - $(JDK_DIRS)) | \
0
a61af66fc99e Initial load
duke
parents:
diff changeset
440 ($(CD) $(JDK_IMAGE_DIR)/fastdebug && $(TAR) -xf -) ; \
a61af66fc99e Initial load
duke
parents:
diff changeset
441 fi
a61af66fc99e Initial load
duke
parents:
diff changeset
442
a61af66fc99e Initial load
duke
parents:
diff changeset
443 copy_debug_jdk:
a61af66fc99e Initial load
duke
parents:
diff changeset
444 $(RM) -r $(JDK_IMAGE_DIR)/debug
a61af66fc99e Initial load
duke
parents:
diff changeset
445 $(MKDIR) -p $(JDK_IMAGE_DIR)/debug
a61af66fc99e Initial load
duke
parents:
diff changeset
446 if [ -d $(JDK_IMPORT_PATH)/debug ] ; then \
a61af66fc99e Initial load
duke
parents:
diff changeset
447 ($(CD) $(JDK_IMPORT_PATH)/debug && \
113
ba764ed4b6f2 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 0
diff changeset
448 $(TAR) -cf - $(JDK_DIRS)) | \
0
a61af66fc99e Initial load
duke
parents:
diff changeset
449 ($(CD) $(JDK_IMAGE_DIR)/debug && $(TAR) -xf -) ; \
a61af66fc99e Initial load
duke
parents:
diff changeset
450 elif [ -d $(JDK_IMPORT_PATH)/fastdebug ] ; then \
a61af66fc99e Initial load
duke
parents:
diff changeset
451 ($(CD) $(JDK_IMPORT_PATH)/fastdebug && \
113
ba764ed4b6f2 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 0
diff changeset
452 $(TAR) -cf - $(JDK_DIRS)) | \
0
a61af66fc99e Initial load
duke
parents:
diff changeset
453 ($(CD) $(JDK_IMAGE_DIR)/debug && $(TAR) -xf -) ; \
a61af66fc99e Initial load
duke
parents:
diff changeset
454 else \
a61af66fc99e Initial load
duke
parents:
diff changeset
455 ($(CD) $(JDK_IMPORT_PATH) && \
113
ba764ed4b6f2 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 0
diff changeset
456 $(TAR) -cf - $(JDK_DIRS)) | \
0
a61af66fc99e Initial load
duke
parents:
diff changeset
457 ($(CD) $(JDK_IMAGE_DIR)/debug && $(TAR) -xf -) ; \
a61af66fc99e Initial load
duke
parents:
diff changeset
458 fi
a61af66fc99e Initial load
duke
parents:
diff changeset
459
a61af66fc99e Initial load
duke
parents:
diff changeset
460 #
a61af66fc99e Initial load
duke
parents:
diff changeset
461 # Check target
a61af66fc99e Initial load
duke
parents:
diff changeset
462 #
a61af66fc99e Initial load
duke
parents:
diff changeset
463 check: variable_check
a61af66fc99e Initial load
duke
parents:
diff changeset
464
a61af66fc99e Initial load
duke
parents:
diff changeset
465 #
a61af66fc99e Initial load
duke
parents:
diff changeset
466 # Help target
a61af66fc99e Initial load
duke
parents:
diff changeset
467 #
a61af66fc99e Initial load
duke
parents:
diff changeset
468 help: intro_help target_help variable_help notes_help examples_help
a61af66fc99e Initial load
duke
parents:
diff changeset
469
a61af66fc99e Initial load
duke
parents:
diff changeset
470 # Intro help message
a61af66fc99e Initial load
duke
parents:
diff changeset
471 intro_help:
a61af66fc99e Initial load
duke
parents:
diff changeset
472 @$(ECHO) \
a61af66fc99e Initial load
duke
parents:
diff changeset
473 "Makefile for the Hotspot workspace."
a61af66fc99e Initial load
duke
parents:
diff changeset
474 @$(ECHO) \
a61af66fc99e Initial load
duke
parents:
diff changeset
475 "Default behavior is to build and create an export area for the j2se builds."
a61af66fc99e Initial load
duke
parents:
diff changeset
476
a61af66fc99e Initial load
duke
parents:
diff changeset
477 # Target help
a61af66fc99e Initial load
duke
parents:
diff changeset
478 target_help:
a61af66fc99e Initial load
duke
parents:
diff changeset
479 @$(ECHO) "help: This help message"
a61af66fc99e Initial load
duke
parents:
diff changeset
480 @$(ECHO) "all: Same as: all_product all_fastdebug"
a61af66fc99e Initial load
duke
parents:
diff changeset
481 @$(ECHO) "world: Same as: all create_jdk"
a61af66fc99e Initial load
duke
parents:
diff changeset
482 @$(ECHO) "all_product: Same as: product product1 export_product"
a61af66fc99e Initial load
duke
parents:
diff changeset
483 @$(ECHO) "all_fastdebug: Same as: fastdebug fastdebug1 export_fastdebug"
a61af66fc99e Initial load
duke
parents:
diff changeset
484 @$(ECHO) "all_debug: Same as: jvmg jvmg1 export_debug"
a61af66fc99e Initial load
duke
parents:
diff changeset
485 @$(ECHO) "all_optimized: Same as: optimized optimized1 export_optimized"
a61af66fc99e Initial load
duke
parents:
diff changeset
486 @$(ECHO) "clean: Clean all areas"
a61af66fc99e Initial load
duke
parents:
diff changeset
487 @$(ECHO) "export_product: Export product files to EXPORT_PATH"
a61af66fc99e Initial load
duke
parents:
diff changeset
488 @$(ECHO) "export_fastdebug: Export fastdebug files to EXPORT_PATH"
a61af66fc99e Initial load
duke
parents:
diff changeset
489 @$(ECHO) "export_debug: Export debug files to EXPORT_PATH"
a61af66fc99e Initial load
duke
parents:
diff changeset
490 @$(ECHO) "export_optimized: Export optimized files to EXPORT_PATH"
a61af66fc99e Initial load
duke
parents:
diff changeset
491 @$(ECHO) "create_jdk: Create JDK image, export all files into it"
a61af66fc99e Initial load
duke
parents:
diff changeset
492 @$(ECHO) "update_jdk: Update JDK image with fresh exported files"
a61af66fc99e Initial load
duke
parents:
diff changeset
493 @$(ECHO) " "
a61af66fc99e Initial load
duke
parents:
diff changeset
494 @$(ECHO) "Others targets are:"
a61af66fc99e Initial load
duke
parents:
diff changeset
495 @$(ECHO) " $(C1_VM_TARGETS)"
a61af66fc99e Initial load
duke
parents:
diff changeset
496 @$(ECHO) " $(C2_VM_TARGETS)"
a61af66fc99e Initial load
duke
parents:
diff changeset
497 @$(ECHO) " $(KERNEL_VM_TARGETS)"
a61af66fc99e Initial load
duke
parents:
diff changeset
498
a61af66fc99e Initial load
duke
parents:
diff changeset
499 # Variable help (only common ones used by this workspace)
a61af66fc99e Initial load
duke
parents:
diff changeset
500 variable_help: variable_help_intro variable_list variable_help_end
a61af66fc99e Initial load
duke
parents:
diff changeset
501 variable_help_intro:
a61af66fc99e Initial load
duke
parents:
diff changeset
502 @$(ECHO) "--- Common Variables ---"
a61af66fc99e Initial load
duke
parents:
diff changeset
503 variable_help_end:
a61af66fc99e Initial load
duke
parents:
diff changeset
504 @$(ECHO) " "
a61af66fc99e Initial load
duke
parents:
diff changeset
505 @$(ECHO) "--- Make Arguments ---"
a61af66fc99e Initial load
duke
parents:
diff changeset
506 @$(ECHO) "MAKE_ARGS=$(MAKE_ARGS)"
a61af66fc99e Initial load
duke
parents:
diff changeset
507
a61af66fc99e Initial load
duke
parents:
diff changeset
508 # One line descriptions for the variables
a61af66fc99e Initial load
duke
parents:
diff changeset
509 SLASH_JAVA.desc = Root of all build tools, e.g. /java or J:
a61af66fc99e Initial load
duke
parents:
diff changeset
510 OUTPUTDIR.desc = Output directory, default is build/<osname>
a61af66fc99e Initial load
duke
parents:
diff changeset
511 BOOTDIR.desc = JDK used to compile agent java source and test with
a61af66fc99e Initial load
duke
parents:
diff changeset
512 JDK_IMPORT_PATH.desc = Promoted JDK to copy for 'create_jdk'
a61af66fc99e Initial load
duke
parents:
diff changeset
513 EXPORT_PATH.desc = Directory to place files to export for JDK build
a61af66fc99e Initial load
duke
parents:
diff changeset
514
a61af66fc99e Initial load
duke
parents:
diff changeset
515 # Make variables to print out (description and value)
a61af66fc99e Initial load
duke
parents:
diff changeset
516 VARIABLE_PRINTVAL_LIST += \
a61af66fc99e Initial load
duke
parents:
diff changeset
517 SLASH_JAVA \
a61af66fc99e Initial load
duke
parents:
diff changeset
518 OUTPUTDIR \
a61af66fc99e Initial load
duke
parents:
diff changeset
519 BOOTDIR \
a61af66fc99e Initial load
duke
parents:
diff changeset
520 JDK_IMPORT_PATH \
a61af66fc99e Initial load
duke
parents:
diff changeset
521 EXPORT_PATH
a61af66fc99e Initial load
duke
parents:
diff changeset
522
a61af66fc99e Initial load
duke
parents:
diff changeset
523 # Make variables that should refer to directories that exist
a61af66fc99e Initial load
duke
parents:
diff changeset
524 VARIABLE_CHECKDIR_LIST += \
a61af66fc99e Initial load
duke
parents:
diff changeset
525 SLASH_JAVA \
a61af66fc99e Initial load
duke
parents:
diff changeset
526 BOOTDIR \
a61af66fc99e Initial load
duke
parents:
diff changeset
527 JDK_IMPORT_PATH
a61af66fc99e Initial load
duke
parents:
diff changeset
528
a61af66fc99e Initial load
duke
parents:
diff changeset
529 # For pattern rules below, so all are treated the same
a61af66fc99e Initial load
duke
parents:
diff changeset
530 DO_PRINTVAL_LIST=$(VARIABLE_PRINTVAL_LIST:%=%.printval)
a61af66fc99e Initial load
duke
parents:
diff changeset
531 DO_CHECKDIR_LIST=$(VARIABLE_CHECKDIR_LIST:%=%.checkdir)
a61af66fc99e Initial load
duke
parents:
diff changeset
532
a61af66fc99e Initial load
duke
parents:
diff changeset
533 # Complete variable check
a61af66fc99e Initial load
duke
parents:
diff changeset
534 variable_check: $(DO_CHECKDIR_LIST)
a61af66fc99e Initial load
duke
parents:
diff changeset
535 variable_list: $(DO_PRINTVAL_LIST) variable_check
a61af66fc99e Initial load
duke
parents:
diff changeset
536
a61af66fc99e Initial load
duke
parents:
diff changeset
537 # Pattern rule for printing out a variable
a61af66fc99e Initial load
duke
parents:
diff changeset
538 %.printval:
a61af66fc99e Initial load
duke
parents:
diff changeset
539 @$(ECHO) " ALT_$* - $($*.desc)"
a61af66fc99e Initial load
duke
parents:
diff changeset
540 @$(ECHO) " $*=$($*)"
a61af66fc99e Initial load
duke
parents:
diff changeset
541
a61af66fc99e Initial load
duke
parents:
diff changeset
542 # Pattern rule for checking to see if a variable with a directory exists
a61af66fc99e Initial load
duke
parents:
diff changeset
543 %.checkdir:
a61af66fc99e Initial load
duke
parents:
diff changeset
544 @if [ ! -d $($*) ] ; then \
a61af66fc99e Initial load
duke
parents:
diff changeset
545 $(ECHO) "WARNING: $* does not exist, try $(MAKE) sanity"; \
a61af66fc99e Initial load
duke
parents:
diff changeset
546 fi
a61af66fc99e Initial load
duke
parents:
diff changeset
547
a61af66fc99e Initial load
duke
parents:
diff changeset
548 # Pattern rule for checking to see if a variable with a file exists
a61af66fc99e Initial load
duke
parents:
diff changeset
549 %.checkfil:
a61af66fc99e Initial load
duke
parents:
diff changeset
550 @if [ ! -f $($*) ] ; then \
a61af66fc99e Initial load
duke
parents:
diff changeset
551 $(ECHO) "WARNING: $* does not exist, try $(MAKE) sanity"; \
a61af66fc99e Initial load
duke
parents:
diff changeset
552 fi
a61af66fc99e Initial load
duke
parents:
diff changeset
553
a61af66fc99e Initial load
duke
parents:
diff changeset
554 # Misc notes on help
a61af66fc99e Initial load
duke
parents:
diff changeset
555 notes_help:
a61af66fc99e Initial load
duke
parents:
diff changeset
556 @$(ECHO) \
a61af66fc99e Initial load
duke
parents:
diff changeset
557 "--- Notes --- "
a61af66fc99e Initial load
duke
parents:
diff changeset
558 @$(ECHO) \
a61af66fc99e Initial load
duke
parents:
diff changeset
559 "- JDK_IMPORT_PATH must refer to a compatible build, not all past promoted"
a61af66fc99e Initial load
duke
parents:
diff changeset
560 @$(ECHO) \
a61af66fc99e Initial load
duke
parents:
diff changeset
561 " builds or previous release JDK builds will work."
a61af66fc99e Initial load
duke
parents:
diff changeset
562 @$(ECHO) \
a61af66fc99e Initial load
duke
parents:
diff changeset
563 "- The fastest builds have been when the workspace and the BOOTDIR are on"
a61af66fc99e Initial load
duke
parents:
diff changeset
564 @$(ECHO) \
a61af66fc99e Initial load
duke
parents:
diff changeset
565 " local disk."
a61af66fc99e Initial load
duke
parents:
diff changeset
566
a61af66fc99e Initial load
duke
parents:
diff changeset
567 examples_help:
a61af66fc99e Initial load
duke
parents:
diff changeset
568 @$(ECHO) \
a61af66fc99e Initial load
duke
parents:
diff changeset
569 "--- Examples --- "
a61af66fc99e Initial load
duke
parents:
diff changeset
570 @$(ECHO) \
a61af66fc99e Initial load
duke
parents:
diff changeset
571 " $(MAKE) all"
a61af66fc99e Initial load
duke
parents:
diff changeset
572 @$(ECHO) \
a61af66fc99e Initial load
duke
parents:
diff changeset
573 " $(MAKE) world"
a61af66fc99e Initial load
duke
parents:
diff changeset
574 @$(ECHO) \
a61af66fc99e Initial load
duke
parents:
diff changeset
575 " $(MAKE) ALT_BOOTDIR=/opt/java/jdk$(PREVIOUS_JDK_VERSION)"
a61af66fc99e Initial load
duke
parents:
diff changeset
576 @$(ECHO) \
a61af66fc99e Initial load
duke
parents:
diff changeset
577 " $(MAKE) ALT_JDK_IMPORT_PATH=/opt/java/jdk$(JDK_VERSION)"
a61af66fc99e Initial load
duke
parents:
diff changeset
578
a61af66fc99e Initial load
duke
parents:
diff changeset
579 # JPRT rule to build this workspace
a61af66fc99e Initial load
duke
parents:
diff changeset
580 include $(GAMMADIR)/make/jprt.gmk
a61af66fc99e Initial load
duke
parents:
diff changeset
581
a61af66fc99e Initial load
duke
parents:
diff changeset
582 .PHONY: all world clobber clean help $(C1_VM_TARGETS) $(C2_VM_TARGETS) \
a61af66fc99e Initial load
duke
parents:
diff changeset
583 $(KERNEL_VM_TARGETS) \
a61af66fc99e Initial load
duke
parents:
diff changeset
584 generic_build1 generic_build2 generic_buildkernel generic_export \
a61af66fc99e Initial load
duke
parents:
diff changeset
585 export_product export_fastdebug export_debug export_optimized \
a61af66fc99e Initial load
duke
parents:
diff changeset
586 export_jdk_product export_jdk_fastdebug export_jdk_debug \
a61af66fc99e Initial load
duke
parents:
diff changeset
587 create_jdk copy_jdk update_jdk test_jdk \
a61af66fc99e Initial load
duke
parents:
diff changeset
588 copy_product_jdk copy_fastdebug_jdk copy_debug_jdk
a61af66fc99e Initial load
duke
parents:
diff changeset
589