1 # |
1 # |
2 # Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved. |
2 # Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved. |
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 # |
4 # |
5 # This code is free software; you can redistribute it and/or modify it |
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 |
6 # under the terms of the GNU General Public License version 2 only, as |
7 # published by the Free Software Foundation. |
7 # published by the Free Software Foundation. |
173 # jvmgshark shark <os>_<arch>_shark/jvmg |
173 # jvmgshark shark <os>_<arch>_shark/jvmg |
174 # optimizedshark shark <os>_<arch>_shark/optimized |
174 # optimizedshark shark <os>_<arch>_shark/optimized |
175 # profiledshark shark <os>_<arch>_shark/profiled |
175 # profiledshark shark <os>_<arch>_shark/profiled |
176 # productshark shark <os>_<arch>_shark/product |
176 # productshark shark <os>_<arch>_shark/product |
177 # |
177 # |
|
178 # fastdebugminimal1 minimal1 <os>_<arch>_minimal1/fastdebug |
|
179 # jvmgminimal1 minimal1 <os>_<arch>_minimal1/jvmg |
|
180 # productminimal1 minimal1 <os>_<arch>_minimal1/product |
|
181 # |
178 # What you get with each target: |
182 # What you get with each target: |
179 # |
183 # |
180 # debug* - "thin" libjvm_g - debug info linked into the gamma_g launcher |
184 # debug* - "thin" libjvm_g - debug info linked into the gamma_g launcher |
181 # fastdebug* - optimized compile, but with asserts enabled |
185 # fastdebug* - optimized compile, but with asserts enabled |
182 # jvmg* - "fat" libjvm_g - debug info linked into libjvm_g.so |
186 # jvmg* - "fat" libjvm_g - debug info linked into libjvm_g.so |
197 SUBDIRS_C2 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler2/,$(TARGETS)) |
201 SUBDIRS_C2 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler2/,$(TARGETS)) |
198 SUBDIRS_TIERED = $(addprefix $(OSNAME)_$(BUILDARCH)_tiered/,$(TARGETS)) |
202 SUBDIRS_TIERED = $(addprefix $(OSNAME)_$(BUILDARCH)_tiered/,$(TARGETS)) |
199 SUBDIRS_CORE = $(addprefix $(OSNAME)_$(BUILDARCH)_core/,$(TARGETS)) |
203 SUBDIRS_CORE = $(addprefix $(OSNAME)_$(BUILDARCH)_core/,$(TARGETS)) |
200 SUBDIRS_ZERO = $(addprefix $(OSNAME)_$(VARIANTARCH)_zero/,$(TARGETS)) |
204 SUBDIRS_ZERO = $(addprefix $(OSNAME)_$(VARIANTARCH)_zero/,$(TARGETS)) |
201 SUBDIRS_SHARK = $(addprefix $(OSNAME)_$(VARIANTARCH)_shark/,$(TARGETS)) |
205 SUBDIRS_SHARK = $(addprefix $(OSNAME)_$(VARIANTARCH)_shark/,$(TARGETS)) |
|
206 SUBDIRS_MINIMAL1 = $(addprefix $(OSNAME)_$(BUILDARCH)_minimal1/,$(TARGETS)) |
202 |
207 |
203 TARGETS_C2 = $(TARGETS) |
208 TARGETS_C2 = $(TARGETS) |
204 TARGETS_C1 = $(addsuffix 1,$(TARGETS)) |
209 TARGETS_C1 = $(addsuffix 1,$(TARGETS)) |
205 TARGETS_TIERED = $(addsuffix tiered,$(TARGETS)) |
210 TARGETS_TIERED = $(addsuffix tiered,$(TARGETS)) |
206 TARGETS_CORE = $(addsuffix core,$(TARGETS)) |
211 TARGETS_CORE = $(addsuffix core,$(TARGETS)) |
207 TARGETS_ZERO = $(addsuffix zero,$(TARGETS)) |
212 TARGETS_ZERO = $(addsuffix zero,$(TARGETS)) |
208 TARGETS_SHARK = $(addsuffix shark,$(TARGETS)) |
213 TARGETS_SHARK = $(addsuffix shark,$(TARGETS)) |
|
214 TARGETS_MINIMAL1 = $(addsuffix minimal1,$(TARGETS)) |
209 |
215 |
210 BUILDTREE_MAKE = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make |
216 BUILDTREE_MAKE = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make |
211 BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) LIBRARY_SUFFIX=$(LIBRARY_SUFFIX) |
217 BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) LIBRARY_SUFFIX=$(LIBRARY_SUFFIX) |
212 BUILDTREE_VARS += HOTSPOT_RELEASE_VERSION=$(HOTSPOT_RELEASE_VERSION) HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION) JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION) |
218 BUILDTREE_VARS += HOTSPOT_RELEASE_VERSION=$(HOTSPOT_RELEASE_VERSION) HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION) JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION) |
213 |
219 |
221 @echo " $(TARGETS_C2)" |
227 @echo " $(TARGETS_C2)" |
222 @echo " $(TARGETS_C1)" |
228 @echo " $(TARGETS_C1)" |
223 @echo " $(TARGETS_CORE)" |
229 @echo " $(TARGETS_CORE)" |
224 @echo " $(TARGETS_ZERO)" |
230 @echo " $(TARGETS_ZERO)" |
225 @echo " $(TARGETS_SHARK)" |
231 @echo " $(TARGETS_SHARK)" |
|
232 @echo " $(TARGETS_MINIMAL1)" |
226 |
233 |
227 checks: check_os_version check_j2se_version |
234 checks: check_os_version check_j2se_version |
228 |
235 |
229 # We do not want people accidentally building on old systems (e.g. Linux 2.2.x, |
236 # We do not want people accidentally building on old systems (e.g. Linux 2.2.x, |
230 # Solaris 2.5.1, 2.6). |
237 # Solaris 2.5.1, 2.6). |
279 |
286 |
280 $(SUBDIRS_SHARK): $(BUILDTREE_MAKE) platform_zero |
287 $(SUBDIRS_SHARK): $(BUILDTREE_MAKE) platform_zero |
281 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks |
288 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks |
282 $(BUILDTREE) VARIANT=shark VARIANTARCH=$(VARIANTARCH) |
289 $(BUILDTREE) VARIANT=shark VARIANTARCH=$(VARIANTARCH) |
283 |
290 |
|
291 $(SUBDIRS_MINIMAL1): $(BUILDTREE_MAKE) |
|
292 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks |
|
293 $(BUILDTREE) VARIANT=minimal1 |
|
294 |
284 platform_zero: $(GAMMADIR)/make/$(OSNAME)/platform_zero.in |
295 platform_zero: $(GAMMADIR)/make/$(OSNAME)/platform_zero.in |
285 $(SED) 's/@ZERO_ARCHDEF@/$(ZERO_ARCHDEF)/g;s/@ZERO_LIBARCH@/$(ZERO_LIBARCH)/g;' < $< > $@ |
296 $(SED) 's/@ZERO_ARCHDEF@/$(ZERO_ARCHDEF)/g;s/@ZERO_LIBARCH@/$(ZERO_LIBARCH)/g;' < $< > $@ |
286 |
297 |
287 # Define INSTALL=y at command line to automatically copy JVM into JAVA_HOME |
298 # Define INSTALL=y at command line to automatically copy JVM into JAVA_HOME |
288 |
299 |
336 ifeq ($(TEST_IN_BUILD),true) |
347 ifeq ($(TEST_IN_BUILD),true) |
337 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && ./test_gamma |
348 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && ./test_gamma |
338 endif |
349 endif |
339 ifdef INSTALL |
350 ifdef INSTALL |
340 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS) install |
351 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS) install |
|
352 endif |
|
353 |
|
354 $(TARGETS_MINIMAL1): $(SUBDIRS_MINIMAL1) |
|
355 cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && $(MAKE) $(MFLAGS) |
|
356 ifeq ($(TEST_IN_BUILD),true) |
|
357 cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && ./test_gamma |
|
358 endif |
|
359 ifdef INSTALL |
|
360 cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && $(MAKE) $(MFLAGS) install |
341 endif |
361 endif |
342 |
362 |
343 # Just build the tree, and nothing else: |
363 # Just build the tree, and nothing else: |
344 tree: $(SUBDIRS_C2) |
364 tree: $(SUBDIRS_C2) |
345 tree1: $(SUBDIRS_C1) |
365 tree1: $(SUBDIRS_C1) |
346 treecore: $(SUBDIRS_CORE) |
366 treecore: $(SUBDIRS_CORE) |
347 treezero: $(SUBDIRS_ZERO) |
367 treezero: $(SUBDIRS_ZERO) |
348 treeshark: $(SUBDIRS_SHARK) |
368 treeshark: $(SUBDIRS_SHARK) |
|
369 treeminimal1: $(SUBDIRS_MINIMAL1) |
349 |
370 |
350 # Doc target. This is the same for all build options. |
371 # Doc target. This is the same for all build options. |
351 # Hence create a docs directory beside ...$(ARCH)_[...] |
372 # Hence create a docs directory beside ...$(ARCH)_[...] |
352 docs: checks |
373 docs: checks |
353 $(QUIETLY) mkdir -p $(SUBDIR_DOCS) |
374 $(QUIETLY) mkdir -p $(SUBDIR_DOCS) |
365 shark: jvmgshark productshark |
386 shark: jvmgshark productshark |
366 |
387 |
367 clean_docs: |
388 clean_docs: |
368 rm -rf $(SUBDIR_DOCS) |
389 rm -rf $(SUBDIR_DOCS) |
369 |
390 |
370 clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark: |
391 clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark clean_minimal1: |
371 rm -rf $(OSNAME)_$(BUILDARCH)_$(subst clean_,,$@) |
392 rm -rf $(OSNAME)_$(BUILDARCH)_$(subst clean_,,$@) |
372 |
393 |
373 clean: clean_compiler2 clean_compiler1 clean_core clean_zero clean_shark clean_docs |
394 clean: clean_compiler2 clean_compiler1 clean_core clean_zero clean_shark clean_minimal1 clean_docs |
374 |
395 |
375 include $(GAMMADIR)/make/cscope.make |
396 include $(GAMMADIR)/make/cscope.make |
376 |
397 |
|
398 # |
|
399 # Include alternate Makefile if it exists. |
|
400 # |
|
401 -include $(HS_ALT_MAKE)/$(OSNAME)/Makefile.make |
|
402 |
377 #------------------------------------------------------------------------------- |
403 #------------------------------------------------------------------------------- |
378 |
404 |
379 .PHONY: $(TARGETS_C2) $(TARGETS_C1) $(TARGETS_CORE) $(TARGETS_ZERO) $(TARGETS_SHARK) |
405 .PHONY: $(TARGETS_C2) $(TARGETS_C1) $(TARGETS_CORE) $(TARGETS_ZERO) $(TARGETS_SHARK) $(TARGETS_MINIMAL1) |
380 .PHONY: tree tree1 treecore treezero treeshark |
406 .PHONY: tree tree1 treecore treezero treeshark |
381 .PHONY: all compiler1 compiler2 core zero shark |
407 .PHONY: all compiler1 compiler2 core zero shark |
382 .PHONY: clean clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark docs clean_docs |
408 .PHONY: clean clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark docs clean_docs |
383 .PHONY: checks check_os_version check_j2se_version |
409 .PHONY: checks check_os_version check_j2se_version |
|
410 .PHONY: $(HS_ALT_MAKE)/$(OSNAME)/Makefile.make |