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