hotspot/make/bsd/Makefile
changeset 13975 2f7431485cfa
parent 13865 f9792c89bd9d
child 13977 92de166c91b3
equal deleted inserted replaced
13951:3fc49366dc15 13975:2f7431485cfa
     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