1.1 --- a/make/Makefile Mon Apr 23 11:03:30 2012 -0700 1.2 +++ b/make/Makefile Tue Apr 24 15:20:40 2012 -0700 1.3 @@ -136,31 +136,36 @@ 1.4 ifeq ($(OSNAME),windows) 1.5 @$(ECHO) "No docs ($(VM_TARGET)) for windows" 1.6 else 1.7 +# We specify 'BUILD_FLAVOR=product' so that the proper 1.8 +# ENABLE_FULL_DEBUG_SYMBOLS value is used. 1.9 $(CD) $(OUTPUTDIR); \ 1.10 $(MAKE) -f $(ABS_OS_MAKEFILE) \ 1.11 - $(MAKE_ARGS) docs 1.12 + $(MAKE_ARGS) BUILD_FLAVOR=product docs 1.13 endif 1.14 1.15 # Build variation of hotspot 1.16 $(C1_VM_TARGETS): 1.17 $(CD) $(GAMMADIR)/make; \ 1.18 - $(MAKE) VM_TARGET=$@ generic_build1 $(ALT_OUT) 1.19 + $(MAKE) BUILD_FLAVOR=$(@:%1=%) VM_TARGET=$@ generic_build1 $(ALT_OUT) 1.20 1.21 $(C2_VM_TARGETS): 1.22 $(CD) $(GAMMADIR)/make; \ 1.23 - $(MAKE) VM_TARGET=$@ generic_build2 $(ALT_OUT) 1.24 + $(MAKE) BUILD_FLAVOR=$@ VM_TARGET=$@ generic_build2 $(ALT_OUT) 1.25 1.26 $(KERNEL_VM_TARGETS): 1.27 $(CD) $(GAMMADIR)/make; \ 1.28 - $(MAKE) VM_TARGET=$@ generic_buildkernel $(ALT_OUT) 1.29 + $(MAKE) BUILD_FLAVOR=$(@:%kernel=%) VM_TARGET=$@ \ 1.30 + generic_buildkernel $(ALT_OUT) 1.31 1.32 $(ZERO_VM_TARGETS): 1.33 $(CD) $(GAMMADIR)/make; \ 1.34 - $(MAKE) VM_TARGET=$@ generic_buildzero $(ALT_OUT) 1.35 + $(MAKE) BUILD_FLAVOR=$(@:%zero=%) VM_TARGET=$@ \ 1.36 + generic_buildzero $(ALT_OUT) 1.37 1.38 $(SHARK_VM_TARGETS): 1.39 $(CD) $(GAMMADIR)/make; \ 1.40 - $(MAKE) VM_TARGET=$@ generic_buildshark $(ALT_OUT) 1.41 + $(MAKE) BUILD_FLAVOR=$(@:%shark=%) VM_TARGET=$@ \ 1.42 + generic_buildshark $(ALT_OUT) 1.43 1.44 # Build compiler1 (client) rule, different for platforms 1.45 generic_build1: 1.46 @@ -237,25 +242,37 @@ 1.47 # Export file rule 1.48 generic_export: $(EXPORT_LIST) 1.49 export_product: 1.50 - $(MAKE) VM_SUBDIR=product generic_export 1.51 + $(MAKE) BUILD_FLAVOR=$(@:export_%=%) VM_SUBDIR=$(@:export_%=%) \ 1.52 + generic_export 1.53 export_fastdebug: 1.54 - $(MAKE) VM_SUBDIR=fastdebug EXPORT_SUBDIR=/fastdebug generic_export 1.55 + $(MAKE) BUILD_FLAVOR=$(@:export_%=%) VM_SUBDIR=$(@:export_%=%) \ 1.56 + EXPORT_SUBDIR=/$(@:export_%=%) \ 1.57 + generic_export 1.58 export_debug: 1.59 - $(MAKE) VM_SUBDIR=${VM_DEBUG} EXPORT_SUBDIR=/debug generic_export 1.60 + $(MAKE) BUILD_FLAVOR=$(@:export_%=%) VM_SUBDIR=${VM_DEBUG} \ 1.61 + EXPORT_SUBDIR=/$(@:export_%=%) \ 1.62 + generic_export 1.63 export_optimized: 1.64 - $(MAKE) VM_SUBDIR=optimized EXPORT_SUBDIR=/optimized generic_export 1.65 + $(MAKE) BUILD_FLAVOR=$(@:export_%=%) VM_SUBDIR=$(@:export_%=%) \ 1.66 + EXPORT_SUBDIR=/$(@:export_%=%) \ 1.67 + generic_export 1.68 export_product_jdk:: 1.69 - $(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR) \ 1.70 - VM_SUBDIR=product generic_export 1.71 + $(MAKE) BUILD_FLAVOR=$(@:export_%_jdk=%) \ 1.72 + VM_SUBDIR=$(@:export_%_jdk=%) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR) \ 1.73 + generic_export 1.74 export_optimized_jdk:: 1.75 - $(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR) \ 1.76 - VM_SUBDIR=optimized generic_export 1.77 + $(MAKE) BUILD_FLAVOR=$(@:export_%_jdk=%) \ 1.78 + VM_SUBDIR=$(@:export_%_jdk=%) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR) \ 1.79 + generic_export 1.80 export_fastdebug_jdk:: 1.81 - $(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/fastdebug \ 1.82 - VM_SUBDIR=fastdebug generic_export 1.83 + $(MAKE) BUILD_FLAVOR=$(@:export_%_jdk=%) \ 1.84 + VM_SUBDIR=$(@:export_%_jdk=%) \ 1.85 + ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/$(@:export_%_jdk=%) \ 1.86 + generic_export 1.87 export_debug_jdk:: 1.88 - $(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/debug \ 1.89 - VM_SUBDIR=${VM_DEBUG} generic_export 1.90 + $(MAKE) BUILD_FLAVOR=$(@:export_%_jdk=%) VM_SUBDIR=${VM_DEBUG} \ 1.91 + ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/$(@:export_%_jdk=%) \ 1.92 + generic_export 1.93 1.94 # Export file copy rules 1.95 XUSAGE=$(HS_SRC_DIR)/share/vm/Xusage.txt 1.96 @@ -300,6 +317,8 @@ 1.97 $(install-file) 1.98 1.99 # Other libraries (like SA) 1.100 +$(EXPORT_JRE_BIN_DIR)/%.diz: $(MISC_DIR)/%.diz 1.101 + $(install-file) 1.102 $(EXPORT_JRE_BIN_DIR)/%.dll: $(MISC_DIR)/%.dll 1.103 $(install-file) 1.104 $(EXPORT_JRE_BIN_DIR)/%.pdb: $(MISC_DIR)/%.pdb 1.105 @@ -308,6 +327,8 @@ 1.106 $(install-file) 1.107 1.108 # Client files always come from C1 area 1.109 +$(EXPORT_CLIENT_DIR)/%.diz: $(C1_DIR)/%.diz 1.110 + $(install-file) 1.111 $(EXPORT_CLIENT_DIR)/%.dll: $(C1_DIR)/%.dll 1.112 $(install-file) 1.113 $(EXPORT_CLIENT_DIR)/%.pdb: $(C1_DIR)/%.pdb 1.114 @@ -316,6 +337,8 @@ 1.115 $(install-file) 1.116 1.117 # Server files always come from C2 area 1.118 +$(EXPORT_SERVER_DIR)/%.diz: $(C2_DIR)/%.diz 1.119 + $(install-file) 1.120 $(EXPORT_SERVER_DIR)/%.dll: $(C2_DIR)/%.dll 1.121 $(install-file) 1.122 $(EXPORT_SERVER_DIR)/%.pdb: $(C2_DIR)/%.pdb 1.123 @@ -324,6 +347,8 @@ 1.124 $(install-file) 1.125 1.126 # Kernel files always come from kernel area 1.127 +$(EXPORT_KERNEL_DIR)/%.diz: $(KERNEL_DIR)/%.diz 1.128 + $(install-file) 1.129 $(EXPORT_KERNEL_DIR)/%.dll: $(KERNEL_DIR)/%.dll 1.130 $(install-file) 1.131 $(EXPORT_KERNEL_DIR)/%.pdb: $(KERNEL_DIR)/%.pdb 1.132 @@ -347,6 +372,12 @@ 1.133 $(install-file) 1.134 $(EXPORT_SERVER_DIR)/64/%.debuginfo: $(C2_DIR)/%.debuginfo 1.135 $(install-file) 1.136 + $(EXPORT_JRE_LIB_ARCH_DIR)/%.diz: $(C2_DIR)/%.diz 1.137 + $(install-file) 1.138 + $(EXPORT_SERVER_DIR)/%.diz: $(C2_DIR)/%.diz 1.139 + $(install-file) 1.140 + $(EXPORT_SERVER_DIR)/64/%.diz: $(C2_DIR)/%.diz 1.141 + $(install-file) 1.142 endif 1.143 ifeq ($(JVM_VARIANT_CLIENT), true) 1.144 $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C1_DIR)/%.$(LIBRARY_SUFFIX) 1.145 @@ -361,6 +392,12 @@ 1.146 $(install-file) 1.147 $(EXPORT_CLIENT_DIR)/64/%.debuginfo: $(C1_DIR)/%.debuginfo 1.148 $(install-file) 1.149 + $(EXPORT_JRE_LIB_ARCH_DIR)/%.diz: $(C1_DIR)/%.diz 1.150 + $(install-file) 1.151 + $(EXPORT_CLIENT_DIR)/%.diz: $(C1_DIR)/%.diz 1.152 + $(install-file) 1.153 + $(EXPORT_CLIENT_DIR)/64/%.diz: $(C1_DIR)/%.diz 1.154 + $(install-file) 1.155 endif 1.156 ifeq ($(JVM_VARIANT_ZEROSHARK), true) 1.157 $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_DIR)/%.$(LIBRARY_SUFFIX)