86 C1_VM_TARGETS=product1 fastdebug1 optimized1 jvmg1 |
88 C1_VM_TARGETS=product1 fastdebug1 optimized1 jvmg1 |
87 C2_VM_TARGETS=product fastdebug optimized jvmg |
89 C2_VM_TARGETS=product fastdebug optimized jvmg |
88 KERNEL_VM_TARGETS=productkernel fastdebugkernel optimizedkernel jvmgkernel |
90 KERNEL_VM_TARGETS=productkernel fastdebugkernel optimizedkernel jvmgkernel |
89 ZERO_VM_TARGETS=productzero fastdebugzero optimizedzero jvmgzero |
91 ZERO_VM_TARGETS=productzero fastdebugzero optimizedzero jvmgzero |
90 SHARK_VM_TARGETS=productshark fastdebugshark optimizedshark jvmgshark |
92 SHARK_VM_TARGETS=productshark fastdebugshark optimizedshark jvmgshark |
91 |
93 MINIMAL1_VM_TARGETS=productminimal1 fastdebugminimal1 jvmgminimal1 |
92 COMMON_VM_PRODUCT_TARGETS=product product1 productkernel docs export_product |
94 |
93 COMMON_VM_FASTDEBUG_TARGETS=fastdebug fastdebug1 fastdebugkernel docs export_fastdebug |
95 COMMON_VM_PRODUCT_TARGETS=product product1 docs export_product |
94 COMMON_VM_DEBUG_TARGETS=jvmg jvmg1 jvmgkernel docs export_debug |
96 COMMON_VM_FASTDEBUG_TARGETS=fastdebug fastdebug1 docs export_fastdebug |
|
97 COMMON_VM_DEBUG_TARGETS=jvmg jvmg1 docs export_debug |
95 |
98 |
96 # JDK directory list |
99 # JDK directory list |
97 JDK_DIRS=bin include jre lib demo |
100 JDK_DIRS=bin include jre lib demo |
98 |
101 |
99 all: all_product all_fastdebug |
102 all: all_product all_fastdebug |
|
103 |
|
104 ifeq ($(JVM_VARIANT_MINIMAL1),true) |
|
105 all_product: productminimal1 |
|
106 all_fastdebug: fastdebugminimal1 |
|
107 all_debug: jvmgminimal1 |
|
108 endif |
100 |
109 |
101 ifdef BUILD_CLIENT_ONLY |
110 ifdef BUILD_CLIENT_ONLY |
102 all_product: product1 docs export_product |
111 all_product: product1 docs export_product |
103 all_fastdebug: fastdebug1 docs export_fastdebug |
112 all_fastdebug: fastdebug1 docs export_fastdebug |
104 all_debug: jvmg1 docs export_debug |
113 all_debug: jvmg1 docs export_debug |
112 all_fastdebug: $(COMMON_VM_FASTDEBUG_TARGETS) |
121 all_fastdebug: $(COMMON_VM_FASTDEBUG_TARGETS) |
113 all_debug: $(COMMON_VM_DEBUG_TARGETS) |
122 all_debug: $(COMMON_VM_DEBUG_TARGETS) |
114 endif |
123 endif |
115 endif |
124 endif |
116 |
125 |
117 all_optimized: optimized optimized1 optimizedkernel docs export_optimized |
126 all_optimized: optimized optimized1 docs export_optimized |
118 |
127 |
119 allzero: all_productzero all_fastdebugzero |
128 allzero: all_productzero all_fastdebugzero |
120 all_productzero: productzero docs export_product |
129 all_productzero: productzero docs export_product |
121 all_fastdebugzero: fastdebugzero docs export_fastdebug |
130 all_fastdebugzero: fastdebugzero docs export_fastdebug |
122 all_debugzero: jvmgzero docs export_debug |
131 all_debugzero: jvmgzero docs export_debug |
164 |
173 |
165 $(SHARK_VM_TARGETS): |
174 $(SHARK_VM_TARGETS): |
166 $(CD) $(GAMMADIR)/make; \ |
175 $(CD) $(GAMMADIR)/make; \ |
167 $(MAKE) BUILD_FLAVOR=$(@:%shark=%) VM_TARGET=$@ \ |
176 $(MAKE) BUILD_FLAVOR=$(@:%shark=%) VM_TARGET=$@ \ |
168 generic_buildshark $(ALT_OUT) |
177 generic_buildshark $(ALT_OUT) |
|
178 |
|
179 $(MINIMAL1_VM_TARGETS): |
|
180 $(CD) $(GAMMADIR)/make; \ |
|
181 $(MAKE) BUILD_FLAVOR=$(@:%minimal1=%) VM_TARGET=$@ \ |
|
182 generic_buildminimal1 $(ALT_OUT) |
169 |
183 |
170 # Build compiler1 (client) rule, different for platforms |
184 # Build compiler1 (client) rule, different for platforms |
171 generic_build1: |
185 generic_build1: |
172 $(MKDIR) -p $(OUTPUTDIR) |
186 $(MKDIR) -p $(OUTPUTDIR) |
173 ifeq ($(OSNAME),windows) |
187 ifeq ($(OSNAME),windows) |
236 generic_buildshark: |
250 generic_buildshark: |
237 $(MKDIR) -p $(OUTPUTDIR) |
251 $(MKDIR) -p $(OUTPUTDIR) |
238 $(CD) $(OUTPUTDIR); \ |
252 $(CD) $(OUTPUTDIR); \ |
239 $(MAKE) -f $(ABS_OS_MAKEFILE) \ |
253 $(MAKE) -f $(ABS_OS_MAKEFILE) \ |
240 $(MAKE_ARGS) $(VM_TARGET) |
254 $(MAKE_ARGS) $(VM_TARGET) |
|
255 |
|
256 generic_buildminimal1: |
|
257 ifeq ($(JVM_VARIANT_MINIMAL1),true) |
|
258 $(MKDIR) -p $(OUTPUTDIR) |
|
259 ifeq ($(ARCH_DATA_MODEL), 32) |
|
260 ifeq ($(OSNAME),windows) |
|
261 $(ECHO) "No ($(VM_TARGET)) for $(OSNAME) ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)" ; |
|
262 else |
|
263 ifeq ($(OSNAME),solaris) |
|
264 $(ECHO) "No ($(VM_TARGET)) for $(OSNAME) ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)" ; |
|
265 else |
|
266 $(CD) $(OUTPUTDIR); \ |
|
267 $(MAKE) -f $(ABS_OS_MAKEFILE) $(MAKE_ARGS) $(VM_TARGET) ; |
|
268 endif |
|
269 endif |
|
270 else |
|
271 @$(ECHO) "No ($(VM_TARGET)) for $(OSNAME) ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)" |
|
272 endif |
|
273 else |
|
274 @$(ECHO) "Error: trying to build a minimal target but JVM_VARIANT_MINIMAL1 is not true." |
|
275 endif |
241 |
276 |
242 # Export file rule |
277 # Export file rule |
243 generic_export: $(EXPORT_LIST) |
278 generic_export: $(EXPORT_LIST) |
244 export_product: |
279 export_product: |
245 $(MAKE) BUILD_FLAVOR=$(@:export_%=%) VM_SUBDIR=$(@:export_%=%) \ |
280 $(MAKE) BUILD_FLAVOR=$(@:export_%=%) VM_SUBDIR=$(@:export_%=%) \ |
285 C1_DIR=$(C1_BASE_DIR)/$(VM_SUBDIR) |
320 C1_DIR=$(C1_BASE_DIR)/$(VM_SUBDIR) |
286 C2_DIR=$(C2_BASE_DIR)/$(VM_SUBDIR) |
321 C2_DIR=$(C2_BASE_DIR)/$(VM_SUBDIR) |
287 KERNEL_DIR=$(KERNEL_BASE_DIR)/$(VM_SUBDIR) |
322 KERNEL_DIR=$(KERNEL_BASE_DIR)/$(VM_SUBDIR) |
288 ZERO_DIR=$(ZERO_BASE_DIR)/$(VM_SUBDIR) |
323 ZERO_DIR=$(ZERO_BASE_DIR)/$(VM_SUBDIR) |
289 SHARK_DIR=$(SHARK_BASE_DIR)/$(VM_SUBDIR) |
324 SHARK_DIR=$(SHARK_BASE_DIR)/$(VM_SUBDIR) |
|
325 MINIMAL1_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_minimal1 |
|
326 MINIMAL1_DIR=$(MINIMAL1_BASE_DIR)/$(VM_SUBDIR) |
290 |
327 |
291 ifeq ($(JVM_VARIANT_SERVER), true) |
328 ifeq ($(JVM_VARIANT_SERVER), true) |
292 MISC_DIR=$(C2_DIR) |
329 MISC_DIR=$(C2_DIR) |
293 GEN_DIR=$(C2_BASE_DIR)/generated |
330 GEN_DIR=$(C2_BASE_DIR)/generated |
294 endif |
331 endif |
306 endif |
343 endif |
307 ifeq ($(JVM_VARIANT_ZERO), true) |
344 ifeq ($(JVM_VARIANT_ZERO), true) |
308 MISC_DIR=$(ZERO_DIR) |
345 MISC_DIR=$(ZERO_DIR) |
309 GEN_DIR=$(ZERO_BASE_DIR)/generated |
346 GEN_DIR=$(ZERO_BASE_DIR)/generated |
310 endif |
347 endif |
|
348 ifeq ($(JVM_VARIANT_MINIMAL1), true) |
|
349 MISC_DIR=$(MINIMAL1_DIR) |
|
350 GEN_DIR=$(MINIMAL1_BASE_DIR)/generated |
|
351 endif |
311 |
352 |
312 # Bin files (windows) |
353 # Bin files (windows) |
313 ifeq ($(OSNAME),windows) |
354 ifeq ($(OSNAME),windows) |
314 |
355 |
315 # Get jvm.lib |
356 # Get jvm.lib |
354 $(EXPORT_KERNEL_DIR)/%.pdb: $(KERNEL_DIR)/%.pdb |
395 $(EXPORT_KERNEL_DIR)/%.pdb: $(KERNEL_DIR)/%.pdb |
355 $(install-file) |
396 $(install-file) |
356 $(EXPORT_KERNEL_DIR)/%.map: $(KERNEL_DIR)/%.map |
397 $(EXPORT_KERNEL_DIR)/%.map: $(KERNEL_DIR)/%.map |
357 $(install-file) |
398 $(install-file) |
358 endif |
399 endif |
|
400 |
|
401 # Minimal JVM files always come from minimal area |
|
402 $(EXPORT_MINIMAL_DIR)/%.diz: $(MINIMAL1_DIR)/%.diz |
|
403 $(install-file) |
|
404 $(EXPORT_MINIMAL_DIR)/%.dll: $(MINIMAL1_DIR)/%.dll |
|
405 $(install-file) |
|
406 $(EXPORT_MINIMAL_DIR)/%.pdb: $(MINIMAL1_DIR)/%.pdb |
|
407 $(install-file) |
|
408 $(EXPORT_MINIMAL_DIR)/%.map: $(MINIMAL1_DIR)/%.map |
|
409 $(install-file) |
359 |
410 |
360 # Shared Library |
411 # Shared Library |
361 ifneq ($(OSNAME),windows) |
412 ifneq ($(OSNAME),windows) |
362 ifeq ($(JVM_VARIANT_SERVER), true) |
413 ifeq ($(JVM_VARIANT_SERVER), true) |
363 $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX) |
414 $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX) |
409 $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX) |
460 $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX) |
410 $(install-file) |
461 $(install-file) |
411 $(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX) |
462 $(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX) |
412 $(install-file) |
463 $(install-file) |
413 endif |
464 endif |
|
465 ifeq ($(JVM_VARIANT_MINIMAL1), true) |
|
466 $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(MINIMAL1_DIR)/%.$(LIBRARY_SUFFIX) |
|
467 $(install-file) |
|
468 $(EXPORT_MINIMAL_DIR)/%.$(LIBRARY_SUFFIX): $(MINIMAL1_DIR)/%.$(LIBRARY_SUFFIX) |
|
469 $(install-file) |
|
470 $(EXPORT_MINIMAL_DIR)/64/%.$(LIBRARY_SUFFIX): $(MINIMAL1_DIR)/%.$(LIBRARY_SUFFIX) |
|
471 $(install-file) |
|
472 $(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo: $(MINIMAL1_DIR)/%.debuginfo |
|
473 $(install-file) |
|
474 $(EXPORT_MINIMAL_DIR)/%.debuginfo: $(MINIMAL1_DIR)/%.debuginfo |
|
475 $(install-file) |
|
476 $(EXPORT_MINIMAL_DIR)/64/%.debuginfo: $(MINIMAL1_DIR)/%.debuginfo |
|
477 $(install-file) |
|
478 $(EXPORT_JRE_LIB_ARCH_DIR)/%.diz: $(MINIMAL1_DIR)/%.diz |
|
479 $(install-file) |
|
480 $(EXPORT_MINIMAL_DIR)/%.diz: $(MINIMAL1_DIR)/%.diz |
|
481 $(install-file) |
|
482 $(EXPORT_MINIMAL_DIR)/64/%.diz: $(MINIMAL1_DIR)/%.diz |
|
483 $(install-file) |
|
484 endif |
414 endif |
485 endif |
415 |
486 |
416 # Jar file (sa-jdi.jar) |
487 # Jar file (sa-jdi.jar) |
417 $(EXPORT_LIB_DIR)/%.jar: $(GEN_DIR)/%.jar |
488 $(EXPORT_LIB_DIR)/%.jar: $(GEN_DIR)/%.jar |
418 $(install-file) |
489 $(install-file) |
572 @$(ECHO) "export_debug: Export debug files to EXPORT_PATH" |
644 @$(ECHO) "export_debug: Export debug files to EXPORT_PATH" |
573 @$(ECHO) "export_optimized: Export optimized files to EXPORT_PATH" |
645 @$(ECHO) "export_optimized: Export optimized files to EXPORT_PATH" |
574 @$(ECHO) "create_jdk: Create JDK image, export all files into it" |
646 @$(ECHO) "create_jdk: Create JDK image, export all files into it" |
575 @$(ECHO) "update_jdk: Update JDK image with fresh exported files" |
647 @$(ECHO) "update_jdk: Update JDK image with fresh exported files" |
576 @$(ECHO) " " |
648 @$(ECHO) " " |
577 @$(ECHO) "Others targets are:" |
649 @$(ECHO) "Other targets are:" |
578 @$(ECHO) " $(C1_VM_TARGETS)" |
650 @$(ECHO) " $(C1_VM_TARGETS)" |
579 @$(ECHO) " $(C2_VM_TARGETS)" |
651 @$(ECHO) " $(C2_VM_TARGETS)" |
580 @$(ECHO) " $(KERNEL_VM_TARGETS)" |
652 @$(ECHO) " $(KERNEL_VM_TARGETS)" |
|
653 @$(ECHO) " $(MINIMAL1_VM_TARGETS)" |
581 |
654 |
582 # Variable help (only common ones used by this workspace) |
655 # Variable help (only common ones used by this workspace) |
583 variable_help: variable_help_intro variable_list variable_help_end |
656 variable_help: variable_help_intro variable_list variable_help_end |
584 variable_help_intro: |
657 variable_help_intro: |
585 @$(ECHO) "--- Common Variables ---" |
658 @$(ECHO) "--- Common Variables ---" |
670 |
743 |
671 # JPRT rule to build this workspace |
744 # JPRT rule to build this workspace |
672 include $(GAMMADIR)/make/jprt.gmk |
745 include $(GAMMADIR)/make/jprt.gmk |
673 |
746 |
674 .PHONY: all world clobber clean help $(C1_VM_TARGETS) $(C2_VM_TARGETS) \ |
747 .PHONY: all world clobber clean help $(C1_VM_TARGETS) $(C2_VM_TARGETS) \ |
675 $(KERNEL_VM_TARGETS) \ |
748 $(KERNEL_VM_TARGETS) $(MINIMAL1_VM_TARGETS) \ |
676 generic_build1 generic_build2 generic_buildkernel generic_export \ |
749 generic_build1 generic_build2 generic_buildkernel generic_buildminimal1 generic_export \ |
677 export_product export_fastdebug export_debug export_optimized \ |
750 export_product export_fastdebug export_debug export_optimized \ |
678 export_jdk_product export_jdk_fastdebug export_jdk_debug \ |
751 export_jdk_product export_jdk_fastdebug export_jdk_debug \ |
679 create_jdk copy_jdk update_jdk test_jdk \ |
752 create_jdk copy_jdk update_jdk test_jdk \ |
680 copy_product_jdk copy_fastdebug_jdk copy_debug_jdk |
753 copy_product_jdk copy_fastdebug_jdk copy_debug_jdk \ |
|
754 $(HS_ALT_MAKE)/Makefile.make |