comparison make/Makefile @ 1010:354d3184f6b2

6890308: integrate zero assembler hotspot changes Reviewed-by: never Contributed-by: gbenson@redhat.com
author never
date Tue, 13 Oct 2009 12:04:21 -0700
parents d1605aabd0a1
children 3908ad124838
comparison
equal deleted inserted replaced
1009:03b336640699 1010:354d3184f6b2
82 82
83 # Typical C1/C2 targets made available with this Makefile 83 # Typical C1/C2 targets made available with this Makefile
84 C1_VM_TARGETS=product1 fastdebug1 optimized1 jvmg1 84 C1_VM_TARGETS=product1 fastdebug1 optimized1 jvmg1
85 C2_VM_TARGETS=product fastdebug optimized jvmg 85 C2_VM_TARGETS=product fastdebug optimized jvmg
86 KERNEL_VM_TARGETS=productkernel fastdebugkernel optimizedkernel jvmgkernel 86 KERNEL_VM_TARGETS=productkernel fastdebugkernel optimizedkernel jvmgkernel
87 ZERO_VM_TARGETS=productzero fastdebugzero optimizedzero jvmgzero
87 88
88 # JDK directory list 89 # JDK directory list
89 JDK_DIRS=bin include jre lib demo 90 JDK_DIRS=bin include jre lib demo
90 91
91 all: all_product all_fastdebug 92 all: all_product all_fastdebug
92 all_product: product product1 productkernel docs export_product 93 all_product: product product1 productkernel docs export_product
93 all_fastdebug: fastdebug fastdebug1 fastdebugkernel docs export_fastdebug 94 all_fastdebug: fastdebug fastdebug1 fastdebugkernel docs export_fastdebug
94 all_debug: jvmg jvmg1 jvmgkernel docs export_debug 95 all_debug: jvmg jvmg1 jvmgkernel docs export_debug
95 all_optimized: optimized optimized1 optimizedkernel docs export_optimized 96 all_optimized: optimized optimized1 optimizedkernel docs export_optimized
96 97
98 allzero: all_productzero all_fastdebugzero
99 all_productzero: productzero docs export_product
100 all_fastdebugzero: fastdebugzero docs export_fastdebug
101 all_debugzero: jvmgzero docs export_debug
102 all_optimizedzero: optimizedzero docs export_optimized
103
97 # Do everything 104 # Do everything
98 world: all create_jdk 105 world: all create_jdk
99 106
100 # Build or export docs 107 # Build or export docs
101 docs: 108 docs:
117 $(MAKE) VM_TARGET=$@ generic_build2 $(ALT_OUT) 124 $(MAKE) VM_TARGET=$@ generic_build2 $(ALT_OUT)
118 125
119 $(KERNEL_VM_TARGETS): 126 $(KERNEL_VM_TARGETS):
120 $(CD) $(GAMMADIR)/make; \ 127 $(CD) $(GAMMADIR)/make; \
121 $(MAKE) VM_TARGET=$@ generic_buildkernel $(ALT_OUT) 128 $(MAKE) VM_TARGET=$@ generic_buildkernel $(ALT_OUT)
129
130 $(ZERO_VM_TARGETS):
131 $(CD) $(GAMMADIR)/make; \
132 $(MAKE) VM_TARGET=$@ generic_buildzero $(ALT_OUT)
122 133
123 # Build compiler1 (client) rule, different for platforms 134 # Build compiler1 (client) rule, different for platforms
124 generic_build1: 135 generic_build1:
125 $(MKDIR) -p $(OUTPUTDIR) 136 $(MKDIR) -p $(OUTPUTDIR)
126 ifeq ($(OSNAME),windows) 137 ifeq ($(OSNAME),windows)
177 @$(ECHO) "No kernel ($(VM_TARGET)) for ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)" 188 @$(ECHO) "No kernel ($(VM_TARGET)) for ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)"
178 endif 189 endif
179 else 190 else
180 @$(ECHO) "No kernel ($(VM_TARGET)) for OS_NAME=$(OSNAME)" 191 @$(ECHO) "No kernel ($(VM_TARGET)) for OS_NAME=$(OSNAME)"
181 endif 192 endif
193
194 generic_buildzero:
195 $(MKDIR) -p $(OUTPUTDIR)
196 $(CD) $(OUTPUTDIR); \
197 $(MAKE) -f $(ABS_OS_MAKEFILE) \
198 $(MAKE_ARGS) $(VM_TARGET)
182 199
183 # Export file rule 200 # Export file rule
184 generic_export: $(EXPORT_LIST) 201 generic_export: $(EXPORT_LIST)
185 export_product: 202 export_product:
186 $(MAKE) VM_SUBDIR=product generic_export 203 $(MAKE) VM_SUBDIR=product generic_export
208 XUSAGE=$(HS_SRC_DIR)/share/vm/Xusage.txt 225 XUSAGE=$(HS_SRC_DIR)/share/vm/Xusage.txt
209 DOCS_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_docs 226 DOCS_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_docs
210 C1_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_compiler1 227 C1_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_compiler1
211 C2_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_compiler2 228 C2_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_compiler2
212 KERNEL_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_kernel 229 KERNEL_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_kernel
230 ZERO_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_zero
213 C1_DIR=$(C1_BASE_DIR)/$(VM_SUBDIR) 231 C1_DIR=$(C1_BASE_DIR)/$(VM_SUBDIR)
214 C2_DIR=$(C2_BASE_DIR)/$(VM_SUBDIR) 232 C2_DIR=$(C2_BASE_DIR)/$(VM_SUBDIR)
215 KERNEL_DIR=$(KERNEL_BASE_DIR)/$(VM_SUBDIR) 233 KERNEL_DIR=$(KERNEL_BASE_DIR)/$(VM_SUBDIR)
234 ZERO_DIR=$(ZERO_BASE_DIR)/$(VM_SUBDIR)
216 235
217 # Misc files and generated files need to come from C1 or C2 area 236 # Misc files and generated files need to come from C1 or C2 area
237 ifeq ($(ZERO_BUILD), true)
238 MISC_DIR=$(ZERO_DIR)
239 GEN_DIR=$(ZERO_BASE_DIR)/generated
240 else
218 ifeq ($(ARCH_DATA_MODEL), 32) 241 ifeq ($(ARCH_DATA_MODEL), 32)
219 MISC_DIR=$(C1_DIR) 242 MISC_DIR=$(C1_DIR)
220 GEN_DIR=$(C1_BASE_DIR)/generated 243 GEN_DIR=$(C1_BASE_DIR)/generated
221 else 244 else
222 MISC_DIR=$(C2_DIR) 245 MISC_DIR=$(C2_DIR)
223 GEN_DIR=$(C2_BASE_DIR)/generated 246 GEN_DIR=$(C2_BASE_DIR)/generated
224 endif 247 endif
248 endif
225 249
226 # Bin files (windows) 250 # Bin files (windows)
227 ifeq ($(OSNAME),windows) 251 ifeq ($(OSNAME),windows)
228 252
229 # Get jvm.lib 253 # Get jvm.lib
263 $(install-file) 287 $(install-file)
264 endif 288 endif
265 289
266 # Shared Library 290 # Shared Library
267 ifneq ($(OSNAME),windows) 291 ifneq ($(OSNAME),windows)
292 ifeq ($(ZERO_BUILD), true)
293 $(EXPORT_JRE_LIB_ARCH_DIR)/%.so: $(ZERO_DIR)/%.so
294 $(install-file)
295 $(EXPORT_SERVER_DIR)/%.so: $(ZERO_DIR)/%.so
296 $(install-file)
297 else
268 $(EXPORT_JRE_LIB_ARCH_DIR)/%.so: $(C2_DIR)/%.so 298 $(EXPORT_JRE_LIB_ARCH_DIR)/%.so: $(C2_DIR)/%.so
269 $(install-file) 299 $(install-file)
270 $(EXPORT_CLIENT_DIR)/%.so: $(C1_DIR)/%.so 300 $(EXPORT_CLIENT_DIR)/%.so: $(C1_DIR)/%.so
271 $(install-file) 301 $(install-file)
272 $(EXPORT_CLIENT_DIR)/64/%.so: $(C1_DIR)/%.so 302 $(EXPORT_CLIENT_DIR)/64/%.so: $(C1_DIR)/%.so
273 $(install-file) 303 $(install-file)
274 $(EXPORT_SERVER_DIR)/%.so: $(C2_DIR)/%.so 304 $(EXPORT_SERVER_DIR)/%.so: $(C2_DIR)/%.so
275 $(install-file) 305 $(install-file)
276 $(EXPORT_SERVER_DIR)/64/%.so: $(C2_DIR)/%.so 306 $(EXPORT_SERVER_DIR)/64/%.so: $(C2_DIR)/%.so
277 $(install-file) 307 $(install-file)
308 endif
278 endif 309 endif
279 310
280 # Jar file (sa-jdi.jar) 311 # Jar file (sa-jdi.jar)
281 $(EXPORT_LIB_DIR)/%.jar: $(GEN_DIR)/%.jar 312 $(EXPORT_LIB_DIR)/%.jar: $(GEN_DIR)/%.jar
282 $(install-file) 313 $(install-file)
311 clobber clean: clean_build clean_export clean_jdk 342 clobber clean: clean_build clean_export clean_jdk
312 clean_build: 343 clean_build:
313 $(RM) -r $(C1_DIR) 344 $(RM) -r $(C1_DIR)
314 $(RM) -r $(C2_DIR) 345 $(RM) -r $(C2_DIR)
315 $(RM) -r $(KERNEL_DIR) 346 $(RM) -r $(KERNEL_DIR)
347 $(RM) -r $(ZERO_DIR)
316 clean_export: 348 clean_export:
317 $(RM) -r $(EXPORT_PATH) 349 $(RM) -r $(EXPORT_PATH)
318 clean_jdk: 350 clean_jdk:
319 $(RM) -r $(JDK_IMAGE_DIR) 351 $(RM) -r $(JDK_IMAGE_DIR)
320 352
333 ($(CD) $(JDK_IMPORT_PATH) && \ 365 ($(CD) $(JDK_IMPORT_PATH) && \
334 $(TAR) -cf - *) | \ 366 $(TAR) -cf - *) | \
335 ($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xf -) 367 ($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xf -)
336 368
337 test_jdk: 369 test_jdk:
338 ifeq ($(ARCH_DATA_MODEL), 32) 370 ifneq ($(ZERO_BUILD), true)
371 ifeq ($(ARCH_DATA_MODEL), 32)
339 $(JDK_IMAGE_DIR)/bin/java -client -version 372 $(JDK_IMAGE_DIR)/bin/java -client -version
373 endif
340 endif 374 endif
341 $(JDK_IMAGE_DIR)/bin/java -server -version 375 $(JDK_IMAGE_DIR)/bin/java -server -version
342 376
343 copy_product_jdk: 377 copy_product_jdk:
344 $(RM) -r $(JDK_IMAGE_DIR) 378 $(RM) -r $(JDK_IMAGE_DIR)