1 # |
1 # |
2 # Copyright (c) 1999, 2008, Oracle and/or its affiliates. All rights reserved. |
2 # Copyright (c) 1999, 2010, 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. |
166 # jvmgzero zero <os>_<arch>_zero/jvmg |
166 # jvmgzero zero <os>_<arch>_zero/jvmg |
167 # optimizedzero zero <os>_<arch>_zero/optimized |
167 # optimizedzero zero <os>_<arch>_zero/optimized |
168 # profiledzero zero <os>_<arch>_zero/profiled |
168 # profiledzero zero <os>_<arch>_zero/profiled |
169 # productzero zero <os>_<arch>_zero/product |
169 # productzero zero <os>_<arch>_zero/product |
170 # |
170 # |
|
171 # debugshark shark <os>_<arch>_shark/debug |
|
172 # fastdebugshark shark <os>_<arch>_shark/fastdebug |
|
173 # jvmgshark shark <os>_<arch>_shark/jvmg |
|
174 # optimizedshark shark <os>_<arch>_shark/optimized |
|
175 # profiledshark shark <os>_<arch>_shark/profiled |
|
176 # productshark shark <os>_<arch>_shark/product |
|
177 # |
171 # What you get with each target: |
178 # What you get with each target: |
172 # |
179 # |
173 # debug* - "thin" libjvm_g - debug info linked into the gamma_g launcher |
180 # debug* - "thin" libjvm_g - debug info linked into the gamma_g launcher |
174 # fastdebug* - optimized compile, but with asserts enabled |
181 # fastdebug* - optimized compile, but with asserts enabled |
175 # jvmg* - "fat" libjvm_g - debug info linked into libjvm_g.so |
182 # jvmg* - "fat" libjvm_g - debug info linked into libjvm_g.so |
189 SUBDIRS_C1 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler1/,$(TARGETS)) |
196 SUBDIRS_C1 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler1/,$(TARGETS)) |
190 SUBDIRS_C2 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler2/,$(TARGETS)) |
197 SUBDIRS_C2 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler2/,$(TARGETS)) |
191 SUBDIRS_TIERED = $(addprefix $(OSNAME)_$(BUILDARCH)_tiered/,$(TARGETS)) |
198 SUBDIRS_TIERED = $(addprefix $(OSNAME)_$(BUILDARCH)_tiered/,$(TARGETS)) |
192 SUBDIRS_CORE = $(addprefix $(OSNAME)_$(BUILDARCH)_core/,$(TARGETS)) |
199 SUBDIRS_CORE = $(addprefix $(OSNAME)_$(BUILDARCH)_core/,$(TARGETS)) |
193 SUBDIRS_ZERO = $(addprefix $(OSNAME)_$(VARIANTARCH)_zero/,$(TARGETS)) |
200 SUBDIRS_ZERO = $(addprefix $(OSNAME)_$(VARIANTARCH)_zero/,$(TARGETS)) |
|
201 SUBDIRS_SHARK = $(addprefix $(OSNAME)_$(VARIANTARCH)_shark/,$(TARGETS)) |
194 |
202 |
195 TARGETS_C2 = $(TARGETS) |
203 TARGETS_C2 = $(TARGETS) |
196 TARGETS_C1 = $(addsuffix 1,$(TARGETS)) |
204 TARGETS_C1 = $(addsuffix 1,$(TARGETS)) |
197 TARGETS_TIERED = $(addsuffix tiered,$(TARGETS)) |
205 TARGETS_TIERED = $(addsuffix tiered,$(TARGETS)) |
198 TARGETS_CORE = $(addsuffix core,$(TARGETS)) |
206 TARGETS_CORE = $(addsuffix core,$(TARGETS)) |
199 TARGETS_ZERO = $(addsuffix zero,$(TARGETS)) |
207 TARGETS_ZERO = $(addsuffix zero,$(TARGETS)) |
|
208 TARGETS_SHARK = $(addsuffix shark,$(TARGETS)) |
200 |
209 |
201 BUILDTREE_MAKE = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make |
210 BUILDTREE_MAKE = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make |
202 BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) ARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) |
211 BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) ARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) |
203 BUILDTREE_VARS += HOTSPOT_RELEASE_VERSION=$(HOTSPOT_RELEASE_VERSION) HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION) JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION) |
212 BUILDTREE_VARS += HOTSPOT_RELEASE_VERSION=$(HOTSPOT_RELEASE_VERSION) HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION) JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION) |
204 |
213 |
211 @echo "Try '$(MAKE) <target> ...' where <target> is one or more of" |
220 @echo "Try '$(MAKE) <target> ...' where <target> is one or more of" |
212 @echo " $(TARGETS_C2)" |
221 @echo " $(TARGETS_C2)" |
213 @echo " $(TARGETS_C1)" |
222 @echo " $(TARGETS_C1)" |
214 @echo " $(TARGETS_CORE)" |
223 @echo " $(TARGETS_CORE)" |
215 @echo " $(TARGETS_ZERO)" |
224 @echo " $(TARGETS_ZERO)" |
|
225 @echo " $(TARGETS_SHARK)" |
216 |
226 |
217 checks: check_os_version check_j2se_version |
227 checks: check_os_version check_j2se_version |
218 |
228 |
219 # We do not want people accidentally building on old systems (e.g. Linux 2.2.x, |
229 # We do not want people accidentally building on old systems (e.g. Linux 2.2.x, |
220 # Solaris 2.5.1, 2.6). |
230 # Solaris 2.5.1, 2.6). |
264 |
274 |
265 $(SUBDIRS_ZERO): $(BUILDTREE_MAKE) platform_zero |
275 $(SUBDIRS_ZERO): $(BUILDTREE_MAKE) platform_zero |
266 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks |
276 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks |
267 $(BUILDTREE) VARIANT=zero VARIANTARCH=$(VARIANTARCH) |
277 $(BUILDTREE) VARIANT=zero VARIANTARCH=$(VARIANTARCH) |
268 |
278 |
|
279 $(SUBDIRS_SHARK): $(BUILDTREE_MAKE) platform_zero |
|
280 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks |
|
281 $(BUILDTREE) VARIANT=shark VARIANTARCH=$(VARIANTARCH) |
|
282 |
269 platform_zero: $(GAMMADIR)/make/$(OSNAME)/platform_zero.in |
283 platform_zero: $(GAMMADIR)/make/$(OSNAME)/platform_zero.in |
270 $(SED) 's/@ZERO_ARCHDEF@/$(ZERO_ARCHDEF)/g;s/@ZERO_LIBARCH@/$(ZERO_LIBARCH)/g;' < $< > $@ |
284 $(SED) 's/@ZERO_ARCHDEF@/$(ZERO_ARCHDEF)/g;s/@ZERO_LIBARCH@/$(ZERO_LIBARCH)/g;' < $< > $@ |
271 |
285 |
272 # Define INSTALL=y at command line to automatically copy JVM into JAVA_HOME |
286 # Define INSTALL=y at command line to automatically copy JVM into JAVA_HOME |
273 |
287 |
302 $(TARGETS_ZERO): $(SUBDIRS_ZERO) |
316 $(TARGETS_ZERO): $(SUBDIRS_ZERO) |
303 cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS) |
317 cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS) |
304 cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && ./test_gamma |
318 cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && ./test_gamma |
305 ifdef INSTALL |
319 ifdef INSTALL |
306 cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS) install |
320 cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS) install |
|
321 endif |
|
322 |
|
323 $(TARGETS_SHARK): $(SUBDIRS_SHARK) |
|
324 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS) |
|
325 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && ./test_gamma |
|
326 ifdef INSTALL |
|
327 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS) install |
307 endif |
328 endif |
308 |
329 |
309 # Just build the tree, and nothing else: |
330 # Just build the tree, and nothing else: |
310 tree: $(SUBDIRS_C2) |
331 tree: $(SUBDIRS_C2) |
311 tree1: $(SUBDIRS_C1) |
332 tree1: $(SUBDIRS_C1) |
312 treecore: $(SUBDIRS_CORE) |
333 treecore: $(SUBDIRS_CORE) |
313 treezero: $(SUBDIRS_ZERO) |
334 treezero: $(SUBDIRS_ZERO) |
|
335 treeshark: $(SUBDIRS_SHARK) |
314 |
336 |
315 # Doc target. This is the same for all build options. |
337 # Doc target. This is the same for all build options. |
316 # Hence create a docs directory beside ...$(ARCH)_[...] |
338 # Hence create a docs directory beside ...$(ARCH)_[...] |
317 docs: checks |
339 docs: checks |
318 $(QUIETLY) mkdir -p $(SUBDIR_DOCS) |
340 $(QUIETLY) mkdir -p $(SUBDIR_DOCS) |
325 |
347 |
326 core: jvmgcore productcore |
348 core: jvmgcore productcore |
327 |
349 |
328 zero: jvmgzero productzero |
350 zero: jvmgzero productzero |
329 |
351 |
|
352 shark: jvmgshark productshark |
|
353 |
330 clean_docs: |
354 clean_docs: |
331 rm -rf $(SUBDIR_DOCS) |
355 rm -rf $(SUBDIR_DOCS) |
332 |
356 |
333 clean_compiler1 clean_compiler2 clean_core clean_zero: |
357 clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark: |
334 rm -rf $(OSNAME)_$(BUILDARCH)_$(subst clean_,,$@) |
358 rm -rf $(OSNAME)_$(BUILDARCH)_$(subst clean_,,$@) |
335 |
359 |
336 clean: clean_compiler2 clean_compiler1 clean_core clean_zero clean_docs |
360 clean: clean_compiler2 clean_compiler1 clean_core clean_zero clean_shark clean_docs |
337 |
361 |
338 include $(GAMMADIR)/make/$(OSNAME)/makefiles/cscope.make |
362 include $(GAMMADIR)/make/$(OSNAME)/makefiles/cscope.make |
339 |
363 |
340 #------------------------------------------------------------------------------- |
364 #------------------------------------------------------------------------------- |
341 |
365 |
342 .PHONY: $(TARGETS_C2) $(TARGETS_C1) $(TARGETS_CORE) $(TARGETS_ZERO) |
366 .PHONY: $(TARGETS_C2) $(TARGETS_C1) $(TARGETS_CORE) $(TARGETS_ZERO) $(TARGETS_SHARK) |
343 .PHONY: tree tree1 treecore treezero |
367 .PHONY: tree tree1 treecore treezero treeshark |
344 .PHONY: all compiler1 compiler2 core zero |
368 .PHONY: all compiler1 compiler2 core zero shark |
345 .PHONY: clean clean_compiler1 clean_compiler2 clean_core clean_zero docs clean_docs |
369 .PHONY: clean clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark docs clean_docs |
346 .PHONY: checks check_os_version check_j2se_version |
370 .PHONY: checks check_os_version check_j2se_version |