comparison make/Makefile @ 7066:7d815d842ee0

Merge.
author Christian Haeubl <haeubl@ssw.jku.at>
date Fri, 23 Nov 2012 11:50:27 +0100
parents e522a00b91aa
children 5fc51c1ecdeb
comparison
equal deleted inserted replaced
7065:cfacf5d5bade 7066:7d815d842ee0
74 include defs.make 74 include defs.make
75 endif 75 endif
76 76
77 include $(GAMMADIR)/make/altsrc.make 77 include $(GAMMADIR)/make/altsrc.make
78 78
79 -include $(HS_ALT_MAKE)/Makefile.make
80
79 ifneq ($(ALT_OUTPUTDIR),) 81 ifneq ($(ALT_OUTPUTDIR),)
80 ALT_OUT=ALT_OUTPUTDIR=$(ALT_OUTPUTDIR) 82 ALT_OUT=ALT_OUTPUTDIR=$(ALT_OUTPUTDIR)
81 else 83 else
82 ALT_OUT= 84 ALT_OUT=
83 endif 85 endif
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
93 MINIMAL1_VM_TARGETS=productminimal1 fastdebugminimal1 jvmgminimal1
91 GRAAL_VM_TARGETS=productgraal fastdebuggraal optimizedgraal jvmggraal 94 GRAAL_VM_TARGETS=productgraal fastdebuggraal optimizedgraal jvmggraal
92 95
93 COMMON_VM_PRODUCT_TARGETS=product product1 productkernel docs export_product 96 COMMON_VM_PRODUCT_TARGETS=product product1 docs export_product
94 COMMON_VM_FASTDEBUG_TARGETS=fastdebug fastdebug1 fastdebugkernel docs export_fastdebug 97 COMMON_VM_FASTDEBUG_TARGETS=fastdebug fastdebug1 docs export_fastdebug
95 COMMON_VM_DEBUG_TARGETS=jvmg jvmg1 jvmgkernel docs export_debug 98 COMMON_VM_DEBUG_TARGETS=jvmg jvmg1 docs export_debug
96 99
97 # JDK directory list 100 # JDK directory list
98 JDK_DIRS=bin include jre lib demo 101 JDK_DIRS=bin include jre lib demo
99 102
100 all: all_product all_fastdebug 103 all: all_product all_fastdebug
104
105 ifeq ($(JVM_VARIANT_MINIMAL1),true)
106 all_product: productminimal1
107 all_fastdebug: fastdebugminimal1
108 all_debug: jvmgminimal1
109 endif
101 110
102 ifdef BUILD_CLIENT_ONLY 111 ifdef BUILD_CLIENT_ONLY
103 all_product: product1 docs export_product 112 all_product: product1 docs export_product
104 all_fastdebug: fastdebug1 docs export_fastdebug 113 all_fastdebug: fastdebug1 docs export_fastdebug
105 all_debug: jvmg1 docs export_debug 114 all_debug: jvmg1 docs export_debug
113 all_fastdebug: $(COMMON_VM_FASTDEBUG_TARGETS) 122 all_fastdebug: $(COMMON_VM_FASTDEBUG_TARGETS)
114 all_debug: $(COMMON_VM_DEBUG_TARGETS) 123 all_debug: $(COMMON_VM_DEBUG_TARGETS)
115 endif 124 endif
116 endif 125 endif
117 126
118 all_optimized: optimized optimized1 optimizedkernel docs export_optimized 127 all_optimized: optimized optimized1 docs export_optimized
119 128
120 allzero: all_productzero all_fastdebugzero 129 allzero: all_productzero all_fastdebugzero
121 all_productzero: productzero docs export_product 130 all_productzero: productzero docs export_product
122 all_fastdebugzero: fastdebugzero docs export_fastdebug 131 all_fastdebugzero: fastdebugzero docs export_fastdebug
123 all_debugzero: jvmgzero docs export_debug 132 all_debugzero: jvmgzero docs export_debug
171 180
172 $(SHARK_VM_TARGETS): 181 $(SHARK_VM_TARGETS):
173 $(CD) $(GAMMADIR)/make; \ 182 $(CD) $(GAMMADIR)/make; \
174 $(MAKE) BUILD_FLAVOR=$(@:%shark=%) VM_TARGET=$@ \ 183 $(MAKE) BUILD_FLAVOR=$(@:%shark=%) VM_TARGET=$@ \
175 generic_buildshark $(ALT_OUT) 184 generic_buildshark $(ALT_OUT)
185
186 $(MINIMAL1_VM_TARGETS):
187 $(CD) $(GAMMADIR)/make; \
188 $(MAKE) BUILD_FLAVOR=$(@:%minimal1=%) VM_TARGET=$@ \
189 generic_buildminimal1 $(ALT_OUT)
176 190
177 $(GRAAL_VM_TARGETS): 191 $(GRAAL_VM_TARGETS):
178 $(CD) $(GAMMADIR)/make; \ 192 $(CD) $(GAMMADIR)/make; \
179 $(MAKE) VM_TARGET=$@ generic_buildgraal $(ALT_OUT) 193 $(MAKE) VM_TARGET=$@ generic_buildgraal $(ALT_OUT)
180 194
243 generic_buildshark: 257 generic_buildshark:
244 $(MKDIR) -p $(OUTPUTDIR) 258 $(MKDIR) -p $(OUTPUTDIR)
245 $(CD) $(OUTPUTDIR); \ 259 $(CD) $(OUTPUTDIR); \
246 $(MAKE) -f $(ABS_OS_MAKEFILE) \ 260 $(MAKE) -f $(ABS_OS_MAKEFILE) \
247 $(MAKE_ARGS) $(VM_TARGET) 261 $(MAKE_ARGS) $(VM_TARGET)
262
263 generic_buildminimal1:
264 ifeq ($(JVM_VARIANT_MINIMAL1),true)
265 $(MKDIR) -p $(OUTPUTDIR)
266 ifeq ($(ARCH_DATA_MODEL), 32)
267 ifeq ($(OSNAME),windows)
268 $(ECHO) "No ($(VM_TARGET)) for $(OSNAME) ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)" ;
269 else
270 ifeq ($(OSNAME),solaris)
271 $(ECHO) "No ($(VM_TARGET)) for $(OSNAME) ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)" ;
272 else
273 $(CD) $(OUTPUTDIR); \
274 $(MAKE) -f $(ABS_OS_MAKEFILE) $(MAKE_ARGS) $(VM_TARGET) ;
275 endif
276 endif
277 else
278 @$(ECHO) "No ($(VM_TARGET)) for $(OSNAME) ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)"
279 endif
280 else
281 @$(ECHO) "Error: trying to build a minimal target but JVM_VARIANT_MINIMAL1 is not true."
282 endif
248 283
249 generic_buildgraal: 284 generic_buildgraal:
250 $(MKDIR) -p $(OUTPUTDIR) 285 $(MKDIR) -p $(OUTPUTDIR)
251 $(CD) $(OUTPUTDIR); \ 286 $(CD) $(OUTPUTDIR); \
252 $(MAKE) -f $(ABS_OS_MAKEFILE) \ 287 $(MAKE) -f $(ABS_OS_MAKEFILE) \
299 C1_DIR=$(C1_BASE_DIR)/$(VM_SUBDIR) 334 C1_DIR=$(C1_BASE_DIR)/$(VM_SUBDIR)
300 C2_DIR=$(C2_BASE_DIR)/$(VM_SUBDIR) 335 C2_DIR=$(C2_BASE_DIR)/$(VM_SUBDIR)
301 KERNEL_DIR=$(KERNEL_BASE_DIR)/$(VM_SUBDIR) 336 KERNEL_DIR=$(KERNEL_BASE_DIR)/$(VM_SUBDIR)
302 ZERO_DIR=$(ZERO_BASE_DIR)/$(VM_SUBDIR) 337 ZERO_DIR=$(ZERO_BASE_DIR)/$(VM_SUBDIR)
303 SHARK_DIR=$(SHARK_BASE_DIR)/$(VM_SUBDIR) 338 SHARK_DIR=$(SHARK_BASE_DIR)/$(VM_SUBDIR)
339 MINIMAL1_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_minimal1
340 MINIMAL1_DIR=$(MINIMAL1_BASE_DIR)/$(VM_SUBDIR)
304 GRAAL_DIR=$(GRAAL_BASE_DIR)/$(VM_SUBDIR) 341 GRAAL_DIR=$(GRAAL_BASE_DIR)/$(VM_SUBDIR)
305 342
306 ifeq ($(JVM_VARIANT_SERVER), true) 343 ifeq ($(JVM_VARIANT_SERVER), true)
307 MISC_DIR=$(C2_DIR) 344 MISC_DIR=$(C2_DIR)
308 GEN_DIR=$(C2_BASE_DIR)/generated 345 GEN_DIR=$(C2_BASE_DIR)/generated
321 endif 358 endif
322 ifeq ($(JVM_VARIANT_ZERO), true) 359 ifeq ($(JVM_VARIANT_ZERO), true)
323 MISC_DIR=$(ZERO_DIR) 360 MISC_DIR=$(ZERO_DIR)
324 GEN_DIR=$(ZERO_BASE_DIR)/generated 361 GEN_DIR=$(ZERO_BASE_DIR)/generated
325 endif 362 endif
363 ifeq ($(JVM_VARIANT_MINIMAL1), true)
364 MISC_DIR=$(MINIMAL1_DIR)
365 GEN_DIR=$(MINIMAL1_BASE_DIR)/generated
366 endif
326 367
327 # Bin files (windows) 368 # Bin files (windows)
328 ifeq ($(OSNAME),windows) 369 ifeq ($(OSNAME),windows)
329 370
330 # Get jvm.lib 371 # Get jvm.lib
369 $(EXPORT_KERNEL_DIR)/%.pdb: $(KERNEL_DIR)/%.pdb 410 $(EXPORT_KERNEL_DIR)/%.pdb: $(KERNEL_DIR)/%.pdb
370 $(install-file) 411 $(install-file)
371 $(EXPORT_KERNEL_DIR)/%.map: $(KERNEL_DIR)/%.map 412 $(EXPORT_KERNEL_DIR)/%.map: $(KERNEL_DIR)/%.map
372 $(install-file) 413 $(install-file)
373 endif 414 endif
415
416 # Minimal JVM files always come from minimal area
417 $(EXPORT_MINIMAL_DIR)/%.diz: $(MINIMAL1_DIR)/%.diz
418 $(install-file)
419 $(EXPORT_MINIMAL_DIR)/%.dll: $(MINIMAL1_DIR)/%.dll
420 $(install-file)
421 $(EXPORT_MINIMAL_DIR)/%.pdb: $(MINIMAL1_DIR)/%.pdb
422 $(install-file)
423 $(EXPORT_MINIMAL_DIR)/%.map: $(MINIMAL1_DIR)/%.map
424 $(install-file)
374 425
375 # Shared Library 426 # Shared Library
376 ifneq ($(OSNAME),windows) 427 ifneq ($(OSNAME),windows)
377 ifeq ($(JVM_VARIANT_SERVER), true) 428 ifeq ($(JVM_VARIANT_SERVER), true)
378 $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX) 429 $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX)
415 $(install-file) 466 $(install-file)
416 endif 467 endif
417 ifeq ($(JVM_VARIANT_ZEROSHARK), true) 468 ifeq ($(JVM_VARIANT_ZEROSHARK), true)
418 $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_DIR)/%.$(LIBRARY_SUFFIX) 469 $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_DIR)/%.$(LIBRARY_SUFFIX)
419 $(install-file) 470 $(install-file)
471 $(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo): $(SHARK_DIR)/%.debuginfo
472 $(install-file)
473 $(EXPORT_JRE_LIB_ARCH_DIR)/%.diz: $(SHARK_DIR)/%.diz
474 $(install-file)
420 $(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_DIR)/%.$(LIBRARY_SUFFIX) 475 $(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_DIR)/%.$(LIBRARY_SUFFIX)
476 $(install-file)
477 $(EXPORT_SERVER_DIR)/%.debuginfo: $(SHARK_DIR)/%.debuginfo
478 $(install-file)
479 $(EXPORT_SERVER_DIR)/%.diz: $(SHARK_DIR)/%.diz
421 $(install-file) 480 $(install-file)
422 endif 481 endif
423 ifeq ($(JVM_VARIANT_ZERO), true) 482 ifeq ($(JVM_VARIANT_ZERO), true)
424 $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX) 483 $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX)
425 $(install-file) 484 $(install-file)
485 $(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo: $(ZERO_DIR)/%.debuginfo
486 $(install-file)
487 $(EXPORT_JRE_LIB_ARCH_DIR)/%.diz: $(ZERO_DIR)/%.diz
488 $(install-file)
426 $(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX) 489 $(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX)
490 $(install-file)
491 $(EXPORT_SERVER_DIR)/%.debuginfo: $(ZERO_DIR)/%.debuginfo
492 $(install-file)
493 $(EXPORT_SERVER_DIR)/%.diz: $(ZERO_DIR)/%.diz
494 $(install-file)
495 endif
496 ifeq ($(JVM_VARIANT_MINIMAL1), true)
497 $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(MINIMAL1_DIR)/%.$(LIBRARY_SUFFIX)
498 $(install-file)
499 $(EXPORT_MINIMAL_DIR)/%.$(LIBRARY_SUFFIX): $(MINIMAL1_DIR)/%.$(LIBRARY_SUFFIX)
500 $(install-file)
501 $(EXPORT_MINIMAL_DIR)/64/%.$(LIBRARY_SUFFIX): $(MINIMAL1_DIR)/%.$(LIBRARY_SUFFIX)
502 $(install-file)
503 $(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo: $(MINIMAL1_DIR)/%.debuginfo
504 $(install-file)
505 $(EXPORT_MINIMAL_DIR)/%.debuginfo: $(MINIMAL1_DIR)/%.debuginfo
506 $(install-file)
507 $(EXPORT_MINIMAL_DIR)/64/%.debuginfo: $(MINIMAL1_DIR)/%.debuginfo
508 $(install-file)
509 $(EXPORT_JRE_LIB_ARCH_DIR)/%.diz: $(MINIMAL1_DIR)/%.diz
510 $(install-file)
511 $(EXPORT_MINIMAL_DIR)/%.diz: $(MINIMAL1_DIR)/%.diz
512 $(install-file)
513 $(EXPORT_MINIMAL_DIR)/64/%.diz: $(MINIMAL1_DIR)/%.diz
427 $(install-file) 514 $(install-file)
428 endif 515 endif
429 endif 516 endif
430 517
431 # Jar file (sa-jdi.jar) 518 # Jar file (sa-jdi.jar)
464 # Doc files (jvmti.html) 551 # Doc files (jvmti.html)
465 $(EXPORT_DOCS_DIR)/platform/jvmti/%: $(DOCS_DIR)/% 552 $(EXPORT_DOCS_DIR)/platform/jvmti/%: $(DOCS_DIR)/%
466 $(install-file) 553 $(install-file)
467 554
468 # Xusage file 555 # Xusage file
469 $(EXPORT_SERVER_DIR)/Xusage.txt $(EXPORT_CLIENT_DIR)/Xusage.txt $(EXPORT_KERNEL_DIR)/Xusage.txt: $(XUSAGE) 556 $(EXPORT_SERVER_DIR)/Xusage.txt $(EXPORT_CLIENT_DIR)/Xusage.txt $(EXPORT_KERNEL_DIR)/Xusage.txt $(EXPORT_MINIMAL_DIR)/Xusage.txt: $(XUSAGE)
470 $(prep-target) 557 $(prep-target)
471 $(RM) $@.temp 558 $(RM) $@.temp
472 $(SED) 's/\(separated by \)[;:]/\1$(PATH_SEP)/g' $< > $@.temp 559 $(SED) 's/\(separated by \)[;:]/\1$(PATH_SEP)/g' $< > $@.temp
473 $(MV) $@.temp $@ 560 $(MV) $@.temp $@
474 561
480 $(RM) -r $(C1_DIR) 567 $(RM) -r $(C1_DIR)
481 $(RM) -r $(C2_DIR) 568 $(RM) -r $(C2_DIR)
482 $(RM) -r $(KERNEL_DIR) 569 $(RM) -r $(KERNEL_DIR)
483 $(RM) -r $(ZERO_DIR) 570 $(RM) -r $(ZERO_DIR)
484 $(RM) -r $(SHARK_DIR) 571 $(RM) -r $(SHARK_DIR)
572 $(RM) -r $(MINIMAL1_DIR)
485 $(RM) -r $(GRAAL_DIR) 573 $(RM) -r $(GRAAL_DIR)
486 clean_export: 574 clean_export:
487 $(RM) -r $(EXPORT_PATH) 575 $(RM) -r $(EXPORT_PATH)
488 clean_jdk: 576 clean_jdk:
489 $(RM) -r $(JDK_IMAGE_DIR) 577 $(RM) -r $(JDK_IMAGE_DIR)
588 @$(ECHO) "export_debug: Export debug files to EXPORT_PATH" 676 @$(ECHO) "export_debug: Export debug files to EXPORT_PATH"
589 @$(ECHO) "export_optimized: Export optimized files to EXPORT_PATH" 677 @$(ECHO) "export_optimized: Export optimized files to EXPORT_PATH"
590 @$(ECHO) "create_jdk: Create JDK image, export all files into it" 678 @$(ECHO) "create_jdk: Create JDK image, export all files into it"
591 @$(ECHO) "update_jdk: Update JDK image with fresh exported files" 679 @$(ECHO) "update_jdk: Update JDK image with fresh exported files"
592 @$(ECHO) " " 680 @$(ECHO) " "
593 @$(ECHO) "Others targets are:" 681 @$(ECHO) "Other targets are:"
594 @$(ECHO) " $(C1_VM_TARGETS)" 682 @$(ECHO) " $(C1_VM_TARGETS)"
595 @$(ECHO) " $(C2_VM_TARGETS)" 683 @$(ECHO) " $(C2_VM_TARGETS)"
596 @$(ECHO) " $(KERNEL_VM_TARGETS)" 684 @$(ECHO) " $(KERNEL_VM_TARGETS)"
685 @$(ECHO) " $(MINIMAL1_VM_TARGETS)"
597 686
598 # Variable help (only common ones used by this workspace) 687 # Variable help (only common ones used by this workspace)
599 variable_help: variable_help_intro variable_list variable_help_end 688 variable_help: variable_help_intro variable_list variable_help_end
600 variable_help_intro: 689 variable_help_intro:
601 @$(ECHO) "--- Common Variables ---" 690 @$(ECHO) "--- Common Variables ---"
686 775
687 # JPRT rule to build this workspace 776 # JPRT rule to build this workspace
688 include $(GAMMADIR)/make/jprt.gmk 777 include $(GAMMADIR)/make/jprt.gmk
689 778
690 .PHONY: all world clobber clean help $(C1_VM_TARGETS) $(C2_VM_TARGETS) \ 779 .PHONY: all world clobber clean help $(C1_VM_TARGETS) $(C2_VM_TARGETS) \
691 $(KERNEL_VM_TARGETS) \ 780 $(KERNEL_VM_TARGETS) $(MINIMAL1_VM_TARGETS) \
692 generic_build1 generic_build2 generic_buildkernel generic_export \ 781 generic_build1 generic_build2 generic_buildkernel generic_buildminimal1 generic_export \
693 export_product export_fastdebug export_debug export_optimized \ 782 export_product export_fastdebug export_debug export_optimized \
694 export_jdk_product export_jdk_fastdebug export_jdk_debug \ 783 export_jdk_product export_jdk_fastdebug export_jdk_debug \
695 create_jdk copy_jdk update_jdk test_jdk \ 784 create_jdk copy_jdk update_jdk test_jdk \
696 copy_product_jdk copy_fastdebug_jdk copy_debug_jdk 785 copy_product_jdk copy_fastdebug_jdk copy_debug_jdk \
786 $(HS_ALT_MAKE)/Makefile.make