duke@2: # ohair@280: # Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved. duke@2: # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. duke@2: # duke@2: # This code is free software; you can redistribute it and/or modify it duke@2: # under the terms of the GNU General Public License version 2 only, as ohair@182: # published by the Free Software Foundation. Oracle designates this duke@2: # particular file as subject to the "Classpath" exception as provided ohair@182: # by Oracle in the LICENSE file that accompanied this code. duke@2: # duke@2: # This code is distributed in the hope that it will be useful, but WITHOUT duke@2: # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or duke@2: # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License duke@2: # version 2 for more details (a copy is included in the LICENSE file that duke@2: # accompanied this code). duke@2: # duke@2: # You should have received a copy of the GNU General Public License version duke@2: # 2 along with this work; if not, write to the Free Software Foundation, duke@2: # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. duke@2: # ohair@182: # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA ohair@182: # or visit www.oracle.com if you need additional information or have any ohair@182: # questions. duke@2: # duke@2: duke@2: ################################################################ duke@2: # HOTSPOT TARGETS duke@2: ################################################################ duke@2: duke@2: # All the output from a hotspot build should be re-located to the duke@2: # build output area. duke@2: # duke@2: HOTSPOT_OUTPUTDIR = $(HOTSPOT_DIR)/outputdir duke@2: duke@2: # HOTSPOT_EXPORT_PATH points to a dir that contains files duke@2: # that are needed in an SDK build, in the same relative positions as duke@2: # these files are in an SDK image. duke@2: # The SDK java/redist/Makefile will copy files from HOTSPOT_EXPORT_PATH duke@2: # into the SDK being built. duke@2: # This is the export path supplied to the hotspot makefiles. duke@2: # duke@2: HOTSPOT_EXPORT_PATH = $(HOTSPOT_DIR)/import duke@2: duke@2: # Default targets duke@2: HOTSPOT = hotspot-sanity hotspot-build duke@2: duke@2: hotspot:: $(HOTSPOT) duke@2: duke@2: # Hotspot clobber removes the output directory and exported files duke@2: hotspot-clobber:: duke@2: $(RM) -r $(HOTSPOT_OUTPUTDIR) duke@2: $(RM) -r $(HOTSPOT_EXPORT_PATH) duke@2: duke@2: hotspot-sanity:: duke@2: @$(MKDIR) -p $(HOTSPOT_OUTPUTDIR) duke@2: @$(MKDIR) -p $(HOTSPOT_EXPORT_PATH) duke@2: @$(ECHO) "Hotspot Settings: \n" \ duke@2: " HOTSPOT_BUILD_JOBS = $(HOTSPOT_BUILD_JOBS) \n" \ duke@2: " HOTSPOT_OUTPUTDIR = $(HOTSPOT_OUTPUTDIR) \n" \ duke@2: " HOTSPOT_EXPORT_PATH = $(HOTSPOT_EXPORT_PATH) \n" \ duke@2: "\n" >> $(MESSAGE_FILE) duke@2: duke@2: # duke@2: # Basic hotspot build and export of it's files duke@2: # duke@2: duke@2: HOTSPOT_TARGET = all_product duke@2: ifeq ($(DEBUG_NAME), debug) duke@2: HOTSPOT_TARGET = all_debug duke@2: endif duke@2: ifeq ($(DEBUG_NAME), fastdebug) duke@2: HOTSPOT_TARGET = all_fastdebug duke@2: endif duke@2: gbenson@136: ifeq ($(ZERO_BUILD), true) gbenson@217: ifeq ($(SHARK_BUILD), true) gbenson@217: HOTSPOT_TARGET := $(HOTSPOT_TARGET)shark gbenson@217: else gbenson@217: HOTSPOT_TARGET := $(HOTSPOT_TARGET)zero gbenson@217: endif gbenson@136: endif gbenson@136: duke@2: HOTSPOT_BUILD_ARGUMENTS += $(COMMON_BUILD_ARGUMENTS) duke@2: HOTSPOT_BUILD_ARGUMENTS += ALT_OUTPUTDIR=$(HOTSPOT_OUTPUTDIR) duke@2: HOTSPOT_BUILD_ARGUMENTS += ALT_EXPORT_PATH=$(HOTSPOT_EXPORT_PATH) duke@2: duke@2: # Why do these need to be passed in? Because of windows nmake? and MAKEFLAGS=? duke@2: # Or is there something wrong with hotspot/make/Makefile? duke@2: HOTSPOT_BUILD_ARGUMENTS += ALT_SLASH_JAVA=$(SLASH_JAVA) duke@2: HOTSPOT_BUILD_ARGUMENTS += ALT_BOOTDIR=$(BOOTDIR) duke@2: duke@2: ifeq ($(BUILD_LANGTOOLS), true) duke@2: HOTSPOT_BUILD_ARGUMENTS += ALT_LANGTOOLS_DIST=$(ABS_LANGTOOLS_DIST) duke@2: endif duke@2: duke@2: hotspot-build:: duke@2: $(MKDIR) -p $(HOTSPOT_OUTPUTDIR) duke@2: $(MKDIR) -p $(HOTSPOT_EXPORT_PATH) ohair@128: @$(call MakeStart, hotspot, $(HOTSPOT_TARGET)) duke@2: $(CD) $(HOTSPOT_TOPDIR)/make && \ duke@2: $(MAKE) $(HOTSPOT_BUILD_ARGUMENTS) $(HOTSPOT_TARGET) ohair@128: @$(call MakeFinish, hotspot, $(HOTSPOT_TARGET)) duke@2: duke@2: ##################### duke@2: # .PHONY duke@2: ##################### duke@2: .PHONY: hotspot-build hotspot-clobber hotspot-sanity duke@2: